【发布时间】:2009-10-26 10:50:03
【问题描述】:
假设我在 3D 空间中有两个点(a 和 b)和一个称为 n 的固定轴/单位向量。
我想创建一个旋转矩阵,以最小化点 a(未旋转)和旋转点 b 之间的欧几里得距离。
例如:
Q := matrix_from_axis_and_angle (n, alpha);
find the unknown alpha that minimizes sqrt(|a - b*Q|)
顺便说一句 - 如果使用单位四元数可以更轻松地表达解决方案/算法,请继续使用它们。我只是使用矩阵来表达我的问题,因为它们使用更广泛。
哦 - 我知道有一些退化的情况(a 或 b 完全符合 n ect。)这些可以忽略。我只是在寻找可以计算单个解决方案的情况。
【问题讨论】:
-
假设所有的旋转都是关于原点的,如果你旋转 b 所以它落在向量上到 a 这是否不能确保最小(或最大)距离?
-
或者我们假设 n 是固定的?
-
n 已修复...不幸的是我无法更改它。否则就很简单了。