5章 3次元形状を2次元面に投影する 3次元空間内に定義した形状を,2次元面 上(ディスプレイのスクリーン面,プリンタ の紙面など)に投影して表示するために必 要になる変換について説明する. 5.1 同次座標と射影変換 1. 同次座標 直交座標系の座標 ( x, y, z ) 同次座標(homogeneous coordinate) ( x, y, z ,1) (W , X , Y , Z ) X Y x , y , W W z Z W W=0の場合,(0,X,Y,Z)を[X,Y,Z]方向の 無限遠点を表すものとする. 同次座標による変換行列 CGの最も基本概念の1つに同次座標がある. 同次座標が必要な背景 平行移動,回転,スケーリング変換を一貫した方法で実現したい.すべて 行列の乗算で実現できれば都合がよい. 平行移動の変換式は行列の乗算ではなく,行列の和となっている. 同次座標を用いれば,変換の処理を数学的に統一できる. 同次座標とは,n次元空間の点を(n+1)の座標で表す.(n+1)番目 の座標はw座標とよぶ. たとえば,3次元空間の点(x,y,z)を(x,y,z,1)で書き直せば,点(x, y,z)の同次座標となる. 同次座標 3次元空間 ( x, y, z ) ( x, y, z,1) x y z x y z ( , , ) ( , , ,1) ( x, y, z, w) w w w w w w 5.1 同次座標と射影変換 2. 射影変換 同次座標(W,X,Y,Z)の空間を,射影空間(projective space)という. (W , X , Y , Z ) (W ' , X ' , Y ', Z ' ) [W ' , X ' , Y ', Z ' ][W , X , Y , Z ] [ A] この変換のことを,射影変換(projective transformation)という. W’=Wの場合,特に,アフィン変換(affine transformation)という. 5.2 投影変換 1. 投影の一般式 B( x, y, z ) y OP OE EB x , y, z , xe ye ze x xe 投影面をxy平面とすると,z’=0であるから , , , P( x , y , z ) z 0 x z , ze ( z ze ) 0 ze z ze xe z ze x x xe ( x xe ) z ze , E( xe , ye , ze ) ye z z e y y ye ( y ye ) z ze , y ye z ze 5.2 投影変換 2. 射影変換による表現 同次座標で考える. 任意の点B 視点E 投影像の点P (W , X , Y , Z ) (We , X e , Ye , Z e ) x X /W , y Y /W , z Z /W xe X e / We , ye Ye / We , ze Z e / We (W ' , X ' , Y ' , Z ' ) x , X ' / W ' , y , Y ' / W ' , z , Z ' / W ' x , X ' / W ' ( Z X e Z e X ) /( ZWe Z eW ) y , Y ' / W ' ( Z Ye Z eY ) /( ZWe Z eW ) Z’=0であるから,上式を行列表現すると W ' X' Y' 0 Z e 0 0 Z 0 e ' Z W X Y Z 0 0 Ze We X e Ye 0 0 0 0 5.2 投影変換 2. 射影変換による表現 透視投影(perspective projection)と平行投影(parallel projection) 投影面 投影中心 投影線 透視投影 投影中心が 無限遠 平行投影 5.3 平行投影 投影方向 z軸方向,投影面 xy平面 空間内の点B(x,y,z),平行投影された点P(x’,y’,z’) x , y, z , 1 x y 1 0 z 1 0 0 0 1 0 0 0 0 0 0 0 0 0 1 W ' X' Y' Z ' W X Y We X e Ye 0, Z e 0 W W ' Z eW , X ' Z e X , Y ' Z eY , Z ' 0 ' X' Y' Z ' W X Y Z e 0 Z 0 0 0 Ze 0 0 0 0 Ze 0 0 0 0 0 x , X ' / W ' Z e X / Z eW x y , Y ' / W ' Z eY / Z eW y z , Z ' / W ' 0 / Z eW 0 Z e 0 Z 0 We 0 0 Ze 0 0 Ze Xe Ye 0 0 0 0 5.4 透視投影 視点 E(0,0,h),投影面 xy平面,空間内の点 B(x,y,z),投影された点 P(x’,y’,z’) W ' X' Y' Z ' W X Y Z e 0 Z 0 We 0 0 Ze 0 0 Ze Xe Ye 0 0 0 0 W ' X' Y' Z ' W We 1 W ' WZ e ZWe X ' XZe ZX e Y ' YZe ZY Z' 0 xe X e / We 0 ye Ye / We 0 ze Z e / We h X e 0, Ye 0, Z e hWe X Y 0 h 0 0 h 0 Z 0 0 h 0 0 1 0 0 0 0
© Copyright 2025 ExpyDoc