diff --git a/CincyLib/Laser/MaterialLib.cs b/CincyLib/Laser/MaterialLib.cs
index 6e78fea..2cfd6e9 100644
--- a/CincyLib/Laser/MaterialLib.cs
+++ b/CincyLib/Laser/MaterialLib.cs
@@ -34,6 +34,10 @@ namespace CincyLib.Laser
public AssistGasType PierceAssistGas { get; set; }
+ public LensType Lens { get; set; }
+
+ public string Nozzle { get; set; }
+
public int PierceAssistGasPressure { get; set; }
public bool UsePartCoolantOnPierce { get; set; }
diff --git a/CincyLib/Laser/MaterialLibReader.cs b/CincyLib/Laser/MaterialLibReader.cs
index a9533ed..6883c56 100644
--- a/CincyLib/Laser/MaterialLibReader.cs
+++ b/CincyLib/Laser/MaterialLibReader.cs
@@ -117,22 +117,49 @@ namespace CincyLib.Laser
reader.BaseStream.Seek(4, SeekOrigin.Current); // Unknown 4 bytes
MaterialLib.Feedrate = reader.ReadInt16();
- reader.BaseStream.Seek(428, SeekOrigin.Current);
+ reader.BaseStream.Seek(424, SeekOrigin.Current);
+ MaterialLib.NozzleStandoff2 = Math.Round(reader.ReadSingle(), 4);
MaterialLib.CutFocusNearField = Math.Round(reader.ReadSingle(), 4);
MaterialLib.CutFocusFarField = Math.Round(reader.ReadSingle(), 4);
MaterialLib.PierceFocusNearField = Math.Round(reader.ReadSingle(), 4);
MaterialLib.PierceFocusFarField = Math.Round(reader.ReadSingle(), 4);
// older files wont go this far...
- const int seek = 88;
+ const int seek = 76;
var hasExtendedInfo = reader.BaseStream.Length > reader.BaseStream.Position + seek;
- reader.BaseStream.Seek(seek, SeekOrigin.Current);
if (hasExtendedInfo)
{
+ reader.BaseStream.Seek(seek, SeekOrigin.Current);
+ MaterialLib.Lens = (LensType)reader.ReadByte();
+
+ reader.BaseStream.Seek(1, SeekOrigin.Current);
+ MaterialLib.Nozzle = reader.ReadString();
+
+ reader.BaseStream.Seek(4, SeekOrigin.Current);
MaterialLib.PierceType = (PierceType)reader.ReadByte();
}
}
}
+
+ public enum LensType
+ {
+ ///
+ /// 5.0" Lens
+ ///
+ _050 = 0,
+
+ ///
+ /// 7.5" Lens
+ ///
+ _075 = 1,
+
+ ///
+ /// 10.0" Lens
+ ///
+ _100 = 2,
+
+ Any = 3
+ }
}