透視図法の機能について 1998.12.17初版 ('02.08.19更新)


 2変数関数の3次元プロット描画等では、透視図法を次のように扱います。 



1.視点座標の設定  視点座標(下図のE)は、極座標(ρ,θ,φ)で与えます。 ここで、 ρ (rho) :視点の原点からの距離 θ (theta):視点のx軸からの水平方向の角度(0〜360度) φ (phi) :視点のz軸からの垂直方向の角度(0〜180度)

透視座標の設定 とρ,θ,φは定義されます。つまり、ρは注視点O(物体の中心)と視点E との距離で、透視の効果を現すパラメータとなります。この値が小さいほど 効果は強くなります。また(θ,φ)は視点の方向を現します。  描かれる図形は、注視点Oを含む、直線EOに垂直な平面に射影されます。 このとき注視点は、透視平面の中心になります。  注視点は設定を省略すると、デフォルト値である原点になります。  また、パラメータρを負の値にしたとき、直交射影(視点が無限遠)と いう規約とします。  プログラムでは、視点はメンバー関数GRAPH::eye()で、注視点はメンバー 関数GRAPH::center() で設定します。  設定後は、透視平面の座標値はGRAPH::perspective() (透視座標変換)を 使って得ることができます。透視図形は、この透視座標変換の値を使って描き ます。 透視座標の数学表現はこちら

2.サンプルによる例

 いろいろな角度から見た立方体

いろいろな角度から見た立方体ソース・ファイル(eye02.cpp

 2変数の数学関数のプロット

2変数の数学関数のプロットソース・ファイル(eye04.cpp

トーラス

トーラスソースファイル(eye07.cpp)

| 戻る |
 

Copyright(c) 1998-2002 Yamada, K