请用javafx实现一条线段绕其一端旋转。
时间: 2023-11-28 11:51:32 浏览: 24
以下是一个简单的 JavaFX 应用程序,该程序演示了如何实现一条线段绕其一端旋转的效果:
```java
import javafx.animation.Animation;
import javafx.animation.RotateTransition;
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.layout.Pane;
import javafx.scene.paint.Color;
import javafx.scene.shape.Line;
import javafx.stage.Stage;
import javafx.util.Duration;
public class LineRotation extends Application {
@Override
public void start(Stage primaryStage) {
// 创建一条线段,并设置其起点和终点
Line line = new Line(100, 100, 200, 100);
line.setStroke(Color.BLACK);
line.setStrokeWidth(5);
// 创建一个 Pane,并将线段添加到 Pane 中
Pane root = new Pane();
root.getChildren().add(line);
// 创建一个 RotateTransition 对象,设置旋转中心、旋转角度、持续时间等属性
RotateTransition rt = new RotateTransition(Duration.seconds(2), line);
rt.setByAngle(360);
rt.setCycleCount(Animation.INDEFINITE);
rt.setAxis(Line.Z_AXIS);
rt.setPivotX(100);
rt.setPivotY(100);
// 启动旋转动画
rt.play();
// 创建一个 Scene,并将 Pane 添加到 Scene 中
Scene scene = new Scene(root, 300, 200);
// 设置 Stage 的 Scene,并显示 Stage
primaryStage.setScene(scene);
primaryStage.show();
}
public static void main(String[] args) {
launch(args);
}
}
```
在上面的代码中,我们首先创建了一条线段,并将其添加到一个 Pane 中。然后,我们创建了一个 RotateTransition 对象,并将线段作为其参数。在 RotateTransition 对象中,我们设置了旋转中心、旋转角度、持续时间等属性,并启动了旋转动画。最后,我们将 Pane 添加到一个 Scene 中,并将 Scene 设置为 Stage 的 Scene,然后显示 Stage。
运行程序后,你应该能够看到一条线段在其一端绕着一个圆圈旋转的效果。