public ToolPathGeneratorPresenter(
     IStlReader stlReader,
     ISlicer slicer,
     IPather pather,
     IMeshHelper meshHelper,
     IGCodeGenerator generator)
 {
     _stlReader  = stlReader;
     _generator  = generator;
     _meshHelper = meshHelper;
     _pather     = pather;
     _slicer     = slicer;
 }
Beispiel #2
0
        private void GenerateShapeCode(short typeGeometric, Geometric shape, bool simulate)
        {
            GCodeShapeFactory gcodeFactory   = new GCodeShapeFactory();
            IGCodeGenerator   shapeGenerator = gcodeFactory.Build(typeGeometric);
            StringBuilder     gCodeCmd       = simulate ? shapeGenerator.GenerateSimulatorGCode(shape) : shapeGenerator.GenerateGCode(shape);

            if (gCodeCmd != null && gCodeCmd.Length > 0)
            {
                numberExpectedRespones = 0;
                txtLog.AppendText(gCodeCmd.ToString());

                //GRBL returns ok/error for each line sent. This variable is used to know when the excecution has finished.
                numberExpectedRespones = gCodeCmd.ToString().Split('\n').Length - 1;
                SerialPortManager.ExecuteCommands(gCodeCmd);

                //TODO manage Input when GRBL Return error
            }
        }