计算两个数字openGL之间的角度

时间:2013-01-27 16:12:55

标签: opengl angle

result 这就是结果应该看起来的结果。问题是,我怎样才能计算出必须旋转每个棱镜的角度(我有绘制单个棱镜的功能 - 棱镜和梯形的高度是已知的)?

3 个答案:

答案 0 :(得分:1)

在这个例子中,你有6个棱镜,所以你可以将棱镜旋转60度,但是所有时间都不一样。因此,尝试使用数学公式来计算角度。 让我们举个例子。 你有一个line (x1,y1,z1) to (x2,y2,z2)如果你想围绕z轴旋转它,那么就像这样计算角度。

inverse of tan (p/b) where p = y2-y1 and b = x2 -x1

给出绕z轴的旋转角度。

现在,围绕y轴旋转:

p=z2-z1 and b=x2-x1

再次,围绕x轴旋转:

p=y2-y1 and b=z2-z1

答案 1 :(得分:0)

您希望将完整的旋转细分为6个部分。所以你的角度是360/6 = 60度。

答案 2 :(得分:0)

你有6个棱镜可以完成360度环路,所以从它的对称性来看,你应该将每个棱镜旋转60度(即π/ 3)