선형변환의 정의
3차원 벡터 하나를 받아서 3차원 벡터 하나를 산출하는 함수 t(v)에서,
다음의 조건을 만족할 때, t를 가리켜 선형변환이라고 부른다.
- t(u+v) = t(u) + t(v)
- t(ku) = kt(u)
여기서 u와 v는 벡터고, k는 스칼라이다!
예를 들어서, 함수 t(x,y,z)=(x², y², z²) 일때,
스칼라 k=2와 u=(1,2,3)에 대해 선형변환이 아니다.
왜냐하면 t(2u) = t(2,4,6) = (4,16,36)이지만
2t(u) = 2(1,4,9) = (2,8,18) 이기 때문에
위에 조건에서 2번을 만족하지 않기 때문이다.
그리고 t가 선형변환이면,
t(au+bv+cw) = t(au+(bv+cw))
= at(u) + t(bv+cw)
= at(u) + bt(v) + ct(w)
를 만족한다.
선형 변환의 행렬 표현
u= (x,y,z)이고, 각 벡터 i,j,k가 표준기저벡터 라고할때,
다음이 성립한다. (위에서 언급했듯이 t(au+bv+cw) = at(u) + bt(v) + ct(w)이기 때문에!)
t(u) = t(xi+yj+zk) = xt(i) + yt(j) + zt(k)
그리고 이를 벡터행렬 곱셈 형태로 표기하면
따라서 t(i) = (A11,A12,A13), t(j) = (A21,A22,A23), t(A31,A32,A33)
이고 이러한 행렬 A를 선형변환 t의 행렬표현이라고 부른다.
비례
비례는 물체의 크기를 바꾸는 효과를 낸다.
비례 변환은 다음과 같이 정의된다.
S(x,y,z) = (sxx, syy, szz)
그리고 S는 선형변환이고, 따라서 행렬 표현이 존재한다.
위에서 했던 것처럼 S를 표준기저벡터들 각각에 적용하고,
결과로 나오는 벡터들을 행으로 하는 행렬을 만들면 된다!
따라서 S(i) = (sx,0,0)
S(j) = (0,sy,0)
S(k) = (0,0,sz)
이고 이를 행렬로 나타내면
$$ S=\begin{bmatrix}
s_{x} &0 & 0\\
0& s_{y} & 0 \\
0 & 0& s_{z} \\
\end{bmatrix} $$
로 나타낼 수 있고 이 행렬을 비례행렬이라고 부른다.
회전
책에서는 임의의 축 n에 대한 회전 변환을 설명하는데..
사실 내 머리로는 이해할 수 없어서..^___^
좀 찾아봤더니 z축에 대해 회전변환을 설명한 글은 좀 이해가 가서..
책에 나온 회전변환 대신에 z축에 대한 회전변환을 정리하려 한다!
z축을 기준으로 벡터 v를 회전 시키려고 할때,
그림과 같이 나타낼 수 있다!
그리고 vx, vy를 다음과 같이 삼각함수로 나타낼 수 있다.
vx = lcos(θ)
vy = lsin(θ)
그리고 벡터v를 α만큼 회전시킨 벡터 w를 구하려고 하면,
다음과 같이 표현할 수 있다.
wx = lcos(θ+α)
wy = lsin(θ+α)
이것을 삼각함수의 덧셈정리을 사용해 전개하면..
wx = lcosθcosα - lsinθsinα
wy = lsinθcosα + lcosθsinα
이므로 치환하면
wx = vxcosα - vysinα
wy = vxsinα + vycosα로 나타낼 수 있다!
즉 z축을 기준으로 α만큼 회전시키는 변환은..
T(vx,vy,vz) = (vxcosα - vysinα, vxsinα + vycosα, vz)
로 나타낼 수 있다!
그리고 위에서 했었던 것처럼 이걸 행렬로 표현하면..
$$ R_{z} = \begin{bmatrix}
cos\alpha & sin\alpha & 0 \\
-sin\alpha & cos\alpha & 0 \\
0 & 0 & 1 \\
\end{bmatrix} $$
로 표현할 수 있다...
임의의 n축에 대한 회전변환도
다음에 이해가 가면 정리해보는걸로..
^______^
참고:
https://luv-n-interest.tistory.com/753
'컴퓨터 그래픽스' 카테고리의 다른 글
3. 변환 : 변환들의 합성 (0) | 2023.05.05 |
---|---|
3. 변환 : 아핀변환 (0) | 2023.05.05 |
2. 행렬 대수 : 행렬의 역 (0) | 2023.03.31 |
2. 벡터 대수 : 행렬식과 딸림행렬 (0) | 2023.03.31 |
2. 행렬 대수 : 행렬의 전치와 단위행렬 (0) | 2023.03.30 |