1

给定一个平面(它的法线),并给定位于该平面上的 2 个点 K1、K2。我需要在该平面上以给定的角度 alpha 围绕 K1 旋转点 K2。如何计算K2的新坐标?

4

2 回答 2

2

好吧,不知道你在用什么语言编码,一般的答案是这样的:

//get some distances
distx = K2.x - K1.x
disty = K2.y - K1.y

//use Pythagorean theorem to find radius
radius = Math.sqrt(distx*distx + disty*disty)

//set new location using your angle, alpha
K2.x = K1.x + radius*cos(alpha)
K2.y = K1.y + radius*sin(alpha)
于 2012-02-17T23:53:33.970 回答
1

根据定义,旋转是在具有固定枢轴点的轴上。把它想象成在笔下旋转一张纸,只在适合你的时候改变纸和笔的排列。

旋转单个轴以创建您希望旋转的轴。您需要该点与原点的距离来通过轴的移动来保持它的位置。您还需要必要的角度来实现您的新轴。测量终端侧时保持一致。

接下来,您需要一个位于该轴上的枢轴点。这是你的起源素数。由于它在固定轴上旋转,您不再需要担心 z 轴,因为它不能来回滑动。使用正弦和余弦、距离和您的旋转角度来查找新坐标。

最后将轴旋转回原来的位置,这样你就有了 (x',y',z')

轴角、旋转公式和欧拉角。推荐给初学者最后一个。

于 2013-08-24T07:19:32.440 回答