JavaFX 旋转

2024 年 8 月 29 日 | 阅读 2 分钟

旋转可以定义为将对象旋转一定角度 θ(theta)的过程。 在 JavaFX 中,javafx.scene.transform.Rotate 类表示旋转变换。

该图说明了旋转变换。 图中所示的矩形沿 Y 轴旋转了角度 θ。由于旋转,矩形的坐标会发生变化,而边长保持不变。


JavaFX Rotation

性质

该类的属性以及 setter 方法在下表中描述。

属性描述设置器方法
角度这是一个双精度类型属性。 它表示以度为单位的旋转角度。setAngle(double value)
这是一个对象类型属性。 它表示旋转轴。setAxis(Point3D value)
pivotX这是一个双精度类型属性。 它表示旋转枢轴点的 X 坐标。setPivotX(double value)
pivotY这是一个双精度类型属性。 它表示旋转枢轴点的 Y 坐标。setPivotY(double value)
pivotZ这是一个双精度类型属性。 它表示旋转枢轴点的 Z 坐标。setPivotZ(double value)

构造函数

该类包含六个构造函数。

  1. public Rotate() : 使用默认参数创建旋转变换。
  2. public Rotate(double angle) : 使用指定的以度为单位的角度创建旋转变换。 枢轴点设置为 (0,0)。
  3. public Rotate(double angle, Point3D axis) : 使用指定的变换创建 3D 旋转变换。 枢轴点设置为 (0,0,0)。
  4. public Rotate(double angle, double pivotX, double pivotY) : 使用指定的角度和枢轴坐标 (x,y) 创建旋转变换。
  5. public Rotate(double angle, double pivotX, double pivotY, double pivotZ) : 使用指定的角度和 3D 枢轴坐标 (x,y,z) 创建旋转变换。
  6. public Rotate(double angle, double pivotX, double pivotY, double pivotZ,Point3D Axis) : 使用指定的角度和枢轴坐标 (x,y,z) 创建 3D 旋转变换。

示例

以下示例说明了旋转变换的实现。 在这里,我们创建了两个矩形。 一个用青柠绿色填充,另一个用深灰色填充。 深灰色矩形沿枢轴点坐标 (100,300) 旋转了 30 度。


JavaFX Rotation
下一主题JavaFX 缩放