我有一个长度为2f的圆柱体,以及用户给出的RotX和RotZ的数据 . 我也知道我的圆柱体的“底部”位于(0,0,0)(形成“底部”的圆的中心)
我需要的是计算在上面一行暴露数据的“顶部”点(另一端的圆心) .
在我的第二张图像中,A点计算如下(sin(zAngle),cos(zAngle),sin(xAngle),其中zAngle = PI / 4(α角)和xAngle = 0 .
点B计算为(sin(xAngle),cos(xAngle),sin(zAngle)),xAngle = PI / 4(β角)和zAngle = 0;
C点是圆柱体的"top",xAngle = PI / 4且zAngle = PI / 4 .
我需要找到一个算法来确定任何给定xAngle和zAngle的"top"点 .
如果有人能帮助我,我会非常感激 .
1 回答
在你的轮换之前,顶部是2f *(0,1,0) .
将圆柱绕z轴旋转角度α后,顶部为2f *(sin alpha,cos alpha,0) .
如果你现在围绕x轴旋转圆柱β角,则顶部变为2f *(sin alpha,cos alpha * cos beta,cos alpha * sin beta) .