Mathematica 9 is now available
THIS IS DOCUMENTATION FOR AN OBSOLETE PRODUCT.
SEE THE DOCUMENTATION CENTER FOR THE LATEST INFORMATION.
Mathematica > 可視化とグラフィックス > グラフィックスオプションとスタイル > 3Dグラフィックスオプション >

Lighting

Lighting
Graphics3Dやこれに関連した関数のオプションとして使われ,3Dの表面の彩色にどのような擬似照明を使用するかを指定する.
  • 以下の設定が使用できる.
Automaticデフォルトの照明スキーム
None照明は当てない
{s1,s2,...}光源 s1, s2, ...
  • 各光源は,それぞれ以下の形式が取れる.
{"Ambient",col}色が col の一様な周辺光
{"Directional",col,pt}pt から境界ボックスの中心に向けられた指向性光源
{"Directional",col,{pt1,pt2}}pt1 から pt2 へのベクトルに沿った指向性光源
{"Point",col,pt}位置 pt における球形の点光源
{"Point",col,pt,att}幾何学的減衰 att のある点光源
{"Spot",col,pt,Alpha}半角 Alphapt から中心に向かうスポットライト
{"Spot",col,{pt,tar},Alpha}pt から半角 Alphatar に向かうスポットライト
{"Spot",col,{pt,tar},{Alpha,s},att}スポット指数 s,幾何学的減衰 att のスポットライト
  • 光源の位置と目標は次のように指定できる.
{x,y,z}グラフィックスとともに動く明示的な座標
Scaled[{x,y,z}]グラフィックスとともに動くスケールされた座標
ImageScaled[{x,y,z}]最終的な描画画像に相対的に固定された座標
  • ImageScaled[{x, y, z}]では, xy は最終的な表示画像の境界ボックスの幅と高さに沿った0から1までとなる.z 座標は表示平面に対して直角となり,3次元領域の裏側で0,表側で1となる.
  • ScaledImageScaledで指定された座標は,0から1に収まらないことがしばしばある.
  • Lighting->Automaticは,周辺光を,最終的な描画画像と相対的に固定された4つの光源とともに使う.一般的なデフォルト設定のColorFunction->Automaticでは,色付きの光源が使われるColorFunctionに明示的な設定値が与えられている場合は,光源は白とみなされる. »
  • Lighting->"Neutral"は常にデフォルト位置の白色光源を使う.  »
  • 照明は3Dグラフィックスについては,Plot3DGraphics3D等のLightingオプションを与えることで大域的に指定できる.
  • スタイルオプションStyle[obj, Lighting->spec]を使って,Graphics3D内の特定オブジェクトの照明を別々に指定することができる. »
  • グラフィックスプリミティブと指示子のリストで,代替的な形式{..., g, Lighting->spec, g, ...}を用いてリスト内の照明指定に続くオブジェクトの照明を定義することができる. »
  • 3D表面の最終的な色は,3つのソースからのRGBカラーを直線的に加えることで定義できる.
RGBColor等の指示子によって定義された拡散反射
Specularity指示子によって定義された鏡面反射
Glow指示子によって定義された光沢
  • Lightingの設定は,拡散反射と鏡面反射に関連する色だけに影響する.
  • 拡散反射はランベルト(Lambert)の法則に従うものとする.ここで,光は実質的に光源から全方向に等分に散らばる.
  • 鏡面反射は,Specularityの注にあるように,実質的に光が鏡面方向近くにだけ散らばっているものとする.
  • 光源の色はRGBColorHueその他の色指定で定義できる.
  • {dcol, Specularity[scol]}の形式の色指定を持つ光源は,実質的に,拡散反射の目的で色 dcol を,鏡面反射の目的で色 scol を持つものとする. »
  • {"Directional", col, {pt1, pt2}}で指定された方向性を持つ光源は,平行な模擬光線を与えるものとするので,{pt1, pt2}で定置されたベクトルの方向のみが重要になる.大きさは重要ではない. »
  • {"Point", col, pt}で指定された点光源は,実質的に点 pt から発する光を与えるが,距離によって減衰させはしない. »
  • {"Point", col, pt, {a, b, c}}は距離 r1/c r^2+b r+a のように減衰する光を返す. »
  • {"Spot", col, {pt, tar}, Alpha}は,方向 pt から tar までで半角がラジアンで alphaの円錐に限る点を除いて点光源と同じ配光を返す. »
  • {"Spot", col, {pt, tar}, {Alpha, s}}は円錐の中心からcos^stheta の減退を与える. »
  • {"Spot", col, {pt, tar}, {Alpha, s}, {a, b, c}}は,距離 r1/c r^2+b r+a の減衰を与える. »
灰色の鏡面反射性を持つ球のデフォルト照明:
In[1]:=
Click for copyable input
Out[1]=
 
自然照明を当てた灰色の鏡面反射性を持つ球:
In[1]:=
Click for copyable input
Out[1]=
 
鏡面反射性を持つ曲面の上から当てた方向性を持つ照明:
In[1]:=
Click for copyable input
Out[1]=
 
各オブジェクトの照明を指定する:
In[1]:=
Click for copyable input
Out[1]=
バージョン 1 の新機能 | バージョン 6 での修正機能
Ask a question about this page  |  Suggest an improvement  |  Leave a message for the team