# Class Shear

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

All Implemented Interfaces:
  `Cloneable`, `EventTarget`

public class Shear extends Transform
This class represents an `Affine` object that shears coordinates by the specified multipliers. The matrix representing the shearing transformation around a pivot point `(pivotX, pivotY)` with multiplication factors `x` and `y` is as follows:

                  [   1   x   0   -x*pivotY   ]
                  [   y   1   0   -y*pivotX   ]
                  [   0   0   1       0       ]

For example:

     Text text = new Text("Using Shear for pseudo-italic font");
     text.setX(20);
     text.setY(50);
     text.setFont(new Font(20));

     text.getTransforms().add(new Shear(-0.35, 0));

Since:
  JavaFX 2.0

- ## Property Summary

  Properties
  Type
  Property
  Description
  `final DoubleProperty`
  `pivotX`
  Defines the X coordinate of the shear pivot point.
  `final DoubleProperty`
  `pivotY`
  Defines the Y coordinate of the shear pivot point.
  `final DoubleProperty`
  `x`
  Defines the multiplier by which coordinates are shifted in the direction of the positive X axis as a factor of their Y coordinate.
  `final DoubleProperty`
  `y`
  Defines the multiplier by which coordinates are shifted in the direction of the positive Y axis as a factor of their X coordinate.

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

  `identity, onTransformChanged, type2D`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `Shear()`
  Creates a default Shear (identity).
  `Shear(double x, double y)`
  Creates a new instance of Shear.
  `Shear(double x, double y, double pivotX, double pivotY)`
  Creates a new instance of Shear with pivot.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `Shear`
  `clone()`
  Returns a deep copy of this transform.
  `Transform`
  `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`
  `getX()`
  Gets the value of the `x` property.
  `final double`
  `getY()`
  Gets the value of the `y` property.
  `final DoubleProperty`
  `pivotXProperty()`
  Defines the X coordinate of the shear pivot point.
  `final DoubleProperty`
  `pivotYProperty()`
  Defines the Y coordinate of the shear pivot point.
  `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`
  `setX(double value)`
  Sets the value of the `x` property.
  `final void`
  `setY(double value)`
  Sets the value of the `y` property.
  `String`
  `toString()`
  Returns a string representation of this `Shear` object.
  `final DoubleProperty`
  `xProperty()`
  Defines the multiplier by which coordinates are shifted in the direction of the positive X axis as a factor of their Y coordinate.
  `final DoubleProperty`
  `yProperty()`
  Defines the multiplier by which coordinates are shifted in the direction of the positive Y axis as a factor of their X coordinate.

  ### 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 multiplier by which coordinates are shifted in the direction of the positive X axis as a factor of their Y coordinate. Typical values are in the range -1 to 1, exclusive.
    Default value:
      0.0
    See Also:
      - `getX()`
      - `setX(double)`
      - `xProperty()`

  - ### y

    public final DoubleProperty yProperty
    Defines the multiplier by which coordinates are shifted in the direction of the positive Y axis as a factor of their X coordinate. Typical values are in the range -1 to 1, exclusive.
    Default value:
      0.0
    See Also:
      - `getY()`
      - `setY(double)`
      - `yProperty()`

  - ### pivotX

    public final DoubleProperty pivotXProperty
    Defines the X coordinate of the shear pivot point.
    Default value:
      0.0
    See Also:
      - `getPivotX()`
      - `setPivotX(double)`
      - `pivotXProperty()`

  - ### pivotY

    public final DoubleProperty pivotYProperty
    Defines the Y coordinate of the shear pivot point.
    Default value:
      0.0
    See Also:
      - `getPivotY()`
      - `setPivotY(double)`
      - `pivotYProperty()`

- ## Constructor Details

  - ### Shear

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

  - ### Shear

    public Shear(double x, double y)
    Creates a new instance of Shear. The pivot point is set to (0,0)
    Parameters:
      `x` - the multiplier by which coordinates are shifted in the direction of the positive X axis as a factor of their Y coordinate
      `y` - the multiplier by which coordinates are shifted in the direction of the positive Y axis as a factor of their X coordinate

  - ### Shear

    public Shear(double x, double y, double pivotX, double pivotY)
    Creates a new instance of Shear with pivot.
    Parameters:
      `x` - the multiplier by which coordinates are shifted in the direction of the positive X axis as a factor of their Y coordinate
      `y` - the multiplier by which coordinates are shifted in the direction of the positive Y axis as a factor of their X coordinate
      `pivotX` - the X coordinate of the shear pivot point
      `pivotY` - the Y coordinate of the shear pivot point

- ## Method Details

  - ### setX

    public final void setX(double value)
    Sets the value of the `x` property.
    Property description:
      Defines the multiplier by which coordinates are shifted in the direction of the positive X axis as a factor of their Y coordinate. Typical values are in the range -1 to 1, exclusive.
    Default value:
      0.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 multiplier by which coordinates are shifted in the direction of the positive X axis as a factor of their Y coordinate. Typical values are in the range -1 to 1, exclusive.
    Default value:
      0.0
    Returns:
      the value of the `x` property
    See Also:
      - `setX(double)`
      - `xProperty()`

  - ### xProperty

    public final DoubleProperty xProperty()
    Defines the multiplier by which coordinates are shifted in the direction of the positive X axis as a factor of their Y coordinate. Typical values are in the range -1 to 1, exclusive.
    Default value:
      0.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 multiplier by which coordinates are shifted in the direction of the positive Y axis as a factor of their X coordinate. Typical values are in the range -1 to 1, exclusive.
    Default value:
      0.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 multiplier by which coordinates are shifted in the direction of the positive Y axis as a factor of their X coordinate. Typical values are in the range -1 to 1, exclusive.
    Default value:
      0.0
    Returns:
      the value of the `y` property
    See Also:
      - `setY(double)`
      - `yProperty()`

  - ### yProperty

    public final DoubleProperty yProperty()
    Defines the multiplier by which coordinates are shifted in the direction of the positive Y axis as a factor of their X coordinate. Typical values are in the range -1 to 1, exclusive.
    Default value:
      0.0
    Returns:
      the `y` property
    See Also:
      - `getY()`
      - `setY(double)`

  - ### setPivotX

    public final void setPivotX(double value)
    Sets the value of the `pivotX` property.
    Property description:
      Defines the X coordinate of the shear pivot point.
    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 of the shear pivot point.
    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 of the shear pivot point.
    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 of the shear pivot point.
    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 of the shear pivot point.
    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 of the shear pivot point.
    Default value:
      0.0
    Returns:
      the `pivotY` property
    See Also:
      - `getPivotY()`
      - `setPivotY(double)`

  - ### createInverse

    public Transform createInverse()
    Description copied from class: `Transform`
    Returns the inverse transform of this transform.
    Overrides:
      `createInverse` in class `Transform`
    Returns:
      the inverse transform

  - ### clone

    public Shear 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 `Shear` object.
    Overrides:
      `toString` in class `Object`
    Returns:
      a string representation of this `Shear` object.