# Class Scale

java.lang.Object
javafx.scene.transform.Transform
javafx.scene.transform.Scale

All Implemented Interfaces:
  `Cloneable`, `EventTarget`

public class Scale extends Transform
This class represents an `Affine` object that scales coordinates by the specified factors. The matrix representing the scaling transformation around a pivot point `(pivotX, pivotY, pivotZ)` with scaling factors `x`, `y` and `z` is as follows:

                  [   x   0   0   (1-x)*pivotX   ]
                  [   0   y   0   (1-y)*pivotY   ]
                  [   0   0   z   (1-z)*pivotZ   ]

Since:
  JavaFX 2.0

- ## Property Summary

  Properties
  Type
  Property
  Description
  `final DoubleProperty`
  `pivotX`
  Defines the X coordinate about which point the scale occurs.
  `final DoubleProperty`
  `pivotY`
  Defines the Y coordinate about which point the scale occurs.
  `final DoubleProperty`
  `pivotZ`
  Defines the Z coordinate about which point the scale occurs.
  `final DoubleProperty`
  `x`
  Defines the factor by which coordinates are scaled along the X axis direction.
  `final DoubleProperty`
  `y`
  Defines the factor by which coordinates are scaled along the Y axis direction.
  `final DoubleProperty`
  `z`
  Defines the factor by which coordinates are scaled along the Z axis direction.

  ### Properties declared in class javafx.scene.transform.Transform

  `identity, onTransformChanged, type2D`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `Scale()`
  Creates a default Scale (identity).
  `Scale(double x, double y)`
  Creates a two-dimensional Scale.
  `Scale(double x, double y, double z)`
  Creates a three-dimensional Scale.
  `Scale(double x, double y, double pivotX, double pivotY)`
  Creates a two-dimensional Scale with pivot.
  `Scale(double x, double y, double z, double pivotX, double pivotY, double pivotZ)`
  Creates a three-dimensional Scale with pivot.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `Scale`
  `clone()`
  Returns a deep copy of this transform.
  `Scale`
  `createInverse()`
  Returns the inverse transform of this transform.
  `final double`
  `getPivotX()`
  Gets the value of the `pivotX` property.
  `final double`
  `getPivotY()`
  Gets the value of the `pivotY` property.
  `final double`
  `getPivotZ()`
  Gets the value of the `pivotZ` property.
  `final double`
  `getX()`
  Gets the value of the `x` property.
  `final double`
  `getY()`
  Gets the value of the `y` property.
  `final double`
  `getZ()`
  Gets the value of the `z` property.
  `final DoubleProperty`
  `pivotXProperty()`
  Defines the X coordinate about which point the scale occurs.
  `final DoubleProperty`
  `pivotYProperty()`
  Defines the Y coordinate about which point the scale occurs.
  `final DoubleProperty`
  `pivotZProperty()`
  Defines the Z coordinate about which point the scale occurs.
  `final void`
  `setPivotX(double value)`
  Sets the value of the `pivotX` property.
  `final void`
  `setPivotY(double value)`
  Sets the value of the `pivotY` property.
  `final void`
  `setPivotZ(double value)`
  Sets the value of the `pivotZ` property.
  `final void`
  `setX(double value)`
  Sets the value of the `x` property.
  `final void`
  `setY(double value)`
  Sets the value of the `y` property.
  `final void`
  `setZ(double value)`
  Sets the value of the `z` property.
  `String`
  `toString()`
  Returns a string representation of this `Scale` object.
  `final DoubleProperty`
  `xProperty()`
  Defines the factor by which coordinates are scaled along the X axis direction.
  `final DoubleProperty`
  `yProperty()`
  Defines the factor by which coordinates are scaled along the Y axis direction.
  `final DoubleProperty`
  `zProperty()`
  Defines the factor by which coordinates are scaled along the Z axis direction.

  ### Methods declared in class javafx.scene.transform.Transform

  `addEventFilter, addEventHandler, affine, affine, buildEventDispatchChain, column, column, createConcatenation, deltaTransform, deltaTransform, deltaTransform, deltaTransform, determinant, getElement, getMxx, getMxy, getMxz, getMyx, getMyy, getMyz, getMzx, getMzy, getMzz, getOnTransformChanged, getTx, getTy, getTz, identityProperty, inverseDeltaTransform, inverseDeltaTransform, inverseDeltaTransform, inverseDeltaTransform, inverseTransform, inverseTransform, 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`

  ### Methods declared in class java.lang.Object

  `equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- ## Property Details

  - ### x

    public final DoubleProperty xProperty
    Defines the factor by which coordinates are scaled along the X axis direction. The default value is `1.0`.
    See Also:
      - `getX()`
      - `setX(double)`
      - `xProperty()`

  - ### y

    public final DoubleProperty yProperty
    Defines the factor by which coordinates are scaled along the Y axis direction. The default value is `1.0`.
    See Also:
      - `getY()`
      - `setY(double)`
      - `yProperty()`

  - ### z

    public final DoubleProperty zProperty
    Defines the factor by which coordinates are scaled along the Z axis direction. The default value is `1.0`.
    See Also:
      - `getZ()`
      - `setZ(double)`
      - `zProperty()`

  - ### pivotX

    public final DoubleProperty pivotXProperty
    Defines the X coordinate about which point the scale occurs.
    Default value:
      0.0
    See Also:
      - `getPivotX()`
      - `setPivotX(double)`
      - `pivotXProperty()`

  - ### pivotY

    public final DoubleProperty pivotYProperty
    Defines the Y coordinate about which point the scale occurs.
    Default value:
      0.0
    See Also:
      - `getPivotY()`
      - `setPivotY(double)`
      - `pivotYProperty()`

  - ### pivotZ

    public final DoubleProperty pivotZProperty
    Defines the Z coordinate about which point the scale occurs.
    Default value:
      0.0
    See Also:
      - `getPivotZ()`
      - `setPivotZ(double)`
      - `pivotZProperty()`

- ## Constructor Details

  - ### Scale

    public Scale()
    Creates a default Scale (identity).

  - ### Scale

    public Scale(double x, double y)
    Creates a two-dimensional Scale. The pivot point is set to (0,0)
    Parameters:
      `x` - the factor by which coordinates are scaled along the X axis
      `y` - the factor by which coordinates are scaled along the Y axis

  - ### Scale

    public Scale(double x, double y, double pivotX, double pivotY)
    Creates a two-dimensional Scale with pivot.
    Parameters:
      `x` - the factor by which coordinates are scaled along the X axis
      `y` - the factor by which coordinates are scaled along the Y axis
      `pivotX` - the X coordinate about which point the scale occurs
      `pivotY` - the Y coordinate about which point the scale occurs

  - ### Scale

    public Scale(double x, double y, double z)
    Creates a three-dimensional Scale. The pivot point is set to (0,0,0)
    Parameters:
      `x` - the factor by which coordinates are scaled along the X axis
      `y` - the factor by which coordinates are scaled along the Y axis
      `z` - the factor by which coordinates are scaled along the Z axis

  - ### Scale

    public Scale(double x, double y, double z, double pivotX, double pivotY, double pivotZ)
    Creates a three-dimensional Scale with pivot.
    Parameters:
      `x` - the factor by which coordinates are scaled along the X axis
      `y` - the factor by which coordinates are scaled along the Y axis
      `z` - the factor by which coordinates are scaled along the Z axis
      `pivotX` - the X coordinate about which point the scale occurs
      `pivotY` - the Y coordinate about which point the scale occurs
      `pivotZ` - the Z coordinate about which point the scale occurs

- ## Method Details

  - ### setX

    public final void setX(double value)
    Sets the value of the `x` property.
    Property description:
      Defines the factor by which coordinates are scaled along the X axis direction. The default value is `1.0`.
    Parameters:
      `value` - the value for the `x` property
    See Also:
      - `getX()`
      - `xProperty()`

  - ### getX

    public final double getX()
    Gets the value of the `x` property.
    Property description:
      Defines the factor by which coordinates are scaled along the X axis direction. The default value is `1.0`.
    Returns:
      the value of the `x` property
    See Also:
      - `setX(double)`
      - `xProperty()`

  - ### xProperty

    public final DoubleProperty xProperty()
    Defines the factor by which coordinates are scaled along the X axis direction. The default value is `1.0`.
    Returns:
      the `x` property
    See Also:
      - `getX()`
      - `setX(double)`

  - ### setY

    public final void setY(double value)
    Sets the value of the `y` property.
    Property description:
      Defines the factor by which coordinates are scaled along the Y axis direction. The default value is `1.0`.
    Parameters:
      `value` - the value for the `y` property
    See Also:
      - `getY()`
      - `yProperty()`

  - ### getY

    public final double getY()
    Gets the value of the `y` property.
    Property description:
      Defines the factor by which coordinates are scaled along the Y axis direction. The default value is `1.0`.
    Returns:
      the value of the `y` property
    See Also:
      - `setY(double)`
      - `yProperty()`

  - ### yProperty

    public final DoubleProperty yProperty()
    Defines the factor by which coordinates are scaled along the Y axis direction. The default value is `1.0`.
    Returns:
      the `y` property
    See Also:
      - `getY()`
      - `setY(double)`

  - ### setZ

    public final void setZ(double value)
    Sets the value of the `z` property.
    Property description:
      Defines the factor by which coordinates are scaled along the Z axis direction. The default value is `1.0`.
    Parameters:
      `value` - the value for the `z` property
    See Also:
      - `getZ()`
      - `zProperty()`

  - ### getZ

    public final double getZ()
    Gets the value of the `z` property.
    Property description:
      Defines the factor by which coordinates are scaled along the Z axis direction. The default value is `1.0`.
    Returns:
      the value of the `z` property
    See Also:
      - `setZ(double)`
      - `zProperty()`

  - ### zProperty

    public final DoubleProperty zProperty()
    Defines the factor by which coordinates are scaled along the Z axis direction. The default value is `1.0`.
    Returns:
      the `z` property
    See Also:
      - `getZ()`
      - `setZ(double)`

  - ### setPivotX

    public final void setPivotX(double value)
    Sets the value of the `pivotX` property.
    Property description:
      Defines the X coordinate about which point the scale occurs.
    Default value:
      0.0
    Parameters:
      `value` - the value for the `pivotX` property
    See Also:
      - `getPivotX()`
      - `pivotXProperty()`

  - ### getPivotX

    public final double getPivotX()
    Gets the value of the `pivotX` property.
    Property description:
      Defines the X coordinate about which point the scale occurs.
    Default value:
      0.0
    Returns:
      the value of the `pivotX` property
    See Also:
      - `setPivotX(double)`
      - `pivotXProperty()`

  - ### pivotXProperty

    public final DoubleProperty pivotXProperty()
    Defines the X coordinate about which point the scale occurs.
    Default value:
      0.0
    Returns:
      the `pivotX` property
    See Also:
      - `getPivotX()`
      - `setPivotX(double)`

  - ### setPivotY

    public final void setPivotY(double value)
    Sets the value of the `pivotY` property.
    Property description:
      Defines the Y coordinate about which point the scale occurs.
    Default value:
      0.0
    Parameters:
      `value` - the value for the `pivotY` property
    See Also:
      - `getPivotY()`
      - `pivotYProperty()`

  - ### getPivotY

    public final double getPivotY()
    Gets the value of the `pivotY` property.
    Property description:
      Defines the Y coordinate about which point the scale occurs.
    Default value:
      0.0
    Returns:
      the value of the `pivotY` property
    See Also:
      - `setPivotY(double)`
      - `pivotYProperty()`

  - ### pivotYProperty

    public final DoubleProperty pivotYProperty()
    Defines the Y coordinate about which point the scale occurs.
    Default value:
      0.0
    Returns:
      the `pivotY` property
    See Also:
      - `getPivotY()`
      - `setPivotY(double)`

  - ### setPivotZ

    public final void setPivotZ(double value)
    Sets the value of the `pivotZ` property.
    Property description:
      Defines the Z coordinate about which point the scale occurs.
    Default value:
      0.0
    Parameters:
      `value` - the value for the `pivotZ` property
    See Also:
      - `getPivotZ()`
      - `pivotZProperty()`

  - ### getPivotZ

    public final double getPivotZ()
    Gets the value of the `pivotZ` property.
    Property description:
      Defines the Z coordinate about which point the scale occurs.
    Default value:
      0.0
    Returns:
      the value of the `pivotZ` property
    See Also:
      - `setPivotZ(double)`
      - `pivotZProperty()`

  - ### pivotZProperty

    public final DoubleProperty pivotZProperty()
    Defines the Z coordinate about which point the scale occurs.
    Default value:
      0.0
    Returns:
      the `pivotZ` property
    See Also:
      - `getPivotZ()`
      - `setPivotZ(double)`

  - ### createInverse

    public Scale createInverse() throws NonInvertibleTransformException
    Description copied from class: `Transform`
    Returns the inverse transform of this transform.
    Overrides:
      `createInverse` in class `Transform`
    Returns:
      the inverse transform
    Throws:
      `NonInvertibleTransformException` - if this transform cannot be inverted

  - ### clone

    public Scale clone()
    Description copied from class: `Transform`
    Returns a deep copy of this transform.
    Overrides:
      `clone` in class `Transform`
    Returns:
      a copy of this transform

  - ### toString

    public String toString()
    Returns a string representation of this `Scale` object.
    Overrides:
      `toString` in class `Object`
    Returns:
      a string representation of this `Scale` object.