APIdia Launch Partner
Top Description Inners Fields Constructors Methods
javafx.scene.transform

public Class Rotate

extends Transform
Class Inheritance
Imports
javafx.beans.property.DoubleProperty, .DoublePropertyBase, .ObjectProperty, .ObjectPropertyBase, javafx.geometry.Point3D, .Point2D, com.sun.javafx.geom.transform.Affine3D, .BaseTransform

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

Nested and Inner Type Summary

Modifier and TypeClass and Description
private static class
Rotate.MatrixCache

Matrix cache.

Field Summary

Modifier and TypeField and Description
private DoubleProperty
angle

Defines the angle of rotation measured in degrees.

private ObjectProperty<Point3D>
axis

Defines the axis of rotation at the pivot point.

private Rotate.MatrixCache
cache

Avoids lot of repeated computation.

private Rotate.MatrixCache
inverseCache

Hides javafx.scene.transform.Transform.inverseCache.

Avoids lot of repeated computation.
private DoubleProperty
pivotX

Defines the X coordinate of the rotation pivot point.

private DoubleProperty
pivotY

Defines the Y coordinate of the rotation pivot point.

private DoubleProperty
pivotZ

Defines the Z coordinate of the rotation pivot point.

public static final Point3D
X_AXIS

Specifies the X-axis as the axis of rotation.

public static final Point3D
Y_AXIS

Specifies the Y-axis as the axis of rotation.

public static final Point3D
Z_AXIS

Specifies the Z-axis as the axis of rotation.

Constructor Summary

AccessConstructor and Description
public
Rotate()

Creates a default Rotate transform (identity).

public
Rotate(double
the angle of rotation measured in degrees
angle
)

Creates a two-dimensional Rotate transform.

public
Rotate(double
the angle of rotation measured in degrees
angle
,
Point3D
the axis of rotation
axis
)

Creates a three-dimensional Rotate transform.

public
Rotate(double
the angle of rotation measured in degrees
angle
,
double
the X coordinate of the rotation pivot point
pivotX
,
double
the Y coordinate of the rotation pivot point
pivotY
)

Creates a two-dimensional Rotate transform with pivot.

public
Rotate(double
the angle of rotation measured in degrees
angle
,
double
the X coordinate of the rotation pivot point
pivotX
,
double
the Y coordinate of the rotation pivot point
pivotY
,
double
the Z coordinate of the rotation pivot point
pivotZ
)

Creates a simple Rotate transform with three-dimensional pivot.

public
Rotate(double
the angle of rotation measured in degrees
angle
,
double
the X coordinate of the rotation pivot point
pivotX
,
double
the Y coordinate of the rotation pivot point
pivotY
,
double
the Z coordinate of the rotation pivot point
pivotZ
,
Point3D
the axis of rotation
axis
)

Creates a three-dimensional Rotate transform with pivot.

Method Summary

Modifier and TypeMethod and Description
public final DoubleProperty
pack-priv void
appendTo(Affine a)

Overrides javafx.scene.transform.Transform.appendTo.

Visitor from Affine class which provides an efficient append operation for the subclasses.

pack-priv void
apply(final Affine3D trans)

Implements abstract javafx.scene.transform.Transform.apply.

public final ObjectProperty<Point3D>
public Rotate
clone()

Overrides javafx.scene.transform.Transform.clone.

Returns a deep copy of this transform.

pack-priv boolean
computeIs2D()

Overrides javafx.scene.transform.Transform.computeIs2D.

Computes if this transform is currently a 2D transform (has no effect in the direction of Z axis).

pack-priv boolean
computeIsIdentity()

Overrides javafx.scene.transform.Transform.computeIsIdentity.

Computes if this transform is currently an identity (has no effect in any direction).

public Transform
createConcatenation(Transform transform)

Overrides javafx.scene.transform.Transform.createConcatenation.

Returns the concatenation of this transform and the specified transform.

public Transform
createInverse()

Overrides javafx.scene.transform.Transform.createInverse.

Returns the inverse transform of this transform.

