• 2DAffineTransformation
–WhatisTransformation?
–LinearTransformation,Translation
–AffineTransformation
•Composing Transformations&Homogeneous Coordinates
–ComposingTransformations
–HomogeneousCoordinates
•3DAffineTransformations
–3DCartesianCoordinateSystem
–Transformationsin3D
#2D linear transformation
-uniform scale
–non-uniformscale
–rotation
–shear
–reflection
#Generating eye rays
-orthographic : plane point만 계산하면 됨
-perspective : distance가 중요함=카메라의 focal length초점거리
##Reference Frame & Composite
Transformations
# Coordinate System & Reference Frame
-coordinate system : 점의 위치를 고유하게 표현, mathematical 개념
-reference frame : 좌표 시스템 + physical reference points (좌표 시스템을 고유하게 고정하기 위해), physical 개념, motion의 상태와 관련
위 2가지는 자주 섞여서 사용됨
# Global & Local Coordinate System(or Frame)
-global coordinate system (global frame) = world coordinate system, fixed coordinate system
R to L, left multiplication
-local coordinate system (local frame) : moving object
L to R, right multiplication
# Interpretation of Composite Transformations
#Affine Geometry: Vectors & Points
-vector space : vectors, related operations(덧셈, 곱셈) 포함 / no points
-affine space : vectors, related operations(difference between two points, addition of a vector to a point), point도 포함
- Homogeneous Coordinates로 3D에서 point는 (x, y, z, 1), vector는 (x, y, z, 0)
scalar*vector = vector
1*point = point
0*point = vector
c*point = undefined(c가 0, 1아닐 경우)
point + point = undefined
point - point = vector
point+-vector = point
vector+-vector = vector
-vector는 offsets point는 location 갖고 있음 / point는 traslation평행이동 가능한데 vector는 X
#Affine Frame : vector들 집합이랑 point o로 정의
set of vectors : associate vector space
-3D에서 vector 3개(x, y, z), point 1개(origin)로 정의
-global frame : standard basis vector 나타냄 = 단위벡터
#Rigid motion : translation이랑 rotation으로만 만들어짐
#Abstract version of hardware pipeline
1)application : points, line segments, triangles / curves, polygons, curved regions
2)vertex processing
-backward approach to viewing : ray tracing에 사용한 방법, pixel부터 시작 / forward approach 3D에서의 point부터 시작
matrix transformation 사용
-modeling matrix Mm :
local 좌표계에 있던 객체를 world 좌표계로 transform하는 것
-camera matrix = viewing matrix Mv:
camera transformation : word space에서 camera space=view space=eye space로
>OpenGL은 modeling matrix랑 camera matrix섞음 M = Mv*Mm
-projection 원근법 :
항상 eye좌표계에서 일어남, eye point at 0은 plane perpendicular수직의 z
orthographic case 정사영 : z 사용X
parallel projection : oblique - shear하고 z 버리기
perspective case : scale diminish with z + increase with d
windowing transform : 먼저 원점으로 이동 > viewport 사이즈와 동일하게 scale > viewport 위치로 이동
*window는 보여질 부분 정의, viewport는 어디에 표시될지 정의
viewport transformation
3D에서
#orthographic projection :
-z view direction 가짐 / left, right, top, bottom, near, far
view volume이랑 canonical view volume이랑 mapping 3D windowing transformation
객체의 local 좌표부터 시작 > world 좌표로 transform(modeling transform Mm) > eye 좌표로(camera) > Orthographic projection > viewport transform
clipping plane : near plane(view plane에 평행, view plane이랑 viewpoint 사이에 있는 건 render되지 않음), far plane(view plane에 평행, 뒤에 있는 건 render되지X) > camera 뒤에 있는 건 제거함, constrain the range of depths
#perspective projection
#영단어
perpendicular 직각의, 수직의
Euclidean 유클리드, 기하학의
diagonal matric 대각선 행렬
orthonormal matrix 직교 행렬
translation 평행이동
axe 축
cartesian 데카르트의
parametric equation 매개 방정식
focal length 초점 거리