To bicycle :alpha :beta
frame
locate.saddle
saddle
locate.rear.wheel
wheel
locate.drive
drive
locate.pedals
pedals :beta
locate.steering :alpha
steering
locate.front.wheel
wheel
End

To chain
large.halfcurve
Forward3d 113.3
small.curve
Forward3d 113.3
large.halfcurve
End

To chainwheel
RotateZ 10
Repeat 18 [Forward3d 9 RotateZ 20]
RotateZ -10
End

To crank
Forward3d 16
RotateZ 90 Forward3d 40 RotateZ -90
Forward3d 5
End

To diamond
RotateZ 27
Forward3d 107 RotateZ -117
Forward3d 121.7 RotateZ -75
Forward3d 18.2 RotateZ -60
Forward3d 110 RotateZ -135
End

To drive
chainwheel
locate.freewheel
freewheel
locate.chain
chain
End

To foot
Repeat 2 [halffoot RotateX 180]
End

To frame
diamond
locate.lower.fork
lower.fork
locate.rear.fork
rear.fork
End

To freewheel
RotateZ 10
Repeat 18 [Forward3d 2.75 RotateZ 20]
RotateZ -10
End

To front.arm
Forward3d 53.5 RotateZ 27
Forward3d 27 Forward3d -27
RotateZ -27 Forward3d -53.7
End

To front.fork
Forward3d 6
RotateZ -90 Forward3d 8 RotateZ 90
RotateX 90
front.arm
RotateX -90
RotateZ -90 Forward3d -16 RotateZ 90
RotateX 90
front.arm
RotateX -90
RotateZ -90 Forward3d 8 RotateZ 90
Forward3d -6
End

To half.saddle
Forward3d 15 RotateZ -90
Forward3d 18 Repeat 14 [Forward3d 1 RotateZ -10]
Forward3d 12 Repeat 3 [RotateZ 10 Forward3d 2]
Forward3d 22 RotateZ -25
Forward3d 4 RotateZ -135
Forward3d 31
End

To half.handlebar :inclination
Forward3d 28
Repeat 7 [Forward3d 2 RotateZ 8]
RotateY :inclination
Forward3d 15
End

To halffoot
Repeat 2 [Forward3d 14 RotateZ -90 Forward3d 6 RotateZ -90]
End

To handlebar
Forward3d 34
RotateY 75 RotateZ -90
half.handlebar 20
unwalk.handlebar -20
half.handlebar -20
unwalk.handlebar 20
RotateZ 90 RotateY -75
Forward3d -34
End

To large.halfcurve
RotateZ 10
Repeat 5 [Forward3d 9 RotateZ 20]
RotateZ -11
End

To locate.chain
PenUp
RotateZ -90 Forward3d 133 RotateZ 90
PenDown
End

To locate.drive
PenUp
RotateZ -90
Forward3d 72.1
RotateY -90
Forward3d 10
RotateY 90
RotateZ 90
PenDown
End

To locate.freewheel
PenUp
RotateZ 90 Forward3d 133 RotateZ -90
PenDown
End

To locate.front.fork
RotateZ 180
Forward3d 18.2
End

To locate.front.wheel
PenUp
Forward3d 59.7
RotateY -27
Forward3d 27
RotateY -48
Forward3d 68.8
RotateX 90
RotateZ 90
PenDown
End

To locate.lower.fork
RotateX 90
RotateY 90
End
 
To locate.pedals
PenUp
RotateY 90
Forward3d 10
RotateZ -90
Forward3d -25.9
PenDown
End

To locate.rear.fork
PenUp
RotateY -63
Forward3d 107
RotateY 118.1
PenDown
End
 
To locate.rear.wheel
PenUp
RotateY -63
Forward3d -15
RotateY 118.1
Forward3d 116.1
RotateX -90
RotateZ -55.1
Forward3d -68.8
RotateZ -90
PenDown
End

To locate.saddle
RotateY -118.1
Forward3d 15
RotateY 63
End

To locate.steering :alpha
PenUp
RotateY -45
Forward3d 110
RotateZ 180
RotateY -120
Forward3d 18.2
RotateX :alpha
PenDown
End

To lower.arm
RotateZ -45 Forward3d 14
RotateZ -45 Forward3d 82
Forward3d -82 RotateZ 45
Forward3d -14 RotateZ 45
End
 
To lower.fork
Forward3d 23.1 RotateZ 90
Repeat 2 [lower.arm RotateY 180]
RotateZ -90 Forward3d -23.1
End

To pedal :beta
crank
RotateX ( -:beta )
foot
RotateX :beta
unwalk.crank
End

To pedals :beta
RotateZ 90
RotateX ( -:beta )
pedal ( -:beta )
RotateZ 180
pedal :beta
RotateX ( -:beta )
RotateZ 90
End

To rear.arm
Repeat 6 [Forward3d 2.3 RotateZ -15]
Forward3d 78.5 Forward3d -78.5
Repeat 6 [RotateZ 15 Forward3d -2.3]
End

To rear.fork
Forward3d 30 RotateZ 90
Repeat 2 [rear.arm RotateY 180]
RotateZ -90 Forward3d -30
End

To rim
RotateY 90 RotateZ -30
tyre
RotateZ 30 RotateY -90
Forward3d 12 RotateZ 10
End

To saddle
Repeat 2 [half.saddle RotateX 180]
End

To small.curve
RotateZ 11
Repeat 8 [Forward3d 2.75 RotateZ 20]
RotateZ -9
End

To spoke :cross :ply
RotateZ ( 85 + :cross )
RotateY :ply
Forward3d 65 Forward3d -65
RotateY ( -:ply )
RotateZ ( -85 - ( :cross ) )
End

To steering
handlebar
locate.front.fork
front.fork
End

To stripe :length
RotateY -90
Forward3d :length
Forward3d ( -:length )
RotateY 90
PenUp Forward3d 2 RotateZ -60 PenDown
End

To tyre
stripe 12
stripe 12.2
stripe 12.5
stripe 12.7
stripe 12.5
stripe 12.2
End

To unwalk.crank
Forward3d -5
RotateZ 90 Forward3d -40 RotateZ -90
Forward3d -16
End

To unwalk.handlebar :inclination
RotateY 180
Forward3d 15
RotateY :inclination
Repeat 7 [RotateZ 8 Forward3d 2]
Forward3d 28
End

To wheel
RotateZ 5
Repeat 9 [rim spoke 5 7 rim spoke 5 -7 rim spoke -5 7 rim spoke -5 -7]
RotateZ -5
End

RotateX -30 RotateY 10
bicycle 15 20
 