Cutter compensation is handled by XBUILD, and can be configured several ways, depending upon the CNC requirements.
The most common configuration is to turn compensation On in the first X-Y feed move of the cutter path, and turn compensation Off in the last X-Y feed move. If the aforementioned configuration is used, then define the Linear Move program format as follows:
{N<SEQ>}{<COMP-STAT>}{<MOTION>} {X<X-COORD>}{Y<Y-COORD>} {Z<Z-COORD>}{F<FEED>}<EOB>
Other configurations may require the X and Y coordinates to be repeated as compensation is turned On. In that case, establish a conditional statement so that these repeated coordinates do not appear in every linear move of the cutter path. A conditional statement for a Linear Move program format is as follows:
<IF><COMP-ON><THEN> {N<SEQ>}<COMP-STAT>X<$X-COORD> Y<$Y-COORD><EOB> <ENDIF> {N<SEQ>}{<COMP-STAT>}{<MOTION>} {X<X-COORD>}{Y<Y-COORD>} {Z<Z-COORD>}{F<FEED>}<EOB>
The $ symbol is a reserved words modifier to generate the previous values of X and Y (to represent the current position of the tool). The <X-COORD> and <Y-COORD> reserved words always represent the next point in the cutter path.