public Point2D
deltaTransform(double x, double y)

Overrides javafx.scene.transform.Transform.deltaTransform.

Transforms the relative magnitude vector by this transform.

public Point3D
deltaTransform(double x, double y, double z)

Overrides javafx.scene.transform.Transform.deltaTransform.

Transforms the relative magnitude vector by this transform.

pack-priv BaseTransform
pack-priv void
fill2DArray(double[] array)

Overrides javafx.scene.transform.Transform.fill2DArray.

Core of the toArray implementation for the 2D case.

pack-priv void
fill3DArray(double[] array)

Overrides javafx.scene.transform.Transform.fill3DArray.

Core of the toArray implementation for the 3D case.

public final double
public final Point3D
public double
getMxx()

Overrides javafx.scene.transform.Transform.getMxx.

Gets the X coordinate scaling element of the 3x4 matrix.

public double
getMxy()

Overrides javafx.scene.transform.Transform.getMxy.

Gets the XY coordinate element of the 3x4 matrix.

public double
getMxz()

Overrides javafx.scene.transform.Transform.getMxz.

Gets the XZ coordinate element of the 3x4 matrix.

public double
getMyx()

Overrides javafx.scene.transform.Transform.getMyx.

Gets the YX coordinate element of the 3x4 matrix.

public double
getMyy()

Overrides javafx.scene.transform.Transform.getMyy.

Gets the Y coordinate scaling element of the 3x4 matrix.

public double
getMyz()

Overrides javafx.scene.transform.Transform.getMyz.

Gets the YZ coordinate element of the 3x4 matrix.

public double
getMzx()

Overrides javafx.scene.transform.Transform.getMzx.

Gets the ZX coordinate element of the 3x4 matrix.

public double
getMzy()

Overrides javafx.scene.transform.Transform.getMzy.

Gets the ZY coordinate element of the 3x4 matrix.

public double
getMzz()

Overrides javafx.scene.transform.Transform.getMzz.

Gets the Z coordinate scaling element of the 3x4 matrix.

public final double
public final double
public final double
public double
getTx()

Overrides javafx.scene.transform.Transform.getTx.

Gets the X coordinate translation element of the 3x4 matrix.

public double
getTy()

Overrides javafx.scene.transform.Transform.getTy.

Gets the Y coordinate translation element of the 3x4 matrix.

public double
getTz()

Overrides javafx.scene.transform.Transform.getTz.

Gets the Z coordinate translation element of the 3x4 matrix.

public Point2D
inverseDeltaTransform(double x, double y)

Overrides javafx.scene.transform.Transform.inverseDeltaTransform.

Transforms the relative magnitude vector by the inverse of this transform.

public Point3D
inverseDeltaTransform(double x, double y, double z)

Overrides javafx.scene.transform.Transform.inverseDeltaTransform.

Transforms the relative magnitude vector by the inverse of this transform.

public Point2D
inverseTransform(double x, double y)

Overrides javafx.scene.transform.Transform.inverseTransform.

Transforms the specified point by the inverse of this transform.

public Point3D
inverseTransform(double x, double y, double z)

Overrides javafx.scene.transform.Transform.inverseTransform.

Transforms the specified point by the inverse of this transform.

pack-priv void
inverseTransform2DPointsImpl(double[] srcPts, int srcOff, double[] dstPts, int dstOff, int numPts)

Overrides javafx.scene.transform.Transform.inverseTransform2DPointsImpl.

Core of the inverseTransform2DPoints method.

pack-priv void
inverseTransform3DPointsImpl(double[] srcPts, int srcOff, double[] dstPts, int dstOff, int numPts)

Overrides javafx.scene.transform.Transform.inverseTransform3DPointsImpl.

Core of the inverseTransform3DPoints method.

public final DoubleProperty
public final DoubleProperty
public final DoubleProperty
pack-priv void
prependTo(Affine a)

Overrides javafx.scene.transform.Transform.prependTo.

Visitor from Affine class which provides an efficient prepend operation for the subclasses.

