本文概述
- 属性
- 构造函数
在下图中, 缩放变换应用于多维数据集以扩展其大小。
文章图片
属性 下表描述了该类的属性。
属性 | 描述 | 设置方法 |
---|---|---|
pivotX | 这是一个双精度类型的属性。它表示围绕其缩放的枢轴点的x坐标。 | setPivotX(double value) |
pivotY | 这是一个双精度类型的属性。它代表围绕其缩放的枢轴点的y坐标。 | setPivotY(double value) |
pivotZ | 这是一个双精度类型的属性。它表示围绕其缩放的枢轴点的z坐标。 | setPivotZ(double value) |
x | 这是一个双精度类型的属性。它代表对象沿X轴缩放的因子。 | setX(double value) |
y | 这是一个双精度类型的属性。它代表对象沿Y轴缩放的因子。 | setY(double value) |
z | 这是一个双精度类型的属性。它代表对象沿Z轴缩放的因子。 | setZ(double value) |
- public Sc??ale():使用默认参数创建新实例。
- public Sc??ale(double X, double Y):创建2D Scale的新实例。
- public Sc??ale(double X, double Y, double Z):创建3D比例尺的新实例。
- public Sc??ale(double X, double Y, double axisX, double axisY):使用指定的轴心坐标创建2D比例尺的新实例。
- public Sc??ale(双X, 双Y, 双Z, 双PivotX, 双PivotY, 双PivotZ):使用指定的枢轴坐标创建3D比例尺的新实例。
以下示例说明了缩放转换的实现。在这里, 我们创建了两个具有相同尺寸和颜色的圆。将缩放转换应用于第二个圆, 以使其在X-Y方向上均按因子1.5缩放。将缩放变换应用到第二个圆后, 它将获得第一个圆的1.5。
package application;
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.text.Font;
import javafx.scene.text.FontPosture;
import javafx.scene.text.FontWeight;
import javafx.scene.text.Text;
import javafx.scene.transform.Scale;
import javafx.stage.Stage;
public class ScaleExample extends Application{
@Override
public void start(Stage primaryStage) throws Exception {
// TODO Auto-generated method stub
//Creating the two circles
Circle cir1=new Circle(230, 200, 100);
Circle cir2=new Circle(550, 200, 100);
//setting the color and stroke for the circles
cir1.setFill(Color.YELLOW);
cir1.setStroke(Color.BLACK);
cir2.setFill(Color.YELLOW);
cir2.setStroke(Color.BLACK);
// creating the text nodes for the identification
Text text1 = new Text("Original Circle");
Text text2 = new Text("Scaled with factor 1.5 in XY");
//setting the properties for the text nodes
text1.setX(150);
text1.setY(400);
text2.setX(400);
text2.setY(400);
text1.setFont(Font.font("calibri", FontWeight.BLACK, FontPosture.ITALIC, 20));
text2.setFont(Font.font("calibri", FontWeight.BLACK, FontPosture.ITALIC, 20));
//creating a 2D scale
Scale scale = new Scale();
// setting the X-y factors for the scale
scale.setX(1.5);
scale.setY(1.5);
//setting the pivot points along which the scaling is done
scale.setPivotX(550);
scale.setPivotY(200);
//applying transformations on the 2nd circle
cir2.getTransforms().add(scale);
Group root = new Group();
root.getChildren().addAll(cir1, cir2, text1, text2);
Scene scene = new Scene(root, 800, 450);
primaryStage.setScene(scene);
primaryStage.setTitle("Scale Example");
primaryStage.show();
}
public static void main(String[] args) {
launch(args);
}
}
文章图片
推荐阅读
- JavaFX单选按钮
- JavaFX缩放过渡
- JavaFX旋转
- JavaFX旋转过渡
- JavaFX矩形
- JavaFX反射效果
- JavaFX Quad曲线
- win10系统放大镜技巧在啥地方里打开?
- 用KMSpico怎样激活Win10系统专业版?