当前位置: 代码迷 >> 综合 >> Compute Graphics:GAMES101 Note
  详细解决方案

Compute Graphics:GAMES101 Note

热度:52   发布时间:2024-03-08 01:36:47.0

Lecture 2

点乘在数学上的作用

  1. Find angle between two vectors
  2. Find projection of one vector on another

点乘在CG上的作用

  1. Measure how close two directions are
  2. Decompose a vector(分解一个向量到投影方向以及法线方向)
  3. Determine forward / backward(判断两个向量指向同一方向还是相反方向)

叉乘

a?×a?=0?\vec{a}\times\vec{a}=\vec{0}a ×a =0

坐标系计算叉乘
a?×b?=(xayaza)×(xbybzb)=(yazb?ybzazaxb?xazbxayb?yaxb)\vec{a}\times\vec{b}=\begin{pmatrix}x_a\\ y_a\\ z_a\end{pmatrix}\times\begin{pmatrix}x_b\\ y_b\\ z_b\end{pmatrix}=\begin{pmatrix}y_az_b-y_bz_a\\ z_ax_b-x_az_b\\ x_ay_b-y_ax_b\end{pmatrix} a ×b =???xa?ya?za?????×???xb?yb?zb?????=???ya?zb??yb?za?za?xb??xa?zb?xa?yb??ya?xb?????

叉乘在数学上的作用

  1. 已知两个向量构成一个平面,可以找到这个平面的法线,构造3维右手坐标系(右手坐标系满足 x?×y?=z?\vec{x}\times\vec{y}=\vec{z}x ×y ?=z

叉乘在CG上的作用

  1. Determine left / right(判断xoy平面上的两个向量a?,b?\vec{a}, \vec{b}a ,b 谁在左边谁在右边,方法是计算叉乘,根据叉乘结果与z?\vec{z}z 同向或反向进行判断)
  2. Determine inside / outside(见课件例子,这个像是老板的一个面试题,求一个不规则图形的面积)
  相关解决方案