public final void
setAngle(double value)

public final void
public final void
setPivotX(double value)

public final void
setPivotY(double value)

public final void
setPivotZ(double value)

public String

Returns:

a string representation of this Rotate object.
toString
()

Overrides java.lang.Object.toString.

Returns a string representation of this Rotate object.

public Point2D
transform(double x, double y)

Overrides javafx.scene.transform.Transform.transform.

Transforms the specified point by this transform.

public Point3D
transform(double x, double y, double z)

Overrides javafx.scene.transform.Transform.transform.

Transforms the specified point by this transform.

pack-priv void
transform2DPointsImpl(double[] srcPts, int srcOff, double[] dstPts, int dstOff, int numPts)

Overrides javafx.scene.transform.Transform.transform2DPointsImpl.

Core of the transform2DPoints method.

pack-priv void
transform3DPointsImpl(double[] srcPts, int srcOff, double[] dstPts, int dstOff, int numPts)

Overrides javafx.scene.transform.Transform.transform3DPointsImpl.

Core of the transform3DPoints method.

protected void
transformChanged()

Overrides javafx.scene.transform.Transform.transformChanged.

This method must be called by all transforms whenever any of their parameters changes.

private void
updateCache()

Updates the matrix cache

private void
updateInverseCache()

Updates the inverse matrix cache

pack-priv void
validate()

Overrides javafx.scene.transform.Transform.validate.

Needed for the proper delivery of the TransformChangedEvent.

Inherited from javafx.scene.transform.Transform:
addaddEventFilteraddEventHandleraffineaffinebuildEventDispatchChaincheckRequestedMATclearInverseCachecolumncolumncreateImmutableTransformcreateImmutableTransformcreateImmutableTransformcreateImmutableTransformdeltaTransformdeltaTransformdeterminantensureCanTransform2DPointgetElementgetOnTransformChangedidentityPropertyinverseDeltaTransforminverseDeltaTransforminverseTransforminverseTransforminverseTransforminverseTransform2DPointsinverseTransform3DPointsisIdentityisType2DonTransformChangedPropertyremoveremoveEventFilterremoveEventHandlerrotaterowrowscalescalesetOnTransformChangedshearshearsimilarTotoArraytoArraytransformtransformtransformtransform2DPointstransform3DPointstranslatetype2DProperty

Field Detail

angleback to summary
private DoubleProperty angle

Defines the angle of rotation measured in degrees.

axisback to summary
private ObjectProperty<Point3D> axis

Defines the axis of rotation at the pivot point.

cacheback to summary
private Rotate.MatrixCache cache

Avoids lot of repeated computation.

See Also
MatrixCache
inverseCacheback to summary
private Rotate.MatrixCache inverseCache

Hides javafx.scene.transform.Transform.inverseCache.

Avoids lot of repeated computation.

See Also
MatrixCache
pivotXback to summary
private DoubleProperty pivotX

Defines the X coordinate of the rotation pivot point.

Default Value
0.0
pivotYback to summary
private DoubleProperty pivotY

Defines the Y coordinate of the rotation pivot point.

Default Value
0.0
pivotZback to summary
private DoubleProperty pivotZ

Defines the Z coordinate of the rotation pivot point.

Default Value
0.0
X_AXISback to summary
public static final Point3D X_AXIS

Specifies the X-axis as the axis of rotation.

Y_AXISback to summary
public static final Point3D Y_AXIS

Specifies the Y-axis as the axis of rotation.

Z_AXISback to summary
public static final Point3D Z_AXIS

Specifies the Z-axis as the axis of rotation.

Constructor Detail

Rotateback to summary
public Rotate()

Creates a default Rotate transform (identity).

Rotateback to summary
public Rotate(double angle)

Creates a two-dimensional Rotate transform. The pivot point is set to (0,0)

Parameters
angle:double

the angle of rotation measured in degrees

Rotateback to summary
public Rotate(double angle, Point3D axis)

Creates a three-dimensional Rotate transform. The pivot point is set to (0,0,0)

