跳转至

1.四元数

重点: - 本质是缩放+变换。模长保持为1,目的是保持缩放不变。 - 左乘的本质可以理解为逆时针旋转,右乘的本质是顺时针旋转。左乘右乘相同的四元数不会对答案有影响。 - 四元数可以\(w+ai+bj+ck\) 可以用向量抽象为\(w+v_1\)。 - 四元数的性质:不满足交换律,易插值,无万向锁,平方和为1 - 角度转四元数(以60度为例子)? - 复数平面 sin(60)+cos (60)i - 四元数则需要四元数三明治,即\(q·o·q^-1\)。 - 旋转轴:其中q里面的向量v相当于选定的轴,目标点要根据此轴进行旋转。 - 旋转四元数:q=sin(60/2)+cos(60/2)(ai+bj+ck);注意角度只有一半 - 共轭向量q-1 = sin(60/2)+cos(60/2)(ai+bj+ck); - 计算目的:旋转相同,但是可以消除在旋转轴的缩放,避免变为超维球体TT 几何思想: - 复数平面:如1+0.5i。(1,i,-1,-i)如何通过(-1)投影成直线?旋转本质是(1)发生什么变化?模长如何计算? - 球平面:通过-1的轴投影的结果是直线?没有通过的投影是圆。ij = 1。 - 四元数超维球面:1在哪里?i,j,k的旋转尊重右手法则。

欧拉角

固定三个轴,万向锁问题(自由度),不易插值

变换矩阵

缩放+旋转+位移。 显然因为旋转矩阵的存在插值并不好做。

2.点与三角形交互

  • 叉积法
  • 重心坐标法
  • 内角和法

3.射线相交

  • 射线与球体相交
  • 射线与AABB相交(甚至要求代码)

4.简单概率论(点名雷火)

  • 古典概型
  • 排列组合