跳过正文

图形学-6

·130 字· loading · loading ·
Masterlong
作者
Masterlong
熬夜,但是世界之夜
目录
计算机图形学 - 这篇文章属于一个选集。
§ 6: 本文

变换和观察
#


坐标体系
#

针对一组基向量,线性表出空间中的一个位置元素,例如: $v=2v_1+3v_2-4v_3$

$v=[2,3,-4]^T$(通常使用列向量的表示)

变换坐标系: 对于一对基向量:

$[u_1,u_2,u_3]=M^T[v_1,v_2,v_3]$

则在v坐标系下的向量$α$在u下是$β=M^Tα$


标架(frame)表示
#

在仿射空间中,通过基向量+原点形成~

何为齐次坐标?

齐次坐标:给普通的向量空间增加一个元素,用于区分表达向量表示的是一个方向还是一

四维齐次坐标:

$v=[α_1,α_2,α_3,0],p=[β_1,β_2,β_3,1]$


优点:使得所有基本变换可以通过变换矩阵描述

思想:把n维集合问题变换到n+1维

形式上:用n+1维向量表示n维向量

$笛卡尔坐标(x,y)→齐次坐标(xh,yh,h),(h≠0,规格化齐次坐标下h=1)$


Frame的变换

假设两个frame:$P(P_0,v_1,v_2,v_3), Q(Q_0,u_1,u_2,u_3)$

对应一个4x4变换矩阵$M$:

$$ \left( \begin{matrix} γ_{11}&γ_{12}&γ_{13}&0\\ γ_{21}&γ_{22}&γ_{23}&0\\ γ_{31}&γ_{32}&γ_{33}&0\\ γ_{41}&γ_{42}&γ_{43}&1\\ \end{matrix} \right) $$

(自由度只有12个)


标准变换
#

何为变换:

映射点/向量到别的点/向量

  • 旋转(刚性)

    • $$ R_z(θ)=\left( \begin{matrix} cosθ&-sinθ&0&0\\ sinθ&cosθ&0&0\\ 0&0&1&0\\ 0&0&0&1\\ \end{matrix} \right) $$
    • $$ R_x(θ)=\left( \begin{matrix} 1&0&0&0\\ 0&cosθ&-sinθ&0\\ 0&sinθ&cosθ&0\\ 0&0&0&1\\ \end{matrix} \right) $$
    • $$ R_y(θ)=\left( \begin{matrix} cosθ&0&sinθ&0\\ 0&1&0&0\\ -sinθ&0&cosθ&0\\ 0&0&0&1\\ \end{matrix} \right) $$
    • $$

  • 平移(刚性)

    • $P'=P+d$

    • 齐次坐标:$P=TP$

    • $$ T=\left( \begin{matrix} 1&0&0&d_x\\ 0&1&0&d_y\\ 0&0&1&d_z\\ 0&0&0&1\\ \end{matrix} \right) $$
  • 缩放

    • $$ S=\left( \begin{matrix} s_x&0&0&0\\ 0&s_y&0&0\\ 0&0&s_z&0\\ 0&0&0&1\\ \end{matrix} \right) $$
  • 镜像

    • 缩放符号变号
  • 斜切

    • $略$

串联变换
#

$M=M_1M_2M_3...$

$P'=M_n...M_2M_1P_0$,其中$M_n$被称为CTM

只需要按正确的变换步骤累乘变换矩阵得到串联矩阵$M$,不断作用于初始$P_0$即可

基于列向量,需要左乘

逆变换
#

平移 easy

旋转矩阵是正交矩阵

缩放 倒数


绕任意方向的旋转

先把方向绕到z轴,再绕z旋转,再把方向绕回来


应用变换
#

实例变换/模型变换

  • M=TRS

    • S FOR SCALE

    • R FOR ORIENT

    • T FOR LOCATE

计算机图形学 - 这篇文章属于一个选集。
§ 6: 本文

相关文章

图形学-5
·60 字· loading · loading
图形学-4
·47 字· loading · loading
图形学-3
·37 字· loading · loading