
10 DEF x = (t/PI) * COS(t)
20 DEF y = (t/PI) * SIN(t)
30 SET WINDOW -5.2, 5.2, -4.2, 5.2
40 DRAW grid
50 WAIT DELAY 1
60 FOR t = 0.0 TO 5*PI STEP 0.05
70 PLOT LINES: x, y ;
80 WAIT DELAY 1/100
90 NEXT t
100 END
この十進BASIC のプログラムは、 次のような観察者が観察した 次のような移動をしている点P の軌道を描いています。 ただし、 時間を少し早回しにしています。
観察者は、 原点で時計回りに角速度の大きさ
で回転しています。 時刻
秒 のとき、 観察者は
軸 と
軸 からなる直交座標系に正対しています。
軸上の点P は等速直線運動をしていて、 時刻
秒 に次の座標に存在します。
時計回りに回転している回転座標系への座標変換を用いると、 点P は次のように座標変換されます。


この式は
が定数の場合は 円のグラフ を表しますが、
は次第に大きくなりますので、 この式は 点から次第に広がっていく円のアニメーション を表します。半径5 の円のグラフを描くプログラムは、 次のようになります。
10 DEF x = 5 * COS(t)
20 DEF y = 5 * SIN(t)
30 SET WINDOW -5.2, 5.2, -5.2, 5.2
40 DRAW grid
50 FOR t = 0.0 TO 2*PI STEP 0.01
60 PLOT LINES: x, y ;
70 NEXT t
80 END
また、 次第に広がる円のアニメーションのプログラムは、 次のようになります。
10 SET WINDOW -5.2, 5.2, -5.2, 5.2
20 DRAW grid
30 WAIT DELAY 1
40 FOR r = 0 TO 4.95 STEP 0.05
50 SET LINE COLOR 1
60 DRAW circle WITH SCALE(r)*SHIFT(0,0)
70 WAIT DELAY 1/10
80 SET LINE COLOR 0
90 DRAW circle WITH SCALE(r)*SHIFT(0,0)
100 NEXT r
110 DRAW grid
120 SET LINE COLOR 1
130 DRAW circle WITH SCALE(5)*SHIFT(0,0)
140 END
< コピぺ用の小窓 >
JavaScript + html のプログラム:
プログラムの内容 :
十進