我通过安排较小的立方体制作了一个魔方。现在我想对它应用动画。为此,我选择使用Rotate类并设置旋转角度和旋转轴,如下所示
ar[12].setRotationAxis(Rotate.X_AXIS);//The array elements refer to the small cubes which make up the Rubik's cube.These elements represent the left face.
ar[13].setRotationAxis(Rotate.X_AXIS);
ar[14].setRotationAxis(Rotate.X_AXIS);
ar[15].setRotationAxis(Rotate.X_AXIS);
Rotate rotation1 = new Rotate(90);
rotation1.setAxis(Rotate.X_AXIS);
然后我将旋转应用为动画,就像这样
Timeline timeline = new Timeline(
new KeyFrame(Duration.seconds(2), new KeyValue(ar[12].rotateProperty(), 90)),
new KeyFrame(Duration.seconds(2), new KeyValue(ar[13].rotateProperty(), 90)),
new KeyFrame(Duration.seconds(2), new KeyValue(ar[14].rotateProperty(), 90)),
new KeyFrame(Duration.seconds(2), new KeyValue(ar[15].rotateProperty(), 90)));
timeline.play();
但是有了这个,我得到了结果 this。 据我所知,我对每个立方体都得this,但我对每个立方体的要求是立方体必须围绕它们的边缘旋转90度。我怎样才能做到这一点?另外一个问题是,只需点击一下鼠标,动画就不会再次出现。我该如何解决这个问题?