N..... USE_LENGTH_UNITS(CANON_UNITS_MM) N..... SET_G5X_OFFSET(1, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000) N..... SET_G92_OFFSET(0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000) N..... SET_XY_ROTATION(0.0000) N..... SET_FEED_REFERENCE(CANON_XYZ) N..... COMMENT("this is the program describing entry moves for") N..... COMMENT("radius compensation in Figure 3 of the Handbook") N..... COMMENT("http://www.linuxcnc.org/handbook/RS274NGC_3/RS274NGC_38a.html#999268") N..... SET_FEED_RATE(60.0000) N..... USE_LENGTH_UNITS(CANON_UNITS_INCHES) N..... COMMENT("first, no compensation so we can see the part outline") N..... STRAIGHT_TRAVERSE(1.0000, 5.0000, 0.0000, 0.0000, 0.0000, 0.0000) N..... STRAIGHT_FEED(1.0000, 4.0000, 0.0000, 0.0000, 0.0000, 0.0000) N..... ARC_FEED(2.0000, 3.0000, 2.0000, 4.0000, 1, 0.0000, 0.0000, 0.0000, 0.0000) N..... ARC_FEED(3.0000, 2.0000, 2.0000, 2.0000, -1, 0.0000, 0.0000, 0.0000, 0.0000) N..... STRAIGHT_FEED(3.0000, -1.0000, 0.0000, 0.0000, 0.0000, 0.0000) N..... ARC_FEED(2.0000, -2.0000, 2.0000, -1.0000, -1, 0.0000, 0.0000, 0.0000, 0.0000) N..... STRAIGHT_FEED(-2.0000, -2.0000, 0.0000, 0.0000, 0.0000, 0.0000) N..... ARC_FEED(-2.6000, -0.2000, -2.0000, -1.0000, -1, 0.0000, 0.0000, 0.0000, 0.0000) N..... STRAIGHT_FEED(1.4000, 2.8000, 0.0000, 0.0000, 0.0000, 0.0000) N..... ARC_FEED(2.0000, 3.0000, 2.0000, 2.0000, -1, 0.0000, 0.0000, 0.0000, 0.0000) N..... COMMENT("with compensation") N..... SELECT_POCKET(4) N..... START_CHANGE() N..... STOP_SPINDLE_TURNING() N..... CHANGE_TOOL(4) N..... STRAIGHT_TRAVERSE(1.0000, 5.0000, 0.0000, 0.0000, 0.0000, 0.0000) N..... COMMENT("interpreter: cutter radius compensation on left") N..... STRAIGHT_FEED(1.5000, 4.0000, 0.0000, 0.0000, 0.0000, 0.0000) N..... ARC_FEED(2.0000, 3.5000, 2.0000, 4.0000, 1, 0.0000, 0.0000, 0.0000, 0.0000) N..... ARC_FEED(3.5000, 2.0000, 2.0000, 2.0000, -1, 0.0000, 0.0000, 0.0000, 0.0000) N..... STRAIGHT_FEED(3.5000, -1.0000, 0.0000, 0.0000, 0.0000, 0.0000) N..... ARC_FEED(2.0000, -2.5000, 2.0000, -1.0000, -1, 0.0000, 0.0000, 0.0000, 0.0000) N..... STRAIGHT_FEED(-2.0000, -2.5000, 0.0000, 0.0000, 0.0000, 0.0000) N..... ARC_FEED(-2.9000, 0.2000, -2.0000, -1.0000, -1, 0.0000, 0.0000, 0.0000, 0.0000) N..... STRAIGHT_FEED(1.1000, 3.2000, 0.0000, 0.0000, 0.0000, 0.0000) N..... ARC_FEED(2.0000, 3.5000, 2.0000, 2.0000, -1, 0.0000, 0.0000, 0.0000, 0.0000) N..... COMMENT("interpreter: cutter radius compensation off") N..... SET_G5X_OFFSET(1, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000) N..... SET_XY_ROTATION(0.0000) N..... SET_FEED_MODE(0) N..... SET_FEED_RATE(0.0000) N..... STOP_SPINDLE_TURNING() N..... SET_SPINDLE_MODE(0.0000) N..... PROGRAM_END()