我尝试在具有多个轴
的meshviewer上执行旋转Meshviewer.setRotateAxis (Rotate.X_Axis);
Meshviewer.setRotate(100);
Meshviewer.setRotateAxis(Rotate.Y_Axis);
Meshviewer.setRotate (100);
它应该在x和y方向上旋转,但它只能在y方向上旋转。 怎么了?
[写在智能手机上]
答案 0 :(得分:1)
rotateAxis
是一个与其他任何属性相同的属性。如果你做了
someObject.setValue(5);
someObject.setValue(3);
你会(我假设)期待
someObject.getValue();
评估为3
,而不是3
和5
的某种组合。因此,在您发布的代码之后,MeshViewer
的旋转轴是y轴,因此它围绕该轴旋转。
如果要对多个轴执行旋转组合,可以将变换添加到变换列表中:
Rotate rotateAboutX = new Rotate(100, Rotate.X_AXIS);
Rotate rotateAboutY = new Rotate(100, Rotate.Y_AXIS);
MeshViewer.getTransforms().addAll(rotateAboutX, rotateAboutY);