Parameters
angle:double

the angle of rotation measured in degrees

axis:Point3D

the axis of rotation

Rotateback to summary
public Rotate(double angle, double pivotX, double pivotY)

Creates a two-dimensional Rotate transform with pivot.

Parameters
angle:double

the angle of rotation measured in degrees

pivotX:double

the X coordinate of the rotation pivot point

pivotY:double

the Y coordinate of the rotation pivot point

Rotateback to summary
public Rotate(double angle, double pivotX, double pivotY, double pivotZ)

Creates a simple Rotate transform with three-dimensional pivot.

Parameters
angle:double

the angle of rotation measured in degrees

pivotX:double

the X coordinate of the rotation pivot point

pivotY:double

the Y coordinate of the rotation pivot point

pivotZ:double

the Z coordinate of the rotation pivot point

Rotateback to summary
public Rotate(double angle, double pivotX, double pivotY, double pivotZ, Point3D axis)

Creates a three-dimensional Rotate transform with pivot.

Parameters
angle:double

the angle of rotation measured in degrees

pivotX:double

the X coordinate of the rotation pivot point

pivotY:double

the Y coordinate of the rotation pivot point

pivotZ:double

the Z coordinate of the rotation pivot point

axis:Point3D

the axis of rotation

Method Detail

anglePropertyback to summary
public final DoubleProperty angleProperty()
appendToback to summary
pack-priv void appendTo(Affine a)

Overrides javafx.scene.transform.Transform.appendTo.

Doc from javafx.scene.transform.Transform.appendTo.

Visitor from Affine class which provides an efficient append operation for the subclasses.

Annotations
@Override
applyback to summary
pack-priv void apply(final Affine3D trans)

Implements abstract javafx.scene.transform.Transform.apply.

Annotations
@Override
axisPropertyback to summary
public final ObjectProperty<Point3D> axisProperty()
cloneback to summary
public Rotate clone()

Overrides javafx.scene.transform.Transform.clone.

Doc from javafx.scene.transform.Transform.clone.

Returns a deep copy of this transform.

Annotations
@Override
computeIs2Dback to summary
pack-priv boolean computeIs2D()

Overrides javafx.scene.transform.Transform.computeIs2D.

Doc from javafx.scene.transform.Transform.computeIs2D.

Computes if this transform is currently a 2D transform (has no effect in the direction of Z axis). Used by the subclasses to effectively provide value of the type2D property.

Annotations
@Override
computeIsIdentityback to summary
pack-priv boolean computeIsIdentity()

Overrides javafx.scene.transform.Transform.computeIsIdentity.

Doc from javafx.scene.transform.Transform.computeIsIdentity.

Computes if this transform is currently an identity (has no effect in any direction). Used by the subclasses to effectively provide value of the identity property.

Annotations
@Override
createConcatenationback to summary
public Transform createConcatenation(Transform transform)

Overrides javafx.scene.transform.Transform.createConcatenation.

Doc from javafx.scene.transform.Transform.createConcatenation.

Returns the concatenation of this transform and the specified transform. Applying the resulting transform to a node has the same effect as adding the two transforms to its getTransforms() list, this transform first and the specified transform second.

Annotations
@Override
createInverseback to summary
public Transform createInverse() throws NonInvertibleTransformException

Overrides javafx.scene.transform.Transform.createInverse.

Doc from javafx.scene.transform.Transform.createInverse.

Returns the inverse transform of this transform.

Annotations
@Override
Exceptions
NonInvertibleTransformException:
if this transform cannot be inverted
deltaTransformback to summary
public Point2D deltaTransform(double x, double y)

Overrides javafx.scene.transform.Transform.deltaTransform.

Doc from javafx.scene.transform.Transform.deltaTransform.

Transforms the relative magnitude vector by 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.

Annotations
@Override
deltaTransformback to summary
public Point3D deltaTransform(double x, double y, double z)

Overrides javafx.scene.transform.Transform.deltaTransform.

