Xem mẫu

  1. 3D Transformations Các phép biến đổi 3 chiều 1
  2. Translation - Tịnh tiến  x' 1 0 0 tx   x  y ' 0 1 0 t y   y  = ⋅   z '  0 0 1 tz   z         1  0 0 0 1  1  (x’,y’,z’) (x,y,z) T=(tx,ty,tz) 2
  3. Scaling – Biến đổi tỉ lệ  x'  s x 0 0 0  x   y '  0 sy 0 0  y   = ⋅   z'  0 0 sz 0  z        1  0 0 0 1  1  3
  4. Rotation - Quay Trong 2D, phép quay theo chiều ngược chiều kim đồng hồ trong mặt phẳng Oxy. Trong 3D, chúng ta có thể quay trên nhiều mặt phẳng: Oxy, Oxz, Oyz, Mặt phẳng bất kì. Chúng ta có thể xác định mặt phẳng quay bằng vetơ vuông góc với nó. Trục z, Trục y, Trục x, Trục bất kì. 4
  5. Quay quanh trục tọa độ  x' cos θ − sin θ 0 0  x   y '  sin θ cosθ 0 0  y   = ⋅   z'  0 0 1 0  z        1  0 0 0 1  1   x'  cosθ 0 sin θ 0  x   y '  0 1 0 0  y   = ⋅   z '  − sin θ 0 cosθ 0  z        1  0 0 0 1  1   x '  1 0 0 0  x   y ' 0 cosθ − sin θ 0  y   = ⋅   z '  0 sin θ cosθ 0  z         1  0 0 0 1  1  5
  6. Quay quanh trục bất kì Kí hiệu : R(rx, ry, rz, θ ) Phép quay xác định bằng một vetơ và góc quay: Trục quay đi qua gốc tọa độ và một điểm r Phép quay ngược chiều kim đồng hồ theo trục quay 6
  7. Các bước thực hiện phép quay B1. Quay trục quay để nó nằm trên một trục tọa độ (Oz). B2. Áp dụng phép quay góc θ theo trục tọa độ. B3. Áp dụng phép quay ngược để trở về trục ban đầu. 7
  8. Phân tích Đầu tiên, xác định vectơ đơn vị cùng hướng với trục quay. rx , ry , rz u= rx , ry , rz Bây giờ ta thực hiện phép quay quanh vectơ đơn vị. 8
  9. Bước 1 Quay trục quay u để nó nằm trên một trục tọa độ Oz. u’ = u= u = α β uz= uz= u”= u”= 9
  10. Phân tích Bước 1 1. Quay u trở thành u” nằm trên mặt phẳng Oxz : Quay u theo trục Ox. Ta có thể bỏ thành phần x của u mà không mất tính tổng quát: u = a, b, c u′ ⋅ u z c 1 0 0 0 cos α = = u′ u z d 0 c −b 0 u ′ = 0, b, c  d d  b 0 b c 0 u′ = d = b 2 + c 2 sin α =  d d  d 0 0  0 1  2. Quay u” trở thành uz nằm trên trục Oz : Quay u’’ theo trục u′′ ⋅ u z d 0 − a 0 Oy. cos β = =d   u ′′ = a,0, d u′′ u z 0 1 0 0 u′′ = 1 a 0 d 0 sin β = −a   0 0 0 1 10
  11. Bước 2 Quay theo trục Oz góc θ cosθ − sin θ 0 0  sin θ cosθ 0 0    0 0 1 0    0 0 0 1 11
  12. Tổng hợp Kết quả của phép quay quanh trục bất kì P’ = R(ux,–α ) · R(uy,–β ) · R(uz,θ ) · R(uy,β ) · R(ux,α ) · P 12
  13. Quay quanh trục bất kì Khi trục quay không đi qua gốc tọa độ : trục quay được xác định bởi 2 điểm. Tịnh tiến về gốc tọa độ Quay quanh trục qua gốc tọa độ Tịnh tiến ngược lại vị trí ban đầu 13