# Main Command: Go # Ferris Wheels by Guy Walker # www.logoarts.co.uk to new # set default screen, pen and turtle ResetAll SetScreenSize [400 400] HideTurtle SetSC Black SetPC Green SetPS 1 PenUp end to init Make "R Pick [1 2] Make "S (Pick [-1 1]) * Pick [3 5 7] Make "T (Pick [-1 1]) * Pick [ 11 13 17 19 23] Make "V Pick [0 180] Make "W Pick [0 180] end to display # write header title and footer values SetPC White SetPos [-190 184] Label [Ferris Wheel] SetPos [-190 -190] Label ( List "RST "= :R :S :T ) SetPos [110 -190] Label ( List "STp "= :V :W ) end To Hue2 :Theta # Output RGB hue list from angle :Theta Make "Red Abs 255*Sin :Theta Make "Green Abs 255*Sin (:Theta+120) Make "Blue Abs 255*Sin (:Theta+240) Output (List :Red :Green :Blue) End to drawarms :angle SetTurtle 0 PenUp SetPos [0 0] PenDown SetH 0 Left :R*:Angle Forward 102 SetH 0 Left (:S*:Angle) +:V Forward 51 SetH 0 Left (:T*:Angle) +:W Forward 34 Make "myPos Pos end to ferris SetTurtle 1 PenUp SetPos :myPos PenDown For [Angle 1 360] [ DrawArms :Angle SetTurtle 1 SetPC Hue2 :Angle SetPos :myPos Wait 2 DrawArms :Angle] end to go Forever [ New Init Display SetPC White DrawArms 0 Wait 60 SetPC Black DrawArms 0 SetPC White PX Ferris Wait 60 #Make "W :W+180 DrawArms 0 DrawArms 0 Ferris Wait 180] end