to boxes :size :num
repeat :num [randomcolor Repeat 4 [fd :size rt 90]
rt 90 pu fd :size + 20 pd lt 90]
End
to hexagon :n
repeat 6 [tri :n rt 60]
End
to kite :w :l
rt 45
repeat 2 [fd sqrt (.5*(:w*:w)) rt 90]
pu rt 45 fd .5*:w lt 90 fd (:l-(.5*:w)) pd
End
to mirror
tables lt 90 tables
End
to mirrors
mirror lt 45 mirror
End
to polygon :n :l
Repeat :n [fd :l rt (360/:n)]
End
to pompom
repeat 360 [randomcolor randomlength 100 fd :length bk :length rt 1 ]
End
to randomcolor
make "R random 256
make "G random 256
make "B random 256
make "T random 256
setpc (list :R :G :B)
End
to randomlength :rlength
make "length random :rlength
End
to sndswish
repeat 600 [make "Hz 0+repcount*20
sound (list :Hz :time)]
repeat 600 [make "Hz 12000-repcount*20
sound (list :Hz :time)]
End
to sndswish2
repeat 2 [
repeat 60 [
make "Hz 00000+repcount*200 sound (list :Hz :time)
]
repeat 60 [
make "Hz 12000-repcount*200 sound (list :Hz :time)
]
]
End
to spiderweb :n
if :n > 100 [stop]
hexagon :n
spiderweb :n + 10
End
to spinpoly :n :l :t
repeat :t [polygon :n :l rt (360/:t)]
End
to square :n
repeat 4 [fd :N randomcolor rt 90]
End
to squares
repeat 4 [square (40+repcount*20)]
End
to tables
squares lt 90 squares
End
to tri :n
repeat 3 [fd :n randomcolor rt 120]
End
Make "b 191
Make "g 27
Make "hz 3120
Make "length 67
Make "r 190
Make "t 38
Make "time 10