正多面体

正多面体は5種類あります。SpaceCindykc にはそのデータが組み込まれており、簡単に正多面体を描くことができます。

正12面体を例にとって描き分けてみましょう。

正多面体の大きさは、外接球の半径で指定します。一番シンンプルなのは、面の数と外接球の半径を指定するものです。

rpolyhedron("1",12,2,["Color=green"]);

ここで,SpaceCindy および,旧版の SpaceCindy2KETpicでは陰線処理をしない次のような図(左)が描かれていましたが,SpaceCindykc では,面に色を塗った図(右)が描かれます。(右図では座標軸も表示しています)

面を塗らない図を描きたい場合は,これに "nodisp" オプションをつけて非表示にし,戻り値の面データを取得し,KeTCindyの VertexEdgeFace(); で表示をします。座標軸も描かないようにしたのが次の図です。

fd=rpolyhedron("1",12,2,["Color=green","nodisp"]);

VertexEdgeFace("1",fd);

TeXに描き出すと頂点の名前は表示されません。(右図)

陰線処理をしたい場合は,さらに Nohiddenbyfaces() を使って陰線処理をします。

fd=rpolyhedron("1",12,2,["Color=green","nodisp"]);

VertexEdgeFace("1",fd);

Nohiddenbyfaces("1","phe3d1","phf3d1",["dr,2"],["do"]);

rpolyhedron に "nodisp" オプションをつけなければ色がついたまま,稜線が描かれます。

fd=rpolyhedron("1",12,2,["Color=green"]);

VertexEdgeFace("1",fd);

Nohiddenbyfaces("1","phe3d1","phf3d1",["dr,2"],["do"]);

Nohiddenbyfaces の第2オプションを "nodisp" にすれば,陰線は表示されなくなります。

fd=rpolyhedron("1",12,2,["Color=green"]);

VertexEdgeFace("1",fd);

Nohiddenbyfaces("1","phe3d1","phf3d1",["dr,2"],["nodisp"]);

なお,標準(初期設定)で簡易レイトレーシングによる陰影づけを行いますが,"Rayoff" オプションをつけるとレイトレーシングは行わずすべての面が同じ色で塗られます。

fd=rpolyhedron("1",12,2,["Color=green","Rayoff"]);

VertexEdgeFace("1",fd);

Nohiddenbyfaces("1","phe3d1","phf3d1",["dr,2"],["nodisp"]);

< 戻る >