java.lang.Object
javafx.scene.transform.Transform
javafx.scene.transform.Rotate
- All Implemented Interfaces:
Cloneable
,EventTarget
This class represents an
Affine
object that rotates coordinates
around an anchor point. This operation is equivalent to translating the
coordinates so that the anchor point is at the origin (S1), then rotating them
about the new origin (S2), and finally translating so that the
intermediate origin is restored to the coordinates of the original
anchor point (S3).
The matrix representing the rotation transformation around an axis (x,y,z)
by an angle t
is as follows:
[ cos(t) -sin(t) 0 x-x*cos(t)+y*sin(t) ] [ sin(t) cos(t) 0 y-x*sin(t)-y*cos(t) ] [ 0 0 1 z ]
For example, to rotate a text 30 degrees around the Z-axis at anchor point of (50,30):
Text text = new Text("This is a test");
text.setX(10);
text.setY(50);
text.setFont(new Font(20));
text.getTransforms().add(new Rotate(30, 50, 30));
- Since:
- JavaFX 2.0
-
Property Summary
TypePropertyDescriptionfinal DoubleProperty
Defines the angle of rotation measured in degrees.final ObjectProperty
<Point3D> Defines the axis of rotation at the pivot point.final DoubleProperty
Defines the X coordinate of the rotation pivot point.final DoubleProperty
Defines the Y coordinate of the rotation pivot point.final DoubleProperty
Defines the Z coordinate of the rotation pivot point.Properties declared in class javafx.scene.transform.Transform
identity, onTransformChanged, type2D
-
Field Summary
-
Constructor Summary
ConstructorDescriptionRotate()
Creates a default Rotate transform (identity).Rotate
(double angle) Creates a two-dimensional Rotate transform.Rotate
(double angle, double pivotX, double pivotY) Creates a two-dimensional Rotate transform with pivot.Rotate
(double angle, double pivotX, double pivotY, double pivotZ) Creates a simple Rotate transform with three-dimensional pivot.Creates a three-dimensional Rotate transform with pivot.Creates a three-dimensional Rotate transform. -
Method Summary
Modifier and TypeMethodDescriptionfinal DoubleProperty
Defines the angle of rotation measured in degrees.final ObjectProperty
<Point3D> Defines the axis of rotation at the pivot point.clone()
Returns a deep copy of this transform.final double
getAngle()
Gets the value of theangle
property.final Point3D
getAxis()
Gets the value of theaxis
property.final double
Gets the value of thepivotX
property.final double
Gets the value of thepivotY
property.final double
Gets the value of thepivotZ
property.inverseDeltaTransform
(double x, double y) Transforms the relative magnitude vector by the inverse of this transform.inverseDeltaTransform
(double x, double y, double z) Transforms the relative magnitude vector by the inverse of this transform.inverseTransform
(double x, double y) Transforms the specified point by the inverse of this transform.inverseTransform
(double x, double y, double z) Transforms the specified point by the inverse of this transform.final DoubleProperty
Defines the X coordinate of the rotation pivot point.final DoubleProperty
Defines the Y coordinate of the rotation pivot point.final DoubleProperty
Defines the Z coordinate of the rotation pivot point.final void
setAngle
(double value) Sets the value of theangle
property.final void
Sets the value of theaxis
property.final void
setPivotX
(double value) Sets the value of thepivotX
property.final void
setPivotY
(double value) Sets the value of thepivotY
property.final void
setPivotZ
(double value) Sets the value of thepivotZ
property.toString()
Returns a string representation of thisRotate
object.Methods declared in class javafx.scene.transform.Transform
addEventFilter, addEventHandler, affine, affine, buildEventDispatchChain, column, column, createConcatenation, createInverse, deltaTransform, deltaTransform, deltaTransform, deltaTransform, determinant, getElement, getMxx, getMxy, getMxz, getMyx, getMyy, getMyz, getMzx, getMzy, getMzz, getOnTransformChanged, getTx, getTy, getTz, identityProperty, inverseDeltaTransform, inverseDeltaTransform, inverseTransform, inverseTransform, inverseTransform, inverseTransform2DPoints, inverseTransform3DPoints, isIdentity, isType2D, onTransformChangedProperty, removeEventFilter, removeEventHandler, rotate, row, row, scale, scale, setOnTransformChanged, shear, shear, similarTo, toArray, toArray, transform, transform, transform, transform, transform, transform2DPoints, transform3DPoints, transformChanged, translate, type2DProperty
-
Property Details
-
angle
Defines the angle of rotation measured in degrees.- See Also:
-
pivotX
Defines the X coordinate of the rotation pivot point.- Default value:
- 0.0
- See Also:
-
pivotY
Defines the Y coordinate of the rotation pivot point.- Default value:
- 0.0
- See Also:
-
pivotZ
Defines the Z coordinate of the rotation pivot point.- Default value:
- 0.0
- See Also:
-
axis
Defines the axis of rotation at the pivot point.- See Also:
-
-
Field Details
-
X_AXIS
Specifies the X-axis as the axis of rotation. -
Y_AXIS
Specifies the Y-axis as the axis of rotation. -
Z_AXIS
Specifies the Z-axis as the axis of rotation.
-
-
Constructor Details
-
Rotate
public Rotate()Creates a default Rotate transform (identity). -
Rotate
public Rotate(double angle) Creates a two-dimensional Rotate transform. The pivot point is set to (0,0)- Parameters:
angle
- the angle of rotation measured in degrees
-
Rotate
Creates a three-dimensional Rotate transform. The pivot point is set to (0,0,0)- Parameters:
angle
- the angle of rotation measured in degreesaxis
- the axis of rotation
-
Rotate
public Rotate(double angle, double pivotX, double pivotY) Creates a two-dimensional Rotate transform with pivot.- Parameters:
angle
- the angle of rotation measured in degreespivotX
- the X coordinate of the rotation pivot pointpivotY
- the Y coordinate of the rotation pivot point
-
Rotate
public Rotate(double angle, double pivotX, double pivotY, double pivotZ) Creates a simple Rotate transform with three-dimensional pivot.- Parameters:
angle
- the angle of rotation measured in degreespivotX
- the X coordinate of the rotation pivot pointpivotY
- the Y coordinate of the rotation pivot pointpivotZ
- the Z coordinate of the rotation pivot point
-
Rotate
Creates a three-dimensional Rotate transform with pivot.- Parameters:
angle
- the angle of rotation measured in degreespivotX
- the X coordinate of the rotation pivot pointpivotY
- the Y coordinate of the rotation pivot pointpivotZ
- the Z coordinate of the rotation pivot pointaxis
- the axis of rotation
-
-
Method Details
-
setAngle
public final void setAngle(double value) Sets the value of theangle
property.- Property description:
- Defines the angle of rotation measured in degrees.
- Parameters:
value
- the value for theangle
property- See Also:
-
getAngle
public final double getAngle()Gets the value of theangle
property.- Property description:
- Defines the angle of rotation measured in degrees.
- Returns:
- the value of the
angle
property - See Also:
-
angleProperty
Defines the angle of rotation measured in degrees.- Returns:
- the
angle
property - See Also:
-
setPivotX
public final void setPivotX(double value) Sets the value of thepivotX
property.- Property description:
- Defines the X coordinate of the rotation pivot point.
- Default value:
- 0.0
- Parameters:
value
- the value for thepivotX
property- See Also:
-
getPivotX
public final double getPivotX()Gets the value of thepivotX
property.- Property description:
- Defines the X coordinate of the rotation pivot point.
- Default value:
- 0.0
- Returns:
- the value of the
pivotX
property - See Also:
-
pivotXProperty
Defines the X coordinate of the rotation pivot point.- Default value:
- 0.0
- Returns:
- the
pivotX
property - See Also:
-
setPivotY
public final void setPivotY(double value) Sets the value of thepivotY
property.- Property description:
- Defines the Y coordinate of the rotation pivot point.
- Default value:
- 0.0
- Parameters:
value
- the value for thepivotY
property- See Also:
-
getPivotY
public final double getPivotY()Gets the value of thepivotY
property.- Property description:
- Defines the Y coordinate of the rotation pivot point.
- Default value:
- 0.0
- Returns:
- the value of the
pivotY
property - See Also:
-
pivotYProperty
Defines the Y coordinate of the rotation pivot point.- Default value:
- 0.0
- Returns:
- the
pivotY
property - See Also:
-
setPivotZ
public final void setPivotZ(double value) Sets the value of thepivotZ
property.- Property description:
- Defines the Z coordinate of the rotation pivot point.
- Default value:
- 0.0
- Parameters:
value
- the value for thepivotZ
property- See Also:
-
getPivotZ
public final double getPivotZ()Gets the value of thepivotZ
property.- Property description:
- Defines the Z coordinate of the rotation pivot point.
- Default value:
- 0.0
- Returns:
- the value of the
pivotZ
property - See Also:
-
pivotZProperty
Defines the Z coordinate of the rotation pivot point.- Default value:
- 0.0
- Returns:
- the
pivotZ
property - See Also:
-
setAxis
Sets the value of theaxis
property.- Property description:
- Defines the axis of rotation at the pivot point.
- Parameters:
value
- the value for theaxis
property- See Also:
-
getAxis
Gets the value of theaxis
property.- Property description:
- Defines the axis of rotation at the pivot point.
- Returns:
- the value of the
axis
property - See Also:
-
axisProperty
Defines the axis of rotation at the pivot point.- Returns:
- the
axis
property - See Also:
-
clone
Description copied from class:Transform
Returns a deep copy of this transform. -
inverseTransform
Description copied from class:Transform
Transforms the specified point by the inverse of this transform. This method can be used only for 2D transforms.- Overrides:
inverseTransform
in classTransform
- Parameters:
x
- the X coordinate of the pointy
- the Y coordinate of the point- Returns:
- the inversely transformed point
-
inverseTransform
Description copied from class:Transform
Transforms the specified point by the inverse of this transform.- Overrides:
inverseTransform
in classTransform
- Parameters:
x
- the X coordinate of the pointy
- the Y coordinate of the pointz
- the Z coordinate of the point- Returns:
- the inversely transformed point
-
inverseDeltaTransform
Description copied from class:Transform
Transforms the relative magnitude vector by the inverse of this transform. The vector is transformed without applying the translation components of the affine transformation matrix. This method can be used only for a 2D transform.- Overrides:
inverseDeltaTransform
in classTransform
- Parameters:
x
- vector magnitude in the direction of the X axisy
- vector magnitude in the direction of the Y axis- Returns:
- the inversely transformed relative magnitude vector represented
by a
Point2D
instance
-
inverseDeltaTransform
Description copied from class:Transform
Transforms the relative magnitude vector by the inverse of this transform. The vector is transformed without applying the translation components of the affine transformation matrix.- Overrides:
inverseDeltaTransform
in classTransform
- Parameters:
x
- vector magnitude in the direction of the X axisy
- vector magnitude in the direction of the Y axisz
- vector magnitude in the direction of the Z axis- Returns:
- the inversely transformed relative magnitude vector represented
by a
Point3D
instance
-
toString
Returns a string representation of thisRotate
object.
-