public void fastLayerUpdate() { GCodeAnalyzer a = new GCodeAnalyzer(true); foreach (GCodeShort code in getContentArray(1)) { a.analyzeShort(code); } foreach (GCodeShort code in getContentArray(0)) { a.analyzeShort(code); } foreach (GCodeShort code in getContentArray(2)) { a.analyzeShort(code); } MaxLayer = a.layer; SettingsProvider.Instance.CommonSettings.MaxLayer = MaxLayer; SettingsProvider.Instance.CommonSettings.MinLayer = 1; SettingsProvider.Instance.CommonSettings.HigherLayer = MaxLayer; SettingsProvider.Instance.CommonSettings.LowerLayer = 1; SettingsProvider.Instance.PrintingStatistic.LayersCount = a.layer; SettingsProvider.Instance.PrintingStatistic.LineCodeCount = lines.Count; SettingsProvider.Instance.PrintingStatistic.FilamentLength = (int)a.filamentLength; if (a.printingTime > 0) { SettingsProvider.Instance.PrintingStatistic.PrintingTime = a.printingTime; } }
public void PushGCodeShortArray(List <GCodeShort> codes) { foreach (GCodeShort line in codes) { if (line.Length == 0) { continue; } ana.analyzeShort(line); GCode gcode = new GCode(); gcode.Parse(line.text); if (!gcode.comment) { jobList.AddLast(new GCodeCompressed(gcode)); totalLines++; } if (line.hasLayer) { maxLayer = line.layer; } } computedPrintingTime = ana.printingTime; }