Doc from javafx.scene.transform.Transform.deltaTransform.

Transforms the relative magnitude vector by this transform. The vector is transformed without applying the translation components of the affine transformation matrix.

Annotations
@Override
deriveback to summary
pack-priv BaseTransform derive(BaseTransform trans)

Implements abstract javafx.scene.transform.Transform.derive.

Annotations
@Override
fill2DArrayback to summary
pack-priv void fill2DArray(double[] array)

Overrides javafx.scene.transform.Transform.fill2DArray.

Doc from javafx.scene.transform.Transform.fill2DArray.

Core of the toArray implementation for the 2D case. All of the checks has been made by the enclosing method as well as the constant elements filled, this method only fills the varying elements to the array. Used by subclasses to fill the elements efficiently.

Annotations
@Override
fill3DArrayback to summary
pack-priv void fill3DArray(double[] array)

Overrides javafx.scene.transform.Transform.fill3DArray.

Doc from javafx.scene.transform.Transform.fill3DArray.

Core of the toArray implementation for the 3D case. All of the checks has been made by the enclosing method as well as the constant elements filled, this method only fills the varying elements to the array. Used by subclasses to fill the elements efficiently.

Annotations
@Override
getAngleback to summary
public final double getAngle()
getAxisback to summary
public final Point3D getAxis()
getMxxback to summary
public double getMxx()

Overrides javafx.scene.transform.Transform.getMxx.

Doc from javafx.scene.transform.Transform.getMxx.

Gets the X coordinate scaling element of the 3x4 matrix.

Annotations
@Override
getMxyback to summary
public double getMxy()

Overrides javafx.scene.transform.Transform.getMxy.

Doc from javafx.scene.transform.Transform.getMxy.

Gets the XY coordinate element of the 3x4 matrix.

Annotations
@Override
getMxzback to summary
public double getMxz()

Overrides javafx.scene.transform.Transform.getMxz.

Doc from javafx.scene.transform.Transform.getMxz.

Gets the XZ coordinate element of the 3x4 matrix.

Annotations
@Override
getMyxback to summary
public double getMyx()

Overrides javafx.scene.transform.Transform.getMyx.

Doc from javafx.scene.transform.Transform.getMyx.

Gets the YX coordinate element of the 3x4 matrix.

Annotations
@Override
getMyyback to summary
public double getMyy()

Overrides javafx.scene.transform.Transform.getMyy.

Doc from javafx.scene.transform.Transform.getMyy.

Gets the Y coordinate scaling element of the 3x4 matrix.

Annotations
@Override
getMyzback to summary
public double getMyz()

Overrides javafx.scene.transform.Transform.getMyz.

Doc from javafx.scene.transform.Transform.getMyz.

Gets the YZ coordinate element of the 3x4 matrix.

Annotations
@Override
getMzxback to summary
public double getMzx()

Overrides javafx.scene.transform.Transform.getMzx.

Doc from javafx.scene.transform.Transform.getMzx.

Gets the ZX coordinate element of the 3x4 matrix.

Annotations
@Override
getMzyback to summary
public double getMzy()

Overrides javafx.scene.transform.Transform.getMzy.

Doc from javafx.scene.transform.Transform.getMzy.

Gets the ZY coordinate element of the 3x4 matrix.

Annotations
@Override
getMzzback to summary
public double getMzz()

Overrides javafx.scene.transform.Transform.getMzz.

Doc from javafx.scene.transform.Transform.getMzz.

Gets the Z coordinate scaling element of the 3x4 matrix.

Annotations
@Override
getPivotXback to summary
public final double getPivotX()
getPivotYback to summary
public final double getPivotY()
getPivotZback to summary
public final double getPivotZ()
getTxback to summary
public double getTx()

Overrides javafx.scene.transform.Transform.getTx.

Doc from javafx.scene.transform.Transform.getTx.

Gets the X coordinate translation element of the 3x4 matrix.

Annotations
@Override
getTyback to summary
public double getTy()

Overrides javafx.scene.transform.Transform.getTy.

