Skip to content

Multimaterial Printing

Multimaterial Printing

When working with a machine that has more than one Z-Axis, it is useful to use the rename_axis() function. Using this function your code can always refer to the vertical axis as 'Z' or whatever you provide as an argument. You can also dynamically rename the axis. For example, if you run g.move(A=3)-- this would correspond to a gcode command addressing the A axis: G1 A3. The latter approached is illustrated in the example below.

Example: Hollow Cylinder

The following is an example wherein a hollow cylinder is printed, where each layer is composed of a different material.

from mecode import G

g = G()

# COM1 = Pressure controller for material #1
# COM5 = Pressure controller for material #2
com_ports = [1, 5]
colors = [(1,0,0,0.5), (0,1,0,0.5)]
axis = ['Z', 'A']

# offset distance b/w axis `Z` and `A`
offset = 10 # mm

# radius of cylinder
R = 10 # mm

# Print height
dz = 1 # mm

# number of layers
n_layers = 20

# set print speed in mm/s
g.feed(10)

# move nozzle to initial printing height
g.move(z=dz)

# move axis `Z` to starting position
g.move(x=R)
# g.set_home(x=0,y=0)

# Print path strategy
#   1. print first circle with material #1
#   2. stop printing w/ material #1
#   3. move material #2 axes to starting location
#   4. start printing material #2
#   ...repeat for n_layers
# turn pressure on (e.g., to start printing)

def switching_strategy(j):
    '''this function contains the logic for moving from one axis (nozzle 1) to another (nozzle 2)'''
    # move active axis up and away
    g.move(**{axis[j%2]: 50})

    # move other axis to starting position
    g.move(x=-offset if j%2==0 else +offset)
    g.abs_move(**{axis[(j+1)%2]: (j+2)*dz})

for j in range(n_layers):
    g.toggle_pressure(com_port=com_ports[j%2]) # ON
    g.arc(x=-R, y=R, color=colors[j%2])
    g.arc(x=R, y=-R, color=colors[j%2])
    g.toggle_pressure(com_port=com_ports[j%2]) # OFF
    g.move(z=dz)
    switching_strategy(j)

g.teardown()

