private void generateGcodeProgram() { LOG.debug("generateGcodeProgram:"); gcodeProgram.clear(); gcodeProgram.appendLine("(Macro for " + getTitle() + ")"); gcodeProgram.appendLine("(generated " + getTimestamp() + ")"); gcodeProgram.appendLine("G21"); gcodeProgram.appendLine("G90"); generateGcodeCore(gcodeProgram); if (gcodeGenerationError) { clear(); } else { gcodeProgram.appendLine( "G0 Z" + String.format( IConstant.FORMAT_COORDINATE, getDoublePreference(IPreferenceKey.Z_CLEARANCE))); gcodeProgram.appendLine("M5"); gcodeProgram.parse(); Text gcodeText = (Text) context.get(IConstant.MACRO_TEXT_ID); if (gcodeText != null) toolbox.gcodeToText(gcodeText, gcodeProgram); } eventBroker.send(IEvent.GCODE_MACRO_GENERATED, null); eventBroker.send(IEvent.REDRAW, null); }
protected void wait(int sec) { gcodeProgram.appendLine("G4 P" + sec); }
protected void spindleOn(int spindleSpeed) { gcodeProgram.appendLine("M3 S" + spindleSpeed); wait(2); }
protected void motionLinearZ(double z, int feedrate) { gcodeProgram.appendLine("G1 Z" + formatCoordinate(z) + " F" + feedrate); }
protected void motionLinearXY(double x, double y, int feedrate) { gcodeProgram.appendLine("G1 " + generateXY(x, y) + " F" + feedrate); }
protected void motionSeekZ(double z) { gcodeProgram.appendLine("G0 Z" + formatCoordinate(z)); }
protected void motionSeekXY(double x, double y) { gcodeProgram.appendLine("G0 " + generateXY(x, y)); }