2012年05月21日

正二十面体の変形プログラム(1)


正二十面体を元にして、星型多面体をはじめとしたいくつかの多面体を一連の変形の中に含ませたプログラムです

1090_Icosa_pyramid_gui_01_05.png





上図の多面体は、大星型十二面体という正十二面体の面を広げて作ることができる多面体と外見上同一ですが(正十二面体の星型については過去記事(「正十二面体の星型化(4)」)をご覧下さい)、正二十面体の各面に三角錐を貼り付けることによって構成されています



面の交叉もなく、いわゆる星型化とは異なりますが、上述のような方法で作ることができる名のある多面体はいくつかあります



ダ・ヴィンチの星という多面体

1090_Icosa_pyramid_gui_01_04.png



六十面体(正二十面体の最初の星型)

1090_Icosa_pyramid_gui_01_03.png




星型多面体ではありませんが、菱形三十面体

1090_Icosa_pyramid_gui_01_02.png



等です



これらの形はすべて正二十面体

1090_Icosa_pyramid_gui_01_00.png

に貼り付ける三角錐の高さを変化させることで、作ることができます



ところで、この変形は正二十面体の面の中心を引っ張って持ち上げるような変形と考えることもでき、さらに面の中心を正二十面体の中心に向かって押し窪めるような変形へと拡張すると、正二十面体を窪ませた形の立体として大十二面体に相当する形も得られます

1090_Icosa_pyramid_gui_01_01.png



プログラムは上図の大十二面体を最初の形、大星型十二面体(冒頭の図の形)を最後の形として、一連の変形を扱えるようになっています



セッティングウィンドウは可能な変形を示すデモンストレーションの後に現れるので注意して下さい

設定できるのは、三角錐の高さ、三角錐同士の距離、面の透明度で、今回の変形に本質的なものは三角錐の高さです(他の2つは変化形状把握の助けのためにつけてあります)

また、セッティングウィンドウ内にチェックボックスを設け、チェックの有無で面の変形を全体に行うか、下図のように一部に限定して行うかを選択できるようにしてあります

1090_Icosa_pyramid_gui_01_0012.png



それから、今までも書き忘れてしまっていましたが、独楽のように回転する動きは数十秒で自動的に止まります



では、プログラムはこちらです→正二十面体の変形(1)



面の色はそれが向いている方向と一対一に対応させてあるので、完全に等しい方向を向いた面は同じ色になります(平行な2面であっても、面している方向が正反対の場合は異なる色としてあります)

これによって、別々の面が面一につながって生じる菱形三十面体の菱形面や星型多面体の本来同一であるべき面が、正二十面体の異なる面に由来する面であっても同色で描かれます



なお、今回の変形に正十二面体をも含ませることは可能で、次回以降に取り上げたいと思います

その場合菱形三十面体が正二十面体と正十二面体の中間の立場にある多面体となります

これは以前掲載した正十二面体を切頂していくプログラムにおいて、二十・十二面体が正二十面体と正十二面体の中間の立体として現れたことを思い起こさせますが、菱形三十面体と二十・十二面体の間には互いに双対多面体であるという関係があります



続く



posted by 流線 at 00:38| Comment(0) | TrackBack(0) | VCSSLによるCGプログラム | このブログの読者になる | 更新情報をチェックする
この記事へのコメント
コメントを書く
お名前: [必須入力]

メールアドレス:

ホームページアドレス:

コメント: [必須入力]

認証コード: [必須入力]


※画像の中の文字を半角で入力してください。

この記事へのトラックバック

広告


この広告は60日以上更新がないブログに表示がされております。

以下のいずれかの方法で非表示にすることが可能です。

・記事の投稿、編集をおこなう
・マイブログの【設定】 > 【広告設定】 より、「60日間更新が無い場合」 の 「広告を表示しない」にチェックを入れて保存する。