g.view('3d')
Generated Gcode
Running mecode v0.2.38
G1 F10
G1 Z1.000000
G1 X10.000000
; starting layer 0
Call togglePress P1
G1 X-0.096074 Y0.975452
G1 X-0.284529 Y0.937966
G1 X-0.462050 Y0.864434
G1 X-0.621814 Y0.757683
G1 X-0.757683 Y0.621814
G1 X-0.864434 Y0.462050
G1 X-0.937966 Y0.284529
G1 X-0.975452 Y0.096074
G1 X-0.975452 Y-0.096074
G1 X-0.937966 Y-0.284529
G1 X-0.864434 Y-0.462050
G1 X-0.757683 Y-0.621814
G1 X-0.621814 Y-0.757683
G1 X-0.462050 Y-0.864434
G1 X-0.284529 Y-0.937966
G1 X-0.096074 Y-0.975452
G1 X0.096074 Y-0.975452
G1 X0.284529 Y-0.937966
G1 X0.462050 Y-0.864434
G1 X0.621814 Y-0.757683
G1 X0.757683 Y-0.621814
G1 X0.864434 Y-0.462050
G1 X0.937966 Y-0.284529
G1 X0.975452 Y-0.096074
G1 X0.975452 Y0.096074
G1 X0.937966 Y0.284529
G1 X0.864434 Y0.462050
G1 X0.757683 Y0.621814
G1 X0.621814 Y0.757683
G1 X0.462050 Y0.864434
G1 X0.284529 Y0.937966
G1 X0.096074 Y0.975452
Call togglePress P1
G1 Z1.000000
G1 Z50.000000
G1 X-10.000000
G90
G1 A2.000000
G91
; starting layer 1
Call togglePress P1
G1 X-0.096074 Y0.975452
G1 X-0.284529 Y0.937966
G1 X-0.462050 Y0.864434
G1 X-0.621814 Y0.757683
G1 X-0.757683 Y0.621814
G1 X-0.864434 Y0.462050
G1 X-0.937966 Y0.284529
G1 X-0.975452 Y0.096074
G1 X-0.975452 Y-0.096074
G1 X-0.937966 Y-0.284529
G1 X-0.864434 Y-0.462050
G1 X-0.757683 Y-0.621814
G1 X-0.621814 Y-0.757683
G1 X-0.462050 Y-0.864434
G1 X-0.284529 Y-0.937966
G1 X-0.096074 Y-0.975452
G1 X0.096074 Y-0.975452
G1 X0.284529 Y-0.937966
G1 X0.462050 Y-0.864434
G1 X0.621814 Y-0.757683
G1 X0.757683 Y-0.621814
G1 X0.864434 Y-0.462050
G1 X0.937966 Y-0.284529
G1 X0.975452 Y-0.096074
G1 X0.975452 Y0.096074
G1 X0.937966 Y0.284529
G1 X0.864434 Y0.462050
G1 X0.757683 Y0.621814
G1 X0.621814 Y0.757683
G1 X0.462050 Y0.864434
G1 X0.284529 Y0.937966
G1 X0.096074 Y0.975452
Call togglePress P1
G1 Z1.000000
G1 A50.000000
G1 X10.000000
G90
G1 Z3.000000
G91
; starting layer 2
Call togglePress P1
G1 X-0.096074 Y0.975452
G1 X-0.284529 Y0.937966
G1 X-0.462050 Y0.864434
G1 X-0.621814 Y0.757683
G1 X-0.757683 Y0.621814
G1 X-0.864434 Y0.462050
G1 X-0.937966 Y0.284529
G1 X-0.975452 Y0.096074
G1 X-0.975452 Y-0.096074
G1 X-0.937966 Y-0.284529
G1 X-0.864434 Y-0.462050
G1 X-0.757683 Y-0.621814
G1 X-0.621814 Y-0.757683
G1 X-0.462050 Y-0.864434
G1 X-0.284529 Y-0.937966
G1 X-0.096074 Y-0.975452
G1 X0.096074 Y-0.975452
G1 X0.284529 Y-0.937966
G1 X0.462050 Y-0.864434
G1 X0.621814 Y-0.757683
G1 X0.757683 Y-0.621814
G1 X0.864434 Y-0.462050
G1 X0.937966 Y-0.284529
G1 X0.975452 Y-0.096074
G1 X0.975452 Y0.096074
G1 X0.937966 Y0.284529
G1 X0.864434 Y0.462050
G1 X0.757683 Y0.621814
G1 X0.621814 Y0.757683
G1 X0.462050 Y0.864434
G1 X0.284529 Y0.937966
G1 X0.096074 Y0.975452
Call togglePress P1
G1 Z1.000000
G1 Z50.000000
G1 X-10.000000
G90
G1 A4.000000
G91
; starting layer 3
Call togglePress P1
G1 X-0.096074 Y0.975452
G1 X-0.284529 Y0.937966
G1 X-0.462050 Y0.864434
G1 X-0.621814 Y0.757683
G1 X-0.757683 Y0.621814
G1 X-0.864434 Y0.462050
G1 X-0.937966 Y0.284529
G1 X-0.975452 Y0.096074
G1 X-0.975452 Y-0.096074
G1 X-0.937966 Y-0.284529
G1 X-0.864434 Y-0.462050
G1 X-0.757683 Y-0.621814
G1 X-0.621814 Y-0.757683
G1 X-0.462050 Y-0.864434
G1 X-0.284529 Y-0.937966
G1 X-0.096074 Y-0.975452
G1 X0.096074 Y-0.975452
G1 X0.284529 Y-0.937966
G1 X0.462050 Y-0.864434
G1 X0.621814 Y-0.757683
G1 X0.757683 Y-0.621814
G1 X0.864434 Y-0.462050
G1 X0.937966 Y-0.284529
G1 X0.975452 Y-0.096074
G1 X0.975452 Y0.096074
G1 X0.937966 Y0.284529
G1 X0.864434 Y0.462050
G1 X0.757683 Y0.621814
G1 X0.621814 Y0.757683
G1 X0.462050 Y0.864434
G1 X0.284529 Y0.937966
G1 X0.096074 Y0.975452
Call togglePress P1
G1 Z1.000000
G1 A50.000000
G1 X10.000000
G90
G1 Z5.000000
G91
; starting layer 4
Call togglePress P1
G1 X-0.096074 Y0.975452
G1 X-0.284529 Y0.937966
G1 X-0.462050 Y0.864434
G1 X-0.621814 Y0.757683
G1 X-0.757683 Y0.621814
G1 X-0.864434 Y0.462050
G1 X-0.937966 Y0.284529
G1 X-0.975452 Y0.096074
G1 X-0.975452 Y-0.096074
G1 X-0.937966 Y-0.284529
G1 X-0.864434 Y-0.462050
G1 X-0.757683 Y-0.621814
G1 X-0.621814 Y-0.757683
G1 X-0.462050 Y-0.864434
G1 X-0.284529 Y-0.937966
G1 X-0.096074 Y-0.975452
G1 X0.096074 Y-0.975452
G1 X0.284529 Y-0.937966
G1 X0.462050 Y-0.864434
G1 X0.621814 Y-0.757683
G1 X0.757683 Y-0.621814
G1 X0.864434 Y-0.462050
G1 X0.937966 Y-0.284529
G1 X0.975452 Y-0.096074
G1 X0.975452 Y0.096074
G1 X0.937966 Y0.284529
G1 X0.864434 Y0.462050
G1 X0.757683 Y0.621814
G1 X0.621814 Y0.757683
G1 X0.462050 Y0.864434
G1 X0.284529 Y0.937966
G1 X0.096074 Y0.975452
Call togglePress P1
G1 Z1.000000
G1 Z50.000000
G1 X-10.000000
G90
G1 A6.000000
G91
; starting layer 5
Call togglePress P1
G1 X-0.096074 Y0.975452
G1 X-0.284529 Y0.937966
G1 X-0.462050 Y0.864434
G1 X-0.621814 Y0.757683
G1 X-0.757683 Y0.621814
G1 X-0.864434 Y0.462050
G1 X-0.937966 Y0.284529
G1 X-0.975452 Y0.096074
G1 X-0.975452 Y-0.096074
G1 X-0.937966 Y-0.284529
G1 X-0.864434 Y-0.462050
G1 X-0.757683 Y-0.621814
G1 X-0.621814 Y-0.757683
G1 X-0.462050 Y-0.864434
G1 X-0.284529 Y-0.937966
G1 X-0.096074 Y-0.975452
G1 X0.096074 Y-0.975452
G1 X0.284529 Y-0.937966
G1 X0.462050 Y-0.864434
G1 X0.621814 Y-0.757683
G1 X0.757683 Y-0.621814
G1 X0.864434 Y-0.462050
G1 X0.937966 Y-0.284529
G1 X0.975452 Y-0.096074
G1 X0.975452 Y0.096074
G1 X0.937966 Y0.284529
G1 X0.864434 Y0.462050
G1 X0.757683 Y0.621814
G1 X0.621814 Y0.757683
G1 X0.462050 Y0.864434
G1 X0.284529 Y0.937966
G1 X0.096074 Y0.975452
Call togglePress P1
G1 Z1.000000
G1 A50.000000
G1 X10.000000
G90
G1 Z7.000000
G91
; starting layer 6
Call togglePress P1
G1 X-0.096074 Y0.975452
G1 X-0.284529 Y0.937966
G1 X-0.462050 Y0.864434
G1 X-0.621814 Y0.757683
G1 X-0.757683 Y0.621814
G1 X-0.864434 Y0.462050
G1 X-0.937966 Y0.284529
G1 X-0.975452 Y0.096074
G1 X-0.975452 Y-0.096074
G1 X-0.937966 Y-0.284529
G1 X-0.864434 Y-0.462050
G1 X-0.757683 Y-0.621814
G1 X-0.621814 Y-0.757683
G1 X-0.462050 Y-0.864434
G1 X-0.284529 Y-0.937966
G1 X-0.096074 Y-0.975452
G1 X0.096074 Y-0.975452
G1 X0.284529 Y-0.937966
G1 X0.462050 Y-0.864434
G1 X0.621814 Y-0.757683
G1 X0.757683 Y-0.621814
G1 X0.864434 Y-0.462050
G1 X0.937966 Y-0.284529
G1 X0.975452 Y-0.096074
G1 X0.975452 Y0.096074
G1 X0.937966 Y0.284529
G1 X0.864434 Y0.462050
G1 X0.757683 Y0.621814
G1 X0.621814 Y0.757683
G1 X0.462050 Y0.864434
G1 X0.284529 Y0.937966
G1 X0.096074 Y0.975452
Call togglePress P1
G1 Z1.000000
G1 Z50.000000
G1 X-10.000000
G90
G1 A8.000000
G91
; starting layer 7
Call togglePress P1
G1 X-0.096074 Y0.975452
G1 X-0.284529 Y0.937966
G1 X-0.462050 Y0.864434
G1 X-0.621814 Y0.757683
G1 X-0.757683 Y0.621814
G1 X-0.864434 Y0.462050
G1 X-0.937966 Y0.284529
G1 X-0.975452 Y0.096074
G1 X-0.975452 Y-0.096074
G1 X-0.937966 Y-0.284529
G1 X-0.864434 Y-0.462050
G1 X-0.757683 Y-0.621814
G1 X-0.621814 Y-0.757683
G1 X-0.462050 Y-0.864434
G1 X-0.284529 Y-0.937966
G1 X-0.096074 Y-0.975452
G1 X0.096074 Y-0.975452
G1 X0.284529 Y-0.937966
G1 X0.462050 Y-0.864434
G1 X0.621814 Y-0.757683
G1 X0.757683 Y-0.621814
G1 X0.864434 Y-0.462050
G1 X0.937966 Y-0.284529
G1 X0.975452 Y-0.096074
G1 X0.975452 Y0.096074
G1 X0.937966 Y0.284529
G1 X0.864434 Y0.462050
G1 X0.757683 Y0.621814
G1 X0.621814 Y0.757683
G1 X0.462050 Y0.864434
G1 X0.284529 Y0.937966
G1 X0.096074 Y0.975452
Call togglePress P1
G1 Z1.000000
G1 A50.000000
G1 X10.000000
G90
G1 Z9.000000
G91
; starting layer 8
Call togglePress P1
G1 X-0.096074 Y0.975452
G1 X-0.284529 Y0.937966
G1 X-0.462050 Y0.864434
G1 X-0.621814 Y0.757683
G1 X-0.757683 Y0.621814
G1 X-0.864434 Y0.462050
G1 X-0.937966 Y0.284529
G1 X-0.975452 Y0.096074
G1 X-0.975452 Y-0.096074
G1 X-0.937966 Y-0.284529
G1 X-0.864434 Y-0.462050
G1 X-0.757683 Y-0.621814
G1 X-0.621814 Y-0.757683
G1 X-0.462050 Y-0.864434
G1 X-0.284529 Y-0.937966
G1 X-0.096074 Y-0.975452
G1 X0.096074 Y-0.975452
G1 X0.284529 Y-0.937966
G1 X0.462050 Y-0.864434
G1 X0.621814 Y-0.757683
G1 X0.757683 Y-0.621814
G1 X0.864434 Y-0.462050
G1 X0.937966 Y-0.284529
G1 X0.975452 Y-0.096074
G1 X0.975452 Y0.096074
G1 X0.937966 Y0.284529
G1 X0.864434 Y0.462050
G1 X0.757683 Y0.621814
G1 X0.621814 Y0.757683
G1 X0.462050 Y0.864434
G1 X0.284529 Y0.937966
G1 X0.096074 Y0.975452
Call togglePress P1
G1 Z1.000000
G1 Z50.000000
G1 X-10.000000
G90
G1 A10.000000
G91
; starting layer 9
Call togglePress P1
G1 X-0.096074 Y0.975452
G1 X-0.284529 Y0.937966
G1 X-0.462050 Y0.864434
G1 X-0.621814 Y0.757683
G1 X-0.757683 Y0.621814
G1 X-0.864434 Y0.462050
G1 X-0.937966 Y0.284529
G1 X-0.975452 Y0.096074
G1 X-0.975452 Y-0.096074
G1 X-0.937966 Y-0.284529
G1 X-0.864434 Y-0.462050
G1 X-0.757683 Y-0.621814
G1 X-0.621814 Y-0.757683
G1 X-0.462050 Y-0.864434
G1 X-0.284529 Y-0.937966
G1 X-0.096074 Y-0.975452
G1 X0.096074 Y-0.975452
G1 X0.284529 Y-0.937966
G1 X0.462050 Y-0.864434
G1 X0.621814 Y-0.757683
G1 X0.757683 Y-0.621814
G1 X0.864434 Y-0.462050
G1 X0.937966 Y-0.284529
G1 X0.975452 Y-0.096074
G1 X0.975452 Y0.096074
G1 X0.937966 Y0.284529
G1 X0.864434 Y0.462050
G1 X0.757683 Y0.621814
G1 X0.621814 Y0.757683
G1 X0.462050 Y0.864434
G1 X0.284529 Y0.937966
G1 X0.096074 Y0.975452
Call togglePress P1
G1 Z1.000000
G1 A50.000000
G1 X10.000000
G90
G1 Z11.000000
G91
; starting layer 10
Call togglePress P1
G1 X-0.096074 Y0.975452
G1 X-0.284529 Y0.937966
G1 X-0.462050 Y0.864434
G1 X-0.621814 Y0.757683
G1 X-0.757683 Y0.621814
G1 X-0.864434 Y0.462050
G1 X-0.937966 Y0.284529
G1 X-0.975452 Y0.096074
G1 X-0.975452 Y-0.096074
G1 X-0.937966 Y-0.284529
G1 X-0.864434 Y-0.462050
G1 X-0.757683 Y-0.621814
G1 X-0.621814 Y-0.757683
G1 X-0.462050 Y-0.864434
G1 X-0.284529 Y-0.937966
G1 X-0.096074 Y-0.975452
G1 X0.096074 Y-0.975452
G1 X0.284529 Y-0.937966
G1 X0.462050 Y-0.864434
G1 X0.621814 Y-0.757683
G1 X0.757683 Y-0.621814
G1 X0.864434 Y-0.462050
G1 X0.937966 Y-0.284529
G1 X0.975452 Y-0.096074
G1 X0.975452 Y0.096074
G1 X0.937966 Y0.284529
G1 X0.864434 Y0.462050
G1 X0.757683 Y0.621814
G1 X0.621814 Y0.757683
G1 X0.462050 Y0.864434
G1 X0.284529 Y0.937966
G1 X0.096074 Y0.975452
Call togglePress P1
G1 Z1.000000
G1 Z50.000000
G1 X-10.000000
G90
G1 A12.000000
G91
; starting layer 11
Call togglePress P1
G1 X-0.096074 Y0.975452
G1 X-0.284529 Y0.937966
G1 X-0.462050 Y0.864434
G1 X-0.621814 Y0.757683
G1 X-0.757683 Y0.621814
G1 X-0.864434 Y0.462050
G1 X-0.937966 Y0.284529
G1 X-0.975452 Y0.096074
G1 X-0.975452 Y-0.096074
G1 X-0.937966 Y-0.284529
G1 X-0.864434 Y-0.462050
G1 X-0.757683 Y-0.621814
G1 X-0.621814 Y-0.757683
G1 X-0.462050 Y-0.864434
G1 X-0.284529 Y-0.937966
G1 X-0.096074 Y-0.975452
G1 X0.096074 Y-0.975452
G1 X0.284529 Y-0.937966
G1 X0.462050 Y-0.864434
G1 X0.621814 Y-0.757683
G1 X0.757683 Y-0.621814
G1 X0.864434 Y-0.462050
G1 X0.937966 Y-0.284529
G1 X0.975452 Y-0.096074
G1 X0.975452 Y0.096074
G1 X0.937966 Y0.284529
G1 X0.864434 Y0.462050
G1 X0.757683 Y0.621814
G1 X0.621814 Y0.757683
G1 X0.462050 Y0.864434
G1 X0.284529 Y0.937966
G1 X0.096074 Y0.975452
Call togglePress P1
G1 Z1.000000
G1 A50.000000
G1 X10.000000
G90
G1 Z13.000000
G91
; starting layer 12
Call togglePress P1
G1 X-0.096074 Y0.975452
G1 X-0.284529 Y0.937966
G1 X-0.462050 Y0.864434
G1 X-0.621814 Y0.757683
G1 X-0.757683 Y0.621814
G1 X-0.864434 Y0.462050
G1 X-0.937966 Y0.284529
G1 X-0.975452 Y0.096074
G1 X-0.975452 Y-0.096074
G1 X-0.937966 Y-0.284529
G1 X-0.864434 Y-0.462050
G1 X-0.757683 Y-0.621814
G1 X-0.621814 Y-0.757683
G1 X-0.462050 Y-0.864434
G1 X-0.284529 Y-0.937966
G1 X-0.096074 Y-0.975452
G1 X0.096074 Y-0.975452
G1 X0.284529 Y-0.937966
G1 X0.462050 Y-0.864434
G1 X0.621814 Y-0.757683
G1 X0.757683 Y-0.621814
G1 X0.864434 Y-0.462050
G1 X0.937966 Y-0.284529
G1 X0.975452 Y-0.096074
G1 X0.975452 Y0.096074
G1 X0.937966 Y0.284529
G1 X0.864434 Y0.462050
G1 X0.757683 Y0.621814
G1 X0.621814 Y0.757683
G1 X0.462050 Y0.864434
G1 X0.284529 Y0.937966
G1 X0.096074 Y0.975452
Call togglePress P1
G1 Z1.000000
G1 Z50.000000
G1 X-10.000000
G90
G1 A14.000000
G91
; starting layer 13
Call togglePress P1
G1 X-0.096074 Y0.975452
G1 X-0.284529 Y0.937966
G1 X-0.462050 Y0.864434
G1 X-0.621814 Y0.757683
G1 X-0.757683 Y0.621814
G1 X-0.864434 Y0.462050
G1 X-0.937966 Y0.284529
G1 X-0.975452 Y0.096074
G1 X-0.975452 Y-0.096074
G1 X-0.937966 Y-0.284529
G1 X-0.864434 Y-0.462050
G1 X-0.757683 Y-0.621814
G1 X-0.621814 Y-0.757683
G1 X-0.462050 Y-0.864434
G1 X-0.284529 Y-0.937966
G1 X-0.096074 Y-0.975452
G1 X0.096074 Y-0.975452
G1 X0.284529 Y-0.937966
G1 X0.462050 Y-0.864434
G1 X0.621814 Y-0.757683
G1 X0.757683 Y-0.621814
G1 X0.864434 Y-0.462050
G1 X0.937966 Y-0.284529
G1 X0.975452 Y-0.096074
G1 X0.975452 Y0.096074
G1 X0.937966 Y0.284529
G1 X0.864434 Y0.462050
G1 X0.757683 Y0.621814
G1 X0.621814 Y0.757683
G1 X0.462050 Y0.864434
G1 X0.284529 Y0.937966
G1 X0.096074 Y0.975452
Call togglePress P1
G1 Z1.000000
G1 A50.000000
G1 X10.000000
G90
G1 Z15.000000
G91
; starting layer 14
Call togglePress P1
G1 X-0.096074 Y0.975452
G1 X-0.284529 Y0.937966
G1 X-0.462050 Y0.864434
G1 X-0.621814 Y0.757683
G1 X-0.757683 Y0.621814
G1 X-0.864434 Y0.462050
G1 X-0.937966 Y0.284529
G1 X-0.975452 Y0.096074
G1 X-0.975452 Y-0.096074
G1 X-0.937966 Y-0.284529
G1 X-0.864434 Y-0.462050
G1 X-0.757683 Y-0.621814
G1 X-0.621814 Y-0.757683
G1 X-0.462050 Y-0.864434
G1 X-0.284529 Y-0.937966
G1 X-0.096074 Y-0.975452
G1 X0.096074 Y-0.975452
G1 X0.284529 Y-0.937966
G1 X0.462050 Y-0.864434
G1 X0.621814 Y-0.757683
G1 X0.757683 Y-0.621814
G1 X0.864434 Y-0.462050
G1 X0.937966 Y-0.284529
G1 X0.975452 Y-0.096074
G1 X0.975452 Y0.096074
G1 X0.937966 Y0.284529
G1 X0.864434 Y0.462050
G1 X0.757683 Y0.621814
G1 X0.621814 Y0.757683
G1 X0.462050 Y0.864434
G1 X0.284529 Y0.937966
G1 X0.096074 Y0.975452
Call togglePress P1
G1 Z1.000000
G1 Z50.000000
G1 X-10.000000
G90
G1 A16.000000
G91
; starting layer 15
Call togglePress P1
G1 X-0.096074 Y0.975452
G1 X-0.284529 Y0.937966
G1 X-0.462050 Y0.864434
G1 X-0.621814 Y0.757683
G1 X-0.757683 Y0.621814
G1 X-0.864434 Y0.462050
G1 X-0.937966 Y0.284529
G1 X-0.975452 Y0.096074
G1 X-0.975452 Y-0.096074
G1 X-0.937966 Y-0.284529
G1 X-0.864434 Y-0.462050
G1 X-0.757683 Y-0.621814
G1 X-0.621814 Y-0.757683
G1 X-0.462050 Y-0.864434
G1 X-0.284529 Y-0.937966
G1 X-0.096074 Y-0.975452
G1 X0.096074 Y-0.975452
G1 X0.284529 Y-0.937966
G1 X0.462050 Y-0.864434
G1 X0.621814 Y-0.757683
G1 X0.757683 Y-0.621814
G1 X0.864434 Y-0.462050
G1 X0.937966 Y-0.284529
G1 X0.975452 Y-0.096074
G1 X0.975452 Y0.096074
G1 X0.937966 Y0.284529
G1 X0.864434 Y0.462050
G1 X0.757683 Y0.621814
G1 X0.621814 Y0.757683
G1 X0.462050 Y0.864434
G1 X0.284529 Y0.937966
G1 X0.096074 Y0.975452
Call togglePress P1
G1 Z1.000000
G1 A50.000000
G1 X10.000000
G90
G1 Z17.000000
G91
; starting layer 16
Call togglePress P1
G1 X-0.096074 Y0.975452
G1 X-0.284529 Y0.937966
G1 X-0.462050 Y0.864434
G1 X-0.621814 Y0.757683
G1 X-0.757683 Y0.621814
G1 X-0.864434 Y0.462050
G1 X-0.937966 Y0.284529
G1 X-0.975452 Y0.096074
G1 X-0.975452 Y-0.096074
G1 X-0.937966 Y-0.284529
G1 X-0.864434 Y-0.462050
G1 X-0.757683 Y-0.621814
G1 X-0.621814 Y-0.757683
G1 X-0.462050 Y-0.864434
G1 X-0.284529 Y-0.937966
G1 X-0.096074 Y-0.975452
G1 X0.096074 Y-0.975452
G1 X0.284529 Y-0.937966
G1 X0.462050 Y-0.864434
G1 X0.621814 Y-0.757683
G1 X0.757683 Y-0.621814
G1 X0.864434 Y-0.462050
G1 X0.937966 Y-0.284529
G1 X0.975452 Y-0.096074
G1 X0.975452 Y0.096074
G1 X0.937966 Y0.284529
G1 X0.864434 Y0.462050
G1 X0.757683 Y0.621814
G1 X0.621814 Y0.757683
G1 X0.462050 Y0.864434
G1 X0.284529 Y0.937966
G1 X0.096074 Y0.975452
Call togglePress P1
G1 Z1.000000
G1 Z50.000000
G1 X-10.000000
G90
G1 A18.000000
G91
; starting layer 17
Call togglePress P1
G1 X-0.096074 Y0.975452
G1 X-0.284529 Y0.937966
G1 X-0.462050 Y0.864434
G1 X-0.621814 Y0.757683
G1 X-0.757683 Y0.621814
G1 X-0.864434 Y0.462050
G1 X-0.937966 Y0.284529
G1 X-0.975452 Y0.096074
G1 X-0.975452 Y-0.096074
G1 X-0.937966 Y-0.284529
G1 X-0.864434 Y-0.462050
G1 X-0.757683 Y-0.621814
G1 X-0.621814 Y-0.757683
G1 X-0.462050 Y-0.864434
G1 X-0.284529 Y-0.937966
G1 X-0.096074 Y-0.975452
G1 X0.096074 Y-0.975452
G1 X0.284529 Y-0.937966
G1 X0.462050 Y-0.864434
G1 X0.621814 Y-0.757683
G1 X0.757683 Y-0.621814
G1 X0.864434 Y-0.462050
G1 X0.937966 Y-0.284529
G1 X0.975452 Y-0.096074
G1 X0.975452 Y0.096074
G1 X0.937966 Y0.284529
G1 X0.864434 Y0.462050
G1 X0.757683 Y0.621814
G1 X0.621814 Y0.757683
G1 X0.462050 Y0.864434
G1 X0.284529 Y0.937966
G1 X0.096074 Y0.975452
Call togglePress P1
G1 Z1.000000
G1 A50.000000
G1 X10.000000
G90
G1 Z19.000000
G91
; starting layer 18
Call togglePress P1
G1 X-0.096074 Y0.975452
G1 X-0.284529 Y0.937966
G1 X-0.462050 Y0.864434
G1 X-0.621814 Y0.757683
G1 X-0.757683 Y0.621814
G1 X-0.864434 Y0.462050
G1 X-0.937966 Y0.284529
G1 X-0.975452 Y0.096074
G1 X-0.975452 Y-0.096074
G1 X-0.937966 Y-0.284529
G1 X-0.864434 Y-0.462050
G1 X-0.757683 Y-0.621814
G1 X-0.621814 Y-0.757683
G1 X-0.462050 Y-0.864434
G1 X-0.284529 Y-0.937966
G1 X-0.096074 Y-0.975452
G1 X0.096074 Y-0.975452
G1 X0.284529 Y-0.937966
G1 X0.462050 Y-0.864434
G1 X0.621814 Y-0.757683
G1 X0.757683 Y-0.621814
G1 X0.864434 Y-0.462050
G1 X0.937966 Y-0.284529
G1 X0.975452 Y-0.096074
G1 X0.975452 Y0.096074
G1 X0.937966 Y0.284529
G1 X0.864434 Y0.462050
G1 X0.757683 Y0.621814
G1 X0.621814 Y0.757683
G1 X0.462050 Y0.864434
G1 X0.284529 Y0.937966
G1 X0.096074 Y0.975452
Call togglePress P1
G1 Z1.000000
G1 Z50.000000
G1 X-10.000000
G90
G1 A20.000000
G91
; starting layer 19
Call togglePress P1
G1 X-0.096074 Y0.975452
G1 X-0.284529 Y0.937966
G1 X-0.462050 Y0.864434
G1 X-0.621814 Y0.757683
G1 X-0.757683 Y0.621814
G1 X-0.864434 Y0.462050
G1 X-0.937966 Y0.284529
G1 X-0.975452 Y0.096074
G1 X-0.975452 Y-0.096074
G1 X-0.937966 Y-0.284529
G1 X-0.864434 Y-0.462050
G1 X-0.757683 Y-0.621814
G1 X-0.621814 Y-0.757683
G1 X-0.462050 Y-0.864434
G1 X-0.284529 Y-0.937966
G1 X-0.096074 Y-0.975452
G1 X0.096074 Y-0.975452
G1 X0.284529 Y-0.937966
G1 X0.462050 Y-0.864434
G1 X0.621814 Y-0.757683
G1 X0.757683 Y-0.621814
G1 X0.864434 Y-0.462050
G1 X0.937966 Y-0.284529
G1 X0.975452 Y-0.096074
G1 X0.975452 Y0.096074
G1 X0.937966 Y0.284529
G1 X0.864434 Y0.462050
G1 X0.757683 Y0.621814
G1 X0.621814 Y0.757683
G1 X0.462050 Y0.864434
G1 X0.284529 Y0.937966
G1 X0.096074 Y0.975452
Call togglePress P1
G1 Z1.000000
G1 A50.000000
G1 X10.000000
G90
G1 Z21.000000
G91

Approximate print time: 
        775.411 seconds 
        12.9 min 
        0.2 hrs

Result: 3d plot

Bug

Currently viewing multiaxis printing is not supported. Instead you will see each layer separated by the offset distance defined above. In practice, this gcode will generate a single cylinder.