正多面体
正多面体は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"]);
< 戻る >