在Eigen 的 Transform 类的文档中,有两个签名几乎相同的成员函数:
void computeRotationScaling(RotationMatrixType*, ScalingMatrixType*) const
void computeScalingRotation(ScalingMatrixType*, RotationMatrixType*) const
两个函数都有相同的文档(乘法顺序rotation * scaling
在两个函数中)。
将变换的线性部分分解为乘积旋转 x 缩放,缩放不一定是正的。
如果任一指针为零,则跳过相应的计算。
这是在 SVD 模块中定义的。
它们之间有什么区别?