This command sets the plane used for arc motions in I, J, and K offset parameters:
I and J offsets define the arc center, K is ignoredSmoothieware starts in
This command is modal, meaning once executed, all subsequent arc commands remain in XY plane mode until you switch to a different plane with
The command is used as:
G17
Which means: Configure arc commands (
No parameters.
Select XY plane and execute an arc:
G17 ; Select XY plane (default)
G2 X10 Y20 I5 J5 F100 ; Clockwise arc to (10, 20) with center offset (5, 5)
Switch between planes:
G17 ; XY plane
G2 X10 Y10 I5 J5 ; Arc in XY plane
G18 ; Switch to XZ plane
G2 X10 Z10 I5 K5 ; Arc in XZ plane (different axes)
G17 ; Back to XY plane
G3 X20 Y20 I10 J10 ; Counter-clockwise arc in XY plane
V1 Implementation:
Robot.cpp line 570select_plane(X_AXIS, Y_AXIS, Z_AXIS)plane_axis_0 = X_AXIS, plane_axis_1 = Y_AXIS, plane_axis_2 = Z_AXISV2 Implementation:
Robot.cpp line 1048select_plane(X_AXIS, Y_AXIS, Z_AXIS) (identical)plane_axis_0 = X_AXIS, plane_axis_1 = Y_AXIS, plane_axis_2 = Z_AXISStatus: Identical implementation across V1 and V2 - no behavioral differences.
These resources are used as references for G-code: