36 lines
624 B
Plaintext
36 lines
624 B
Plaintext
'Pendulum
|
|
'By Dutchman
|
|
' --- constants
|
|
g=9.81 ' accelleration of gravity
|
|
l=1 ' length of pendulum
|
|
GET SCREEN SIZE sw,sh
|
|
pivotx=sw/2
|
|
pivoty=150
|
|
' --- initialise graphics
|
|
GRAPHICS
|
|
DRAW COLOR 1,0,0
|
|
FILL COLOR 0,0,1
|
|
DRAW SIZE 2
|
|
' --- initialise pendulum
|
|
theta=1 ' initial displacement in radians
|
|
speed=0
|
|
' --- loop
|
|
DO
|
|
bobx=pivotx+100*l*SIN(theta)
|
|
boby=pivoty-100*l*COS(theta)
|
|
GOSUB Plot
|
|
PAUSE 0.01
|
|
accel=g*SIN(theta)/l/100
|
|
speed=speed+accel
|
|
theta=theta+speed
|
|
UNTIL 0
|
|
END
|
|
' --- subroutine
|
|
Plot:
|
|
REFRESH OFF
|
|
GRAPHICS CLEAR 1,1,0.5
|
|
DRAW LINE pivotx,pivoty TO bobx,boby
|
|
FILL CIRCLE bobx,boby SIZE 10
|
|
REFRESH ON
|
|
RETURN
|