本文概述
- 属性
- 构造函数
过渡的速度取决于周期数, 过渡将在指定的持续时间内进行。
在JavaFX中, TranslateTransition由类javafx.animation.TranslateTransition表示。我们需要实例化此类, 以便将适当的Translate Transition应用于对象。
属性 下表描述了该类的属性以及setter方法。
属性 | 描述 | 设置方法 |
---|---|---|
byX | 这是一个双精度类型的属性。它代表平移停止时递增的X坐标值。 | setByX(double value) |
byY | 这是一个双精度类型的属性。它表示平移停止时递增的Y坐标值。 | setByY(double value) |
byZ | 这是一个双精度类型的属性。它代表平移停止处的增量Z坐标值。 | setByZ(double value) |
duration | 这是Duration类的对象类型属性。它表示翻译过渡的持续时间。 | setDuration(Duration value) |
fromX | 这是一个双精度类型的属性。它表示开始转换的X坐标值。 | setFromX(double value) |
fromY | 这是一个双精度类型的属性。它表示开始平移的Y坐标值。这是一个双精度类型的属性。它表示开始转换的X坐标值。 | setFromY(double value) |
fromZ | 这是一个双精度类型的属性。它表示从其开始平移的Z坐标值。 | setFromZ(double value) |
node | 这是Node类的对象类型属性。它代表要在其上应用比例转换的节点。 | setNode(Node node) |
toX | 这是一个双精度类型的属性。它表示平移过渡的停止X坐标值。 | setToX(double value) |
toY | 这是一个双精度类型的属性。它表示平移过渡的停止Y坐标值。 | setToY(double value) |
toZ | 这是一个双精度类型的属性。它表示比例转换的停止Z坐标值。 | setToZ(double value) |
- public TranslateTransition():使用默认参数创建TranslateTransition的新实例。
- public TranslateTransition(Duration duration):使用指定的持续时间创建TranslateTransition的新实例。
- public TranslateTransition(Duration duration, Node node):使用指定的持续时间和节点创建Translate Transition的新实例。
在下面的示例中, 我们制作了一个圆, 将自己在X方向平移400。
package application;
import javafx.animation.TranslateTransition;
import javafx.application.Application;
import javafx.scene.Group;
import javafx.scene.Scene;
import javafx.scene.paint.Color;
import javafx.scene.shape.Circle;
import javafx.stage.Stage;
import javafx.util.Duration;
public class Translate_Transition extends Application{ @Override
public void start(Stage primaryStage) throws Exception {
// TODO Auto-generated method stub
//Creating the circle
Circle cir = new Circle(50, 100, 50);
//setting color and stroke of the cirlce
cir.setFill(Color.RED);
cir.setStroke(Color.BLACK);
//Instantiating TranslateTransition class
TranslateTransition translate = new TranslateTransition();
//shifting the X coordinate of the centre of the circle by 400
translate.setByX(400);
//setting the duration for the Translate transition
translate.setDuration(Duration.millis(1000));
//setting cycle count for the Translate transition
translate.setCycleCount(500);
//the transition will set to be auto reversed by setting this to true
translate.setAutoReverse(true);
//setting Circle as the node onto which the transition will be applied
translate.setNode(cir);
//playing the transition
translate.play();
//Configuring Group and Scene
Group root = new Group();
root.getChildren().addAll(cir);
Scene scene = new Scene(root, 500, 200, Color.WHEAT);
primaryStage.setScene(scene);
primaryStage.setTitle("Translate Transition example");
primaryStage.show();
}
public static void main(String[] args) {
launch(args);
}}
【JavaFX平移过渡】输出:
文章图片
推荐阅读
- JavaFX UI控件
- JavaFX转换
- JavaFX TextField
- JavaFX工具提示
- JavaFX StrokeTransition
- 其他|甲骨文谷歌继续打官司(美最高法院同意复审 Java API 版权诉讼案)
- 资讯|Java 8被抛弃,甲骨文份额萎缩超一半,2022年Java生态报告出炉
- 编程语言|甲骨文Java 14来啦!
- Android Studio Build APK没有报错,但是Generate signed apk报错