Doc from javafx.scene.transform.Transform.getTy.

Gets the Y coordinate translation element of the 3x4 matrix.

Annotations
@Override
getTzback to summary
public double getTz()

Overrides javafx.scene.transform.Transform.getTz.

Doc from javafx.scene.transform.Transform.getTz.

Gets the Z coordinate translation element of the 3x4 matrix.

Annotations
@Override
inverseDeltaTransformback to summary
public Point2D inverseDeltaTransform(double x, double y)

Overrides javafx.scene.transform.Transform.inverseDeltaTransform.

Doc from javafx.scene.transform.Transform.inverseDeltaTransform.

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.

Annotations
@Override
inverseDeltaTransformback to summary
public Point3D inverseDeltaTransform(double x, double y, double z)

Overrides javafx.scene.transform.Transform.inverseDeltaTransform.

Doc from javafx.scene.transform.Transform.inverseDeltaTransform.

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.

Annotations
@Override
inverseTransformback to summary
public Point2D inverseTransform(double x, double y)

Overrides javafx.scene.transform.Transform.inverseTransform.

Doc from javafx.scene.transform.Transform.inverseTransform.

Transforms the specified point by the inverse of this transform. This method can be used only for 2D transforms.

Annotations
@Override
inverseTransformback to summary
public Point3D inverseTransform(double x, double y, double z)

Overrides javafx.scene.transform.Transform.inverseTransform.

Doc from javafx.scene.transform.Transform.inverseTransform.

Transforms the specified point by the inverse of this transform.

Annotations
@Override
inverseTransform2DPointsImplback to summary
pack-priv void inverseTransform2DPointsImpl(double[] srcPts, int srcOff, double[] dstPts, int dstOff, int numPts)

Overrides javafx.scene.transform.Transform.inverseTransform2DPointsImpl.

Doc from javafx.scene.transform.Transform.inverseTransform2DPointsImpl.

Core of the inverseTransform2DPoints method. All the checks has been performed and the care of the overlaps has been taken by the enclosing method, this method only transforms the points and fills them to the array. Used by the subclasses to perform the transform efficiently.

Annotations
@Override
inverseTransform3DPointsImplback to summary
pack-priv void inverseTransform3DPointsImpl(double[] srcPts, int srcOff, double[] dstPts, int dstOff, int numPts)

Overrides javafx.scene.transform.Transform.inverseTransform3DPointsImpl.

Doc from javafx.scene.transform.Transform.inverseTransform3DPointsImpl.

Core of the inverseTransform3DPoints method. All the checks has been performed and the care of the overlaps has been taken by the enclosing method, this method only transforms the points and fills them to the array. Used by the subclasses to perform the transform efficiently.

Annotations
@Override
pivotXPropertyback to summary
public final DoubleProperty pivotXProperty()
pivotYPropertyback to summary
public final DoubleProperty pivotYProperty()
pivotZPropertyback to summary
public final DoubleProperty pivotZProperty()
prependToback to summary
pack-priv void prependTo(Affine a)

Overrides javafx.scene.transform.Transform.prependTo.

Doc from javafx.scene.transform.Transform.prependTo.

Visitor from Affine class which provides an efficient prepend operation for the subclasses.

Annotations
@Override
setAngleback to summary
public final void setAngle(double value)
setAxisback to summary
public final void setAxis(Point3D value)
setPivotXback to summary
public final void setPivotX(double value)
setPivotYback to summary
public final void setPivotY(double value)
setPivotZback to summary
public final void setPivotZ(double value)
toStringback to summary
public String toString()

Overrides java.lang.Object.toString.

Returns a string representation of this Rotate object.

Returns:String

a string representation of this Rotate object.

Annotations
@Override
transformback to summary
public Point2D transform(double x, double y)

Overrides javafx.scene.transform.Transform.transform.

Doc from javafx.scene.transform.Transform.transform.

Transforms the specified point by this transform. This method can be used only for 2D transforms.

Annotations
@Override
transformback to summary
public Point3D transform(double x, double y, double z)

