Quaternion Axis-Angle Representation
定义一个旋转轴和旋转角,得到一个 Delta Quaternion,将这个 Delta 乘在任意方向向量上即可应用旋转。
意义:让一条方向向量绕任意轴旋转。
Unity C# 举例:
c
// 1. Create the rotation
// Rotate 90 degree around the world Y axis.
var delta = Quaternion.AngleAxis(90f, new Vector3(0, 1, 0));
// 2. Apply the rotation to a vector
var originalDirection = new Vector3(1, 0, 0);
var newDirection = delta * originalDirection;Houdini VEX 举例:
c
vector4 delta = quaternion(1.57, set(0,1,0));
vector originalDirection = set(-1,0,0);
vector newDirection = qrotate(aaa, a);