В the documentation of Eigen's Transform class, есть две функции-члены с почти одинаковыми сигнатурами:В чем разница между computeScalingRotation и computeRotationScaling
void computeRotationScaling(RotationMatrixType*, ScalingMatrixType*) const
void computeScalingRotation(ScalingMatrixType*, RotationMatrixType*) const
Обе функции имеют одинаковую документацию (порядок умножения в обеих функциях rotation * scaling
).
разлагает линейную часть преобразования как масштабирование вращения изделия x, причем масштабирование необязательно является положительным.
Если любой указатель равен нулю, соответствующее вычисление пропускается.
Это определено в модуле SVD.
В чем разница между ними?
Это опечатка в документе, онлайн-документ будет автоматически обновляться в ближайшее время. Второй - это, конечно, «масштабирование x вращения». – ggael