3Dグラフィックス指示子

2Dグラフィックスと同じように3Dグラフィックスも詳細なグラフィックス指示子を指定することができる.

2Dで有効なグラフィックスオプションはすべて3Dでも使える.3Dだけで有効なグラフィックス指示子もある.

2Dのときのように,PointSizeThicknessDashingのグラフィックス指示子を使い,3D空間における点や線(PointLine)の大きさ,太さ,線の形態を指定できる.ただし,3Dでは,それらの条件で指定する長さとは全表示領域の幅に対する割合を示すので注意が必要である.

乱数による3D座標を20組作っておく.
In[1]:=
Click for copyable input
各座標点に直径が表示幅の5%の円を描画する.
In[2]:=
Click for copyable input
Out[2]=

2Dにおける絶対単位の長さ指定は3Dでも有効である.点の絶対サイズ(AbsolutePointSize),線の絶対太さ(AbsoluteThickness),破線の絶対区間長(AbsoluteDashing)がこれに当たる.

ランダムな3D座標点を10個作り,線で結んだオブジェクトを生成する.
In[3]:=
Click for copyable input
オブジェクトの折れ線を破線表示する.線の太さは2ポイントである.
In[4]:=
Click for copyable input
Out[4]=

PointLine(点と線の描画)の場合は,色付けにかかわる指示子は3Dでも2Dの場合と同様に働く.ただし,Polygon(多角形)に関しては,その限りではない.

2Dでは,多角形には特定色が常に1つ割り付けられ,その色はRGBColorOpacity等のグラフィックス指示子により画一的に決められる.これに対して,3Dでは,擬似照明法に基づいたより物理的な手法で多角形の色付けができるようになっている.多角形は色指示子により定義される内色素を引き続き持つが,グラフィックスが描画されたときに見られる最終的な色は,その多角形にあたる光の値により異なる.多角形はデフォルトでは内的に白である.

Lighting->Automaticデフォルトの光配置と値を使う
Lighting->Noneすべての光を無効にする
Lighting->"Neutral"白色光源だけを使い照明する

3Dグラフィックスにおける多角形の色付け法

デフォルトの照明で正20面体を描画する.多角形の内的色は白である.
In[5]:=
Click for copyable input
Out[5]=
同じ照明パラメータを使って20面体を描画するが,多角形の内的な色を灰色に設定する.
In[6]:=
Click for copyable input
Out[6]=
多角形の内部色の値は,を使うとより明らかになる.
In[7]:=
Click for copyable input
Out[7]=
線だけにグレーを適用する.これは照明による影響を受けない.
In[8]:=
Click for copyable input
Out[8]=
2D指示子の場合と同じように,色指示子はサブリストを使って線にスコープすることができる.
In[9]:=
Click for copyable input
Out[9]=
EdgeForm[]多角形の辺の線は描かない
EdgeForm[g]グラフィックス指示子 g に基づいて多角形の辺の線を描く

多角形における辺の描線の指定

Wolframシステムで3Dグラフィックスオブジェクトを描画するときに使う線の種類は2つある.ひとつはグラフィックスオブジェクトに含まれている明示的なLineプリミティブの線で,もうひとつは多角形の辺を描くのに使う線である.

後者の線について描画仕様を設定するにはEdgeFormを使いグラフィックス指示子のリストを与える.

12面体を描画する.面の周囲の線は灰色で描画するよう指示する.
In[10]:=
Click for copyable input
Out[10]=
FaceForm[gfront,gback]多角形の描画において表面にグラフィックス指示子 gfront を,裏面にグラフィックス指示子 gback を指定する

多角形の表面と裏面のグラフィックス指示子

3Dにおける多角形で重要なことは,表と裏があるという点である.Wolframシステムでは,多角形を正面から見たときに,その頂点の指定順序が反時計方向に見える場合にその面を表と定義している.

各多角形の表側(外側)をほとんど透明にし,裏側(内側)を完全に不透明にする.
In[11]:=
Click for copyable input
Out[11]=