Overrides javafx.scene.transform.Transform.transform.

Doc from javafx.scene.transform.Transform.transform.

Transforms the specified point by this transform.

Annotations
@Override
transform2DPointsImplback to summary
pack-priv void transform2DPointsImpl(double[] srcPts, int srcOff, double[] dstPts, int dstOff, int numPts)

Overrides javafx.scene.transform.Transform.transform2DPointsImpl.

Doc from javafx.scene.transform.Transform.transform2DPointsImpl.

Core of the transform2DPoints method. All the checks has been performed and the care of the overlaps has been taken by the enclosing method, this method only transforms the points and fills them to the array. Used by the subclasses to perform the transform efficiently.

Annotations
@Override
transform3DPointsImplback to summary
pack-priv void transform3DPointsImpl(double[] srcPts, int srcOff, double[] dstPts, int dstOff, int numPts)

Overrides javafx.scene.transform.Transform.transform3DPointsImpl.

Doc from javafx.scene.transform.Transform.transform3DPointsImpl.

Core of the transform3DPoints method. All the checks has been performed and the care of the overlaps has been taken by the enclosing method, this method only transforms the points and fills them to the array. Used by the subclasses to perform the transform efficiently.

Annotations
@Override
transformChangedback to summary
protected void transformChanged()

Overrides javafx.scene.transform.Transform.transformChanged.

Doc from javafx.scene.transform.Transform.transformChanged.

This method must be called by all transforms whenever any of their parameters changes. It is typically called when any of the transform's properties is invalidated (it is OK to skip the call if an invalid property is set).

Annotations
@Override
updateCacheback to summary
private void updateCache()

Updates the matrix cache

updateInverseCacheback to summary
private void updateInverseCache()

Updates the inverse matrix cache

validateback to summary
pack-priv void validate()

Overrides javafx.scene.transform.Transform.validate.

Doc from javafx.scene.transform.Transform.validate.

Needed for the proper delivery of the TransformChangedEvent. If the members are invalid, the transformChanged() notification is not called and the event is not delivered. To avoid that we need to manually validate all properties. Subclasses validate their specific properties.

Annotations
@Override
javafx.scene.transform back to summary

private Class Rotate.MatrixCache

extends Object
Class Inheritance

Matrix cache. Computing single transformation matrix elements for a general rotation is quite expensive. Also each of those partial computations need some common operations to be made (compute sin and cos, normalize axis). Therefore with the direct element computations if all the getters for the elements are called to get the matrix, the result is slow. If a matrix element is asked for, we can reasonably anticipate that some other elements will be asked for as well. So when any element needs to be computed, we compute the entire matrix, cache it, and use the stored values until the transform changes.

Field Summary

Modifier and TypeField and Description
pack-priv boolean
pack-priv double
pack-priv double
pack-priv double
pack-priv double
pack-priv double
pack-priv double
pack-priv double
pack-priv double
pack-priv double
pack-priv double
pack-priv double
pack-priv double
pack-priv boolean

Constructor Summary

AccessConstructor and Description
public

Method Summary

Modifier and TypeMethod and Description
public void
public void
update(double angle, Point3D axis, double px, double py, double pz)

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

is3Dback to summary
pack-priv boolean is3D
mxxback to summary
pack-priv double mxx
mxyback to summary
pack-priv double mxy
mxzback to summary
pack-priv double mxz
myxback to summary
pack-priv double myx
myyback to summary
pack-priv double myy
myzback to summary
pack-priv double myz
mzxback to summary
pack-priv double mzx
mzyback to summary
pack-priv double mzy
mzzback to summary
pack-priv double mzz
txback to summary
pack-priv double tx
tyback to summary
pack-priv double ty
tzback to summary
pack-priv double tz
validback to summary
pack-priv boolean valid

Constructor Detail

MatrixCacheback to summary
public MatrixCache()

Method Detail

invalidateback to summary
public void invalidate()
updateback to summary
public void update(double angle, Point3D axis, double px, double py, double pz)