public void SplitArc() { var gcode = new List <string>(); gcode.Add("G00 X9.0 Y1.4000 F200"); gcode.Add("G00 X97.0000 Y1.4000 F200"); gcode.Add("G03 X104.6000 Y9.0000 R7.6"); /*gcode.Add("G00 X104.6000 Y77.0000"); * gcode.Add("G03 X97.0000 Y84.6000 R7.6"); * gcode.Add("G0 X9.0000 Y84.6000"); * gcode.Add("G03 X1.4000 Y77.0000 R7.6"); * gcode.Add("G03 X9.0000 Y1.4000 R7.6");*/ //gcode.Add("G00 X45 Y0"); //gcode.Add("G03 X50 Y5 R5"); var parser = new GCodeParser(new FakeLogger()); parser.Parse(gcode); foreach (var cmd in parser.Commands) { if (cmd is GCodeArc) { var arc = cmd as GCodeArc; arc.U = 97; arc.V = 9; } } }
public static GCodeFile FromList(IEnumerable <string> file, ILogger logger = null) { var parser = new GCodeParser(logger == null ? Services.Logger : logger); parser.Reset(); parser.Parse(file); return(new GCodeFile(parser.Commands) { FileName = "output.nc" }); }