如何计算圆柱体"顶部"圆心,给定旋转角度?

Mih*_*nca 8 java math 3d geometry java-3d

我有一个长度为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点是圆柱体的"顶部",xAngle = PI/4,zAngle = PI/4 .
我需要找到一个算法来确定对于任何给定xAngle和zAngle"顶"点.

如果有人能帮助我,我会非常感激.

RotZ和RotX解释道 例

nas*_*rer 2

在旋转之前,顶部位于 2f*(0,1,0)。

将圆柱体绕 z 轴旋转角度 alpha 后,顶部位于 2f*(sin alpha, cos alpha, 0) 处。

如果现在围绕 x 轴将圆柱体旋转角度 beta,顶部将变为 2f*(sin alpha, cos alpha*cos beta, cos alpha*sin beta)。