import javafx.animation.Interpolator;
import javafx.animation.RotateTransition;
import javafx.application.Application;
import javafx.scene.Group;
import javafx.scene.Scene;
import javafx.scene.paint.Color;
import javafx.scene.shape.Circle;
import javafx.scene.shape.Rectangle;
import javafx.stage.Stage;
import javafx.util.Duration;public class SwingingPeaShooter extends Application {
@Override
public void start(Stage primaryStage) {
// 创建一个Group作为根节点
Group root = new Group();// 创建一个圆形表示豌豆射手的头部
Circle head = new Circle(50, Color.GREEN);
head.setCenterX(100);
head.setCenterY(100);// 创建一个矩形表示豌豆射手的身体
Rectangle body = new Rectangle(60, 80, Color.GREEN);
body.setX(80);
body.setY(150);// 添加头部和身体到根节点
root.getChildren().addAll(head, body);// 创建一个左右摇摆的动画
RotateTransition rotateTransition = new RotateTransition(Duration.seconds(1), root);
rotateTransition.setFromAngle(-30);
rotateTransition.setToAngle(30);
rotateTransition.setInterpolator(Interpolator.LINEAR);
rotateTransition.setAutoReverse(true);
rotateTransition.setCycleCount(RotateTransition.INDEFINITE);
rotateTransition.play();// 创建一个Scene,并将根节点添加到场景中
Scene scene = new Scene(root, 300, 300, Color.WHITE);// 设置舞台的标题和场景
primaryStage.setTitle("Swinging Pea Shooter");
primaryStage.setScene(scene);// 显示舞台
primaryStage.show();
}public static void main(String[] args) {
launch(args);
}
}
豌豆射手摇起来
本文介绍了如何使用JavaFX库在SwingingPeaShooter应用程序中实现一个圆形头部和矩形身体的豌豆射手,通过RotateTransition类创建一个左右摇摆的动画效果。
1258

被折叠的 条评论
为什么被折叠?



