Animated mobius strip (July 2010)
# mobius.kbs
# rotation mobius strip - j.m.reneau
fastgraphics
dim p(8)
dim c(3)
c = {red, green, blue}
w = .20 # width of strip
dr = 2 * pi / 100 # size of rotation in frame
speed = .01 # pause between frames
r = 0
while true
clg
for t = 0 to 2
x = sin((t - w) * pi * 2 / 3 + r)*graphwidth/2 + graphwidth/2
y = cos((t - w) * pi * 2 / 3 + r)*graphheight/2 + graphheight/2
x1 = sin((t + w) * pi * 2 / 3 + r)*graphwidth/2 + graphwidth/2
y1 = cos((t + w) * pi * 2 / 3 + r)*graphheight/2 + graphheight/2
x2 = sin((t+1 - w) * pi * 2 / 3 + r)*graphwidth/2 + graphwidth/2
y2 = cos((t+1 - w) * pi * 2 / 3 + r)*graphheight/2 + graphheight/2
x3 = sin((t+1 + w) * pi * 2 / 3 + r)*graphwidth/2 + graphwidth/2
y3 = cos((t+1 + w) * pi * 2 / 3+ r)*graphheight/2 + graphheight/2
p = {x,y,x3,y3,x2,y2,x1,y1}
color c[t]
poly p
next t
refresh
r = r + dr
pause speed
end while