本文概述
- 属性
- 构造函数
【JavaFX平移】下图将圆从一个位置平移到另一位置。圆的中心坐标P(x, y)转换为P(x1, y1)。 X坐标以因子Tx改变, 而Y坐标以因子Ty改变。
文章图片
属性 下表描述了该类的属性以及setter方法。
属性 | 描述 | 设置方法 |
---|---|---|
X | 这是一个双精度类型的属性。它表示对象在X方向上平移的距离。 | setX(double value) |
Y | 这是一个双精度类型的属性。它表示对象沿Y方向平移的距离。 | setY(double value) |
Z | 这是一个双精度类型的属性。它表示对象在Z方向上平移的距离。 | setZ(double value) |
- public Translate():使用默认参数创建Translate类的新实例。
- public Translate(double X, double Y):创建具有指定(X, Y)坐标的新实例。
- public Translate(double X, double Y, double Z):创建具有指定(x, y, z)坐标的新实例。
以下示例说明了矩形上的平移变换。在这里, 我们创建了两个具有相同坐标的矩形。第一个矩形用红色填充, 第二个矩形用绿色填充。通过将转换对象的属性设置为适当的值, 可以将绿色矩形移动到其他位置。
package application;
import javafx.application.Application;
import javafx.scene.Group;
import javafx.scene.Scene;
import javafx.scene.paint.Color;
import javafx.scene.shape.Rectangle;
import javafx.scene.transform.Translate;
import javafx.stage.Stage;
public class TranslateExample extends Application{
@Override
public void start(Stage primaryStage) throws Exception {
// TODO Auto-generated method stub
//creating the Rectangles with the same coordinates
Rectangle rect1 = new Rectangle(20, 20, 200, 150);
Rectangle rect2 = new Rectangle(20, 20, 200, 150);
//setting rectangle properties
rect1.setFill(Color.RED);
rect1.setStroke(Color.BLACK);
rect1.setStrokeWidth(5);
rect2.setFill(Color.GREEN);
rect2.setStroke(Color.BLACK);
rect2.setStrokeWidth(5);
//Instantiating the Translate class
Translate translate = new Translate();
//setting the properties of the translate object
translate.setX(200);
translate.setY(200);
translate.setZ(200);
//applying transformation to the second rectangle
rect2.getTransforms().addAll(translate);
Group root = new Group();
root.getChildren().addAll(rect1, rect2);
Scene scene = new Scene(root, 500, 400);
primaryStage.setScene(scene);
primaryStage.setTitle("Translation Example");
primaryStage.show();
}
public static void main(String[] args) {
launch(args);
}
}
文章图片
推荐阅读
- JavaFX教程介绍
- JavaFX UI控件
- JavaFX平移过渡
- JavaFX转换
- JavaFX TextField
- JavaFX工具提示
- JavaFX StrokeTransition
- 其他|甲骨文谷歌继续打官司(美最高法院同意复审 Java API 版权诉讼案)
- 资讯|Java 8被抛弃,甲骨文份额萎缩超一半,2022年Java生态报告出炉