6章 3次元形状を変形・移動させる

6章
3次元形状を変形・移動させる
形状を平行移動や回転移動させて位置を変えた
り,拡大・縮小して変形させる方法を説明する.
6.1 2次元幾何変換
1.点の幾何変換
点P(x,y,z)の幾何変換
の一般式
x
,

y , 1 x
 a c 0
y 1  b d 0
m n 1
(1)平行移動
x
,

y , 1 x
y
 1 0 0
y 1  0 1 0
m n 1
P’
n
P
0
m
x
6.1 2次元幾何変換
1.点の幾何変換
(2) 拡大・縮小・反転(スケール変換)
x
,

y , 1 x
y
 a 0 0
y 1  0 d 0
 0 0 1
a=1,d=-1のとき,上下反転
a=-1,d=1のとき,左右反転
a=-1,d=-1のとき,上下かつ左右反転
y
P 2’
dy
P
y
x
x
ax
x
P3’
P1’
6.1 2次元幾何変換
1.点の幾何変換
(3)回転
x
,

y , 1 x
 cos
y 1  sin 
 0
sin 
0
0
1
cos
0
θは反時計周りにとった
角度
x ,  x cos   y sin 
y
y ,  xsin   y cos 
P’
θ
0
P
x
6.1 2次元幾何変換
2.図形の幾何変換
y
C(x3,y3)
A(x1,y1)
B(x2,y2)
 x1,
 ,
 x2
 x3,

y1, 1  x1
 
y2, 1   x2
y3, 1  x3
y1
y2
y3
1

1
1

 変換

マトリクス




x
(1)平行移動 (例)A(1,1),B(3,1),C(2,2)をx方向に3,y方向に2だけ平行移動
三角形A’B’C’
三角形ABC
4 3 1 1 1 1 1 0 0
6 3 1  3 1 1 0 1 0

 


5 4 1 2 2 1 3 2 1
平行移動の変換マトリクス
6.1 2次元幾何変換
2.図形の幾何変換
(2)拡大 (例)前出の三角形をx方向に3倍,y方向に2倍だけ拡大
3 2 1 1 1 1 3 0 0
9 2 1  3 1 1 0 2 0

 


6 4 1 2 2 1 0 0 1
(6,4)
(2,2)
(3,2)
(1,1)
(2,1)
(9,2)
6.2 3次元幾何変換
x
点P(x,y,z)の3次元幾何変換
の一般式
,
y,

z , 1  x
(2)拡大・縮小・反転
X方向にa倍,y方向にe倍,
z方向にi倍だけ拡大・縮小
(1)平行移動
X方向にl(エル),y方向にm,
z方向にnだけ移動
x
,
y,

z , 1  x
y
1 0
0 1
z 1 
0 0

l m
0
0
1
n
y
 a d g 0
b e h 0

z 1 
 c f i 0


 l m n 1
0
0
0

1
x
,
y,

z , 1  x
y
a
0
z 1 
0

0
0
e
0
0
0
0
i
0
0
0
0

1
6.2 3次元幾何変換
(3)回転
X軸まわり:
y軸まわり:
z軸まわり:
x
x
x
,
,
,
y,
y,
y,
z,
z,
z,

1  x

1  x

1  x
y
1
0
z 1 
0

0
0
cos x
 sin  x
0
cos y
 0
1 
 sin  y

 0
y
z
y
 cos z
 sin 
z
z 1 
 0

 0
0
1
0
0
0
sin  x
cos x
0
0
0
0

1
 sin  y
0
cos y
0
0
0
0

1
sin  z
cos z
0
0
0
0
1
0
0
0
0

1