POLYHEDRON OPERATIONS パッケージ チュートリアル
多面体操作パッケージ
プラトンの立体とは,面と頂点がすべて同じタイプである凸多面体のことである.このような立体は5つある.この他にも面と頂点がすべて同じタイプであるが,非凸多面体であるものがある.このパッケージには,PolyhedronDataで利用できる多面体の特性のいくつかを変更するための機能が収められている.
| Tetrahedron | Cube |
| Octahedron | Dodecahedron |
| Icosahedron | Hexahedron |
| GreatDodecahedron | SmallStellatedDodecahedron |
| GreatStellatedDodecahedron | GreatIcosahedron |
| In[1]:= |
| In[2]:= |
| Out[2]= | ![]() |
| In[3]:= |
| Out[3]= | ![]() |
| Stellate[PolyhedronData[polyname]] | 星状の多面体を表示 |
| Stellate[PolyhedronData[polyname],ratio] | |
| 星状比が ratio の星状多面体を表示 | |
| Geodesate[PolyhedronData[polyname],n] | |
| 多面体の各面の次数 | |
| Geodesate[PolyhedronData[polyname],n,{x,y,z},radius] | |
| 多面体の各面の次数 | |
| Truncate[PolyhedronData[polyname]] | 面取りした多面体を表示する |
| Truncate[PolyhedronData[polyname],ratio] | |
| 多角形の辺を割合 ratio で面取りした多面体を表示する | |
| OpenTruncate[PolyhedronData[polyname]] | |
| 面取りされた多面体を,面取りされた頂点を閉じる多角形を含まず表示する | |
| OpenTruncate[PolyhedronData[polyname],ratio] | |
| 辺を割合 ratio で切り取って面取りした多面体を,切り取った頂点を多角形で塞がずに表示する | |
多面体はデフォルトでは原点を中心とし,原点から各辺の中点までが単位距離となる.凸状の立体は何でもStellateを用いて星状にすることができる.これを使うと多面体の各面がその面を底面とした角錐に置き換えられる.ユーザが星状化の割合を変えることもできる.この割合が
未満の場合は凹状になり,デフォルトの割合は
である.Geodesateは五面以上の多面体を外接球に投影する前に三角形に分割する.各面の
次の正平面充填形が与えられていない場合,デフォルト値の
が用いられる.球のデフォルト位置は
で半径は
である.TruncateとOpenTruncateはあらゆる多面体に作用し,多面体の各頂点を切り取る.切り取る割合のデフォルト値は
である.
| In[4]:= |
| Out[4]= | ![]() |
| In[5]:= |
| Out[5]= | ![]() |
| In[6]:= |
| Out[6]= | ![]() |
OpenTruncateを使うと切り取られた多面体の内側が見られる.
| In[7]:= |
| Out[7]= | ![]() |
Firstを使うとPolyhedronDataにより生成されたオブジェクトから多角形のリストをGraphicsComplex形式で抽出することができる.また,PolyhedronDataで利用できる
,
,
はそれぞれ,頂点の座標,多面体の各面に対するグラフィックスプリミティブのリスト,多面体の辺に対するグラフィックスプリミティブを与える.
| First[PolyhedronData[polyname]] | 指定された多面体のグラフィックスを表すGraphicsComplexを与える |
| PolyhedronData[polyname,"VertexCoordinates"] | |
| 多面体の頂点座標のリストを与える | |
| PolyhedronData[polyname,"VertexCoordinates"] | |
| 多面体の面のリストをPolygonプリミティブとして与える | |
| PolyhedronData[polyname,"Edges"] | 多面体の辺のリストをLineプリミティブとして与える |
次は原点を中心とする四面体に対応するGraphicsComplexオブジェクトである.
| In[8]:= |
| Out[8]= | ![]() |
| In[9]:= |
| Out[9]= | ![]() |
| In[10]:= |
| Out[10]= | ![]() |
以下は四面体の辺を表すLineプリミティブのリストを与える.
| In[11]:= |
| Out[11]= | ![]() |











