|
以前『老子』の第十一章の無と有の関係について訳していた時に、
馬車の車輪の真ん中に穴が空いていて、
車輪の外側とその穴の空いた内側との間を三十本の柱が支えている、
その真ん中の穴(つまり無)があるから車輪としての働き(つまり有)が
成り立つという部分がありました。
そのときそれを説明した図を描いていました。しかし時不満に思ったのが、
三十本の柱の部分を上手く描くことが出来なかったことでした。
これがずっと気になっていました。
そこで iPhone のアプリの BASIC-Ⅱ を使うことにしました。
これはiPhone 上で BASIC という懐かしいプログラミング言語で
プログラミングが出来るアプリです。
これを今回試しに使ってみることにしました。高校生のとき以来の BASIC です。
手軽にプログラミングで絵を描くには重宝します。
以下のようなコードです。
10 REM 大きな円を描きます。
20 LINE 150,200,150,200,1,250
30 LINE 150,200,150,200,4,240
40 REM 小さな円を描きます。
50 LINE 150,200,150,200,1,50
60 LINE 150,200,150,200,4,40
70 REM 円と円の間の三十本の線を描きます。
80 FOR t=0 TO 30
90 r=360*t/30
100 c=COS(r)
110 s=SIN(r)
120 x=150+25*c
130 y=200-25*s
140 x2=150+120*c
150 y2=200-120*s
160 LINE x,y,x2,y2,1,5
170 NEXT
このアプリの難点は、まだ多くの機能を盛り込んでおりませんので、
まだまだ開発途上な部分です。
例えば円を描こうとしても直線を描くことしかできませんので、
直線だけで円を描く工夫をすることにしました。
円を直接描くことが出来ませんので、
大きな黒い点を描いて、その中にほんの少しだけ小さい白い点を描いて
くり抜く、という形で円を描くことにしました。
直接に点を描くことも出来ませんので、
これは長さのない直線を描くことで解決しました。
つまり、直線を描く処理を工夫して使うだけで、
円が描けてしまうわけです。こういう工夫が大切なのだと思います。
そのようにして大きな円と小さな円を描くことにしました。
大きな円は 20 から 30 の部分で、
小さい方の円は 50 と 60 の部分です。
80 以降の部分は三十本の柱を描く部分です。
円の中心から外側への円を三十本描くわけです。
つまり真ん中から 360 度を 30 で割って、
12 度ごとに線を描くことになります。
その 12 度ごとに内側の円と外側の円で接する部分の座標を計算して、
その二つの座標の間で黒い色の直線を引く、という処理をしています。
この座標の計算のために、サインとコサインを使っています。
これまた懐かしい三角関数です。描いた結果が今回の画像です。
ようやく一つの問題が片付いてほっとしました。
これで再び今の勉強に戻れそうです。これからもしっかりとがんばります。
|
過去の投稿日別表示
[ リスト | 詳細 ]
2013年02月17日
全1ページ
[1]
全1ページ
[1]




