Module javafx.graphics
Package javafx.scene.effect

## Class DropShadow

- java.lang.Object
- - javafx.scene.effect.Effect
  - - javafx.scene.effect.DropShadow

-     public class DropShadow
      extends Effect

  A high-level effect that renders a shadow of the given content behind the content with the specified color, radius, and offset.

  Example:

       DropShadow dropShadow = new DropShadow();
       dropShadow.setRadius(5.0);
       dropShadow.setOffsetX(3.0);
       dropShadow.setOffsetY(3.0);
       dropShadow.setColor(Color.color(0.4, 0.5, 0.5));

       Text text = new Text();
       text.setEffect(dropShadow);
       text.setCache(true);
       text.setX(10.0);
       text.setY(70.0);
       text.setFill(Color.web("0x3b596d"));
       text.setText("JavaFX drop shadow...");
       text.setFont(Font.font(null, FontWeight.BOLD, 40));

       DropShadow dropShadow2 = new DropShadow();
       dropShadow2.setOffsetX(6.0);
       dropShadow2.setOffsetY(4.0);

       Circle circle = new Circle();
       circle.setEffect(dropShadow2);
       circle.setCenterX(50.0);
       circle.setCenterY(125.0);
       circle.setRadius(30.0);
       circle.setFill(Color.STEELBLUE);
       circle.setCache(true);

  The code above produces the following:

  Since:
    JavaFX 2.0

- - ### Property Summary

    Properties
    Type | Property | Description
    --- | --- | ---
    `ObjectProperty<BlurType>` | `blurType` | The algorithm used to blur the shadow.
    `ObjectProperty<Color>` | `color` | The shadow `Color`.
    `DoubleProperty` | `height` | The vertical size of the shadow blur kernel.
    `ObjectProperty<Effect>` | `input` | The input for this `Effect`.
    `DoubleProperty` | `offsetX` | The shadow offset in the x direction, in pixels.
    `DoubleProperty` | `offsetY` | The shadow offset in the y direction, in pixels.
    `DoubleProperty` | `radius` | The radius of the shadow blur kernel.
    `DoubleProperty` | `spread` | The spread of the shadow.
    `DoubleProperty` | `width` | The horizontal size of the shadow blur kernel.

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `DropShadow()` | Creates a new instance of DropShadow with default parameters.
    `DropShadow​(double radius, double offsetX, double offsetY, Color color)` | Creates a new instance of DropShadow with the specified radius, offsetX, offsetY and color.
    `DropShadow​(double radius, Color color)` | Creates a new instance of DropShadow with specified radius and color.
    `DropShadow​(BlurType blurType, Color color, double radius, double spread, double offsetX, double offsetY)` | Creates a new instance of DropShadow with the specified blurType, color, radius, spread, offsetX and offsetY.

  - ### Method Summary

    Modifier and Type | Method | Description
    --- | --- | ---
    `ObjectProperty<BlurType>` | `blurTypeProperty()` | The algorithm used to blur the shadow.
    `ObjectProperty<Color>` | `colorProperty()` | The shadow `Color`.
    `BlurType` | `getBlurType()` | Gets the value of the property blurType.
    `Color` | `getColor()` | Gets the value of the property color.
    `double` | `getHeight()` | Gets the value of the property height.
    `Effect` | `getInput()` | Gets the value of the property input.
    `double` | `getOffsetX()` | Gets the value of the property offsetX.
    `double` | `getOffsetY()` | Gets the value of the property offsetY.
    `double` | `getRadius()` | Gets the value of the property radius.
    `double` | `getSpread()` | Gets the value of the property spread.
    `double` | `getWidth()` | Gets the value of the property width.
    `DoubleProperty` | `heightProperty()` | The vertical size of the shadow blur kernel.
    `ObjectProperty<Effect>` | `inputProperty()` | The input for this `Effect`.
    `DoubleProperty` | `offsetXProperty()` | The shadow offset in the x direction, in pixels.
    `DoubleProperty` | `offsetYProperty()` | The shadow offset in the y direction, in pixels.
    `DoubleProperty` | `radiusProperty()` | The radius of the shadow blur kernel.
    `void` | `setBlurType​(BlurType value)` | Sets the value of the property blurType.
    `void` | `setColor​(Color value)` | Sets the value of the property color.
    `void` | `setHeight​(double value)` | Sets the value of the property height.
    `void` | `setInput​(Effect value)` | Sets the value of the property input.
    `void` | `setOffsetX​(double value)` | Sets the value of the property offsetX.
    `void` | `setOffsetY​(double value)` | Sets the value of the property offsetY.
    `void` | `setRadius​(double value)` | Sets the value of the property radius.
    `void` | `setSpread​(double value)` | Sets the value of the property spread.
    `void` | `setWidth​(double value)` | Sets the value of the property width.
    `DoubleProperty` | `spreadProperty()` | The spread of the shadow.
    `DoubleProperty` | `widthProperty()` | The horizontal size of the shadow blur kernel.

    - ### Methods inherited from class java.lang.Object

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

- - ### Property Detail

    - #### input

          public final ObjectProperty<Effect> inputProperty

      The input for this `Effect`. If set to `null`, or left unspecified, a graphical image of the `Node` to which the `Effect` is attached will be used as the input.
      Default value:
        null
      See Also:
        `getInput()`, `setInput(Effect)`

    - #### radius

          public final DoubleProperty radiusProperty

      The radius of the shadow blur kernel. This attribute controls the distance that the shadow is spread to each side of the source pixels. Setting the radius is equivalent to setting both the `width` and `height` attributes to a value of `(2 * radius + 1)`.

                 Min:   0.0
                 Max: 127.0
             Default:  10.0
            Identity:   0.0

      Default value:
        10.0
      See Also:
        `getRadius()`, `setRadius(double)`

    - #### width

          public final DoubleProperty widthProperty

      The horizontal size of the shadow blur kernel. This attribute controls the horizontal size of the total area over which the shadow of a single pixel is distributed by the blur algorithm. Values less than `1.0` are not distributed beyond the original pixel and so have no blurring effect on the shadow.

                 Min:   0.0
                 Max: 255.0
             Default:  21.0
            Identity:  <1.0

      Default value:
        21.0
      See Also:
        `getWidth()`, `setWidth(double)`

    - #### height

          public final DoubleProperty heightProperty

      The vertical size of the shadow blur kernel. This attribute controls the vertical size of the total area over which the shadow of a single pixel is distributed by the blur algorithm. Values less than `1.0` are not distributed beyond the original pixel and so have no blurring effect on the shadow.

                 Min:   0.0
                 Max: 255.0
             Default:  21.0
            Identity:  <1.0

      Default value:
        21.0
      See Also:
        `getHeight()`, `setHeight(double)`

    - #### blurType

          public final ObjectProperty<BlurType> blurTypeProperty

      The algorithm used to blur the shadow.

                 Min: n/a
                 Max: n/a
             Default: BlurType.THREE_PASS_BOX
            Identity: n/a

      Default value:
        THREE_PASS_BOX
      See Also:
        `getBlurType()`, `setBlurType(BlurType)`

    - #### spread

          public final DoubleProperty spreadProperty

      The spread of the shadow. The spread is the portion of the radius where the contribution of the source material will be 100%. The remaining portion of the radius will have a contribution controlled by the blur kernel. A spread of `0.0` will result in a distribution of the shadow determined entirely by the blur algorithm. A spread of `1.0` will result in a solid growth outward of the source material opacity to the limit of the radius with a very sharp cutoff to transparency at the radius.

                 Min: 0.0
                 Max: 1.0
             Default: 0.0
            Identity: 0.0

      Default value:
        0.0
      See Also:
        `getSpread()`, `setSpread(double)`

    - #### color

          public final ObjectProperty<Color> colorProperty

      The shadow `Color`.

                 Min: n/a
                 Max: n/a
             Default: Color.BLACK
            Identity: n/a

      Default value:
        BLACK
      See Also:
        `getColor()`, `setColor(Color)`

    - #### offsetX

          public final DoubleProperty offsetXProperty

      The shadow offset in the x direction, in pixels.

                 Min: n/a
                 Max: n/a
             Default: 0.0
            Identity: 0.0

      Default value:
        0.0
      See Also:
        `getOffsetX()`, `setOffsetX(double)`

    - #### offsetY

          public final DoubleProperty offsetYProperty

      The shadow offset in the y direction, in pixels.

                 Min: n/a
                 Max: n/a
             Default: 0.0
            Identity: 0.0

      Default value:
        0.0
      See Also:
        `getOffsetY()`, `setOffsetY(double)`

  - ### Constructor Detail

    - #### DropShadow

          public DropShadow()

      Creates a new instance of DropShadow with default parameters.

    - #### DropShadow

          public DropShadow​(double radius,
                            Color color)

      Creates a new instance of DropShadow with specified radius and color.
      Parameters:
        `radius` - the radius of the shadow blur kernel
        `color` - the shadow `Color`
      Since:
        JavaFX 2.1

    - #### DropShadow

          public DropShadow​(double radius,
                            double offsetX,
                            double offsetY,
                            Color color)

      Creates a new instance of DropShadow with the specified radius, offsetX, offsetY and color.
      Parameters:
        `radius` - the radius of the shadow blur kernel
        `offsetX` - the shadow offset in the x direction
        `offsetY` - the shadow offset in the y direction
        `color` - the shadow `Color`
      Since:
        JavaFX 2.1

    - #### DropShadow

          public DropShadow​(BlurType blurType,
                            Color color,
                            double radius,
                            double spread,
                            double offsetX,
                            double offsetY)

      Creates a new instance of DropShadow with the specified blurType, color, radius, spread, offsetX and offsetY.
      Parameters:
        `blurType` - the algorithm used to blur the shadow
        `color` - the shadow `Color`
        `radius` - the radius of the shadow blur kernel
        `spread` - the portion of the radius where the contribution of the source material will be 100%
        `offsetX` - the shadow offset in the x direction
        `offsetY` - the shadow offset in the y direction
      Since:
        JavaFX 2.1

  - ### Method Detail

    - #### setInput

          public final void setInput​(Effect value)

      Sets the value of the property input.
      Property description:
        The input for this `Effect`. If set to `null`, or left unspecified, a graphical image of the `Node` to which the `Effect` is attached will be used as the input.
      Default value:
        null

    - #### getInput

          public final Effect getInput()

      Gets the value of the property input.
      Property description:
        The input for this `Effect`. If set to `null`, or left unspecified, a graphical image of the `Node` to which the `Effect` is attached will be used as the input.
      Default value:
        null

    - #### inputProperty

          public final ObjectProperty<Effect> inputProperty()

      The input for this `Effect`. If set to `null`, or left unspecified, a graphical image of the `Node` to which the `Effect` is attached will be used as the input.
      Default value:
        null
      See Also:
        `getInput()`, `setInput(Effect)`

    - #### setRadius

          public final void setRadius​(double value)

      Sets the value of the property radius.
      Property description:
        The radius of the shadow blur kernel. This attribute controls the distance that the shadow is spread to each side of the source pixels. Setting the radius is equivalent to setting both the `width` and `height` attributes to a value of `(2 * radius + 1)`.

                   Min:   0.0
                   Max: 127.0
               Default:  10.0
              Identity:   0.0

      Default value:
        10.0

    - #### getRadius

          public final double getRadius()

      Gets the value of the property radius.
      Property description:
        The radius of the shadow blur kernel. This attribute controls the distance that the shadow is spread to each side of the source pixels. Setting the radius is equivalent to setting both the `width` and `height` attributes to a value of `(2 * radius + 1)`.

                   Min:   0.0
                   Max: 127.0
               Default:  10.0
              Identity:   0.0

      Default value:
        10.0

    - #### radiusProperty

          public final DoubleProperty radiusProperty()

      The radius of the shadow blur kernel. This attribute controls the distance that the shadow is spread to each side of the source pixels. Setting the radius is equivalent to setting both the `width` and `height` attributes to a value of `(2 * radius + 1)`.

                 Min:   0.0
                 Max: 127.0
             Default:  10.0
            Identity:   0.0

      Default value:
        10.0
      See Also:
        `getRadius()`, `setRadius(double)`

    - #### setWidth

          public final void setWidth​(double value)

      Sets the value of the property width.
      Property description:
        The horizontal size of the shadow blur kernel. This attribute controls the horizontal size of the total area over which the shadow of a single pixel is distributed by the blur algorithm. Values less than `1.0` are not distributed beyond the original pixel and so have no blurring effect on the shadow.

                   Min:   0.0
                   Max: 255.0
               Default:  21.0
              Identity:  <1.0

      Default value:
        21.0

    - #### getWidth

          public final double getWidth()

      Gets the value of the property width.
      Property description:
        The horizontal size of the shadow blur kernel. This attribute controls the horizontal size of the total area over which the shadow of a single pixel is distributed by the blur algorithm. Values less than `1.0` are not distributed beyond the original pixel and so have no blurring effect on the shadow.

                   Min:   0.0
                   Max: 255.0
               Default:  21.0
              Identity:  <1.0

      Default value:
        21.0

    - #### widthProperty

          public final DoubleProperty widthProperty()

      The horizontal size of the shadow blur kernel. This attribute controls the horizontal size of the total area over which the shadow of a single pixel is distributed by the blur algorithm. Values less than `1.0` are not distributed beyond the original pixel and so have no blurring effect on the shadow.

                 Min:   0.0
                 Max: 255.0
             Default:  21.0
            Identity:  <1.0

      Default value:
        21.0
      See Also:
        `getWidth()`, `setWidth(double)`

    - #### setHeight

          public final void setHeight​(double value)

      Sets the value of the property height.
      Property description:
        The vertical size of the shadow blur kernel. This attribute controls the vertical size of the total area over which the shadow of a single pixel is distributed by the blur algorithm. Values less than `1.0` are not distributed beyond the original pixel and so have no blurring effect on the shadow.

                   Min:   0.0
                   Max: 255.0
               Default:  21.0
              Identity:  <1.0

      Default value:
        21.0

    - #### getHeight

          public final double getHeight()

      Gets the value of the property height.
      Property description:
        The vertical size of the shadow blur kernel. This attribute controls the vertical size of the total area over which the shadow of a single pixel is distributed by the blur algorithm. Values less than `1.0` are not distributed beyond the original pixel and so have no blurring effect on the shadow.

                   Min:   0.0
                   Max: 255.0
               Default:  21.0
              Identity:  <1.0

      Default value:
        21.0

    - #### heightProperty

          public final DoubleProperty heightProperty()

      The vertical size of the shadow blur kernel. This attribute controls the vertical size of the total area over which the shadow of a single pixel is distributed by the blur algorithm. Values less than `1.0` are not distributed beyond the original pixel and so have no blurring effect on the shadow.

                 Min:   0.0
                 Max: 255.0
             Default:  21.0
            Identity:  <1.0

      Default value:
        21.0
      See Also:
        `getHeight()`, `setHeight(double)`

    - #### setBlurType

          public final void setBlurType​(BlurType value)

      Sets the value of the property blurType.
      Property description:
        The algorithm used to blur the shadow.

                   Min: n/a
                   Max: n/a
               Default: BlurType.THREE_PASS_BOX
              Identity: n/a

      Default value:
        THREE_PASS_BOX

    - #### getBlurType

          public final BlurType getBlurType()

      Gets the value of the property blurType.
      Property description:
        The algorithm used to blur the shadow.

                   Min: n/a
                   Max: n/a
               Default: BlurType.THREE_PASS_BOX
              Identity: n/a

      Default value:
        THREE_PASS_BOX

    - #### blurTypeProperty

          public final ObjectProperty<BlurType> blurTypeProperty()

      The algorithm used to blur the shadow.

                 Min: n/a
                 Max: n/a
             Default: BlurType.THREE_PASS_BOX
            Identity: n/a

      Default value:
        THREE_PASS_BOX
      See Also:
        `getBlurType()`, `setBlurType(BlurType)`

    - #### setSpread

          public final void setSpread​(double value)

      Sets the value of the property spread.
      Property description:
        The spread of the shadow. The spread is the portion of the radius where the contribution of the source material will be 100%. The remaining portion of the radius will have a contribution controlled by the blur kernel. A spread of `0.0` will result in a distribution of the shadow determined entirely by the blur algorithm. A spread of `1.0` will result in a solid growth outward of the source material opacity to the limit of the radius with a very sharp cutoff to transparency at the radius.

                   Min: 0.0
                   Max: 1.0
               Default: 0.0
              Identity: 0.0

      Default value:
        0.0

    - #### getSpread

          public final double getSpread()

      Gets the value of the property spread.
      Property description:
        The spread of the shadow. The spread is the portion of the radius where the contribution of the source material will be 100%. The remaining portion of the radius will have a contribution controlled by the blur kernel. A spread of `0.0` will result in a distribution of the shadow determined entirely by the blur algorithm. A spread of `1.0` will result in a solid growth outward of the source material opacity to the limit of the radius with a very sharp cutoff to transparency at the radius.

                   Min: 0.0
                   Max: 1.0
               Default: 0.0
              Identity: 0.0

      Default value:
        0.0

    - #### spreadProperty

          public final DoubleProperty spreadProperty()

      The spread of the shadow. The spread is the portion of the radius where the contribution of the source material will be 100%. The remaining portion of the radius will have a contribution controlled by the blur kernel. A spread of `0.0` will result in a distribution of the shadow determined entirely by the blur algorithm. A spread of `1.0` will result in a solid growth outward of the source material opacity to the limit of the radius with a very sharp cutoff to transparency at the radius.

                 Min: 0.0
                 Max: 1.0
             Default: 0.0
            Identity: 0.0

      Default value:
        0.0
      See Also:
        `getSpread()`, `setSpread(double)`

    - #### setColor

          public final void setColor​(Color value)

      Sets the value of the property color.
      Property description:
        The shadow `Color`.

                   Min: n/a
                   Max: n/a
               Default: Color.BLACK
              Identity: n/a

      Default value:
        BLACK

    - #### getColor

          public final Color getColor()

      Gets the value of the property color.
      Property description:
        The shadow `Color`.

                   Min: n/a
                   Max: n/a
               Default: Color.BLACK
              Identity: n/a

      Default value:
        BLACK

    - #### colorProperty

          public final ObjectProperty<Color> colorProperty()

      The shadow `Color`.

                 Min: n/a
                 Max: n/a
             Default: Color.BLACK
            Identity: n/a

      Default value:
        BLACK
      See Also:
        `getColor()`, `setColor(Color)`

    - #### setOffsetX

          public final void setOffsetX​(double value)

      Sets the value of the property offsetX.
      Property description:
        The shadow offset in the x direction, in pixels.

                   Min: n/a
                   Max: n/a
               Default: 0.0
              Identity: 0.0

      Default value:
        0.0

    - #### getOffsetX

          public final double getOffsetX()

      Gets the value of the property offsetX.
      Property description:
        The shadow offset in the x direction, in pixels.

                   Min: n/a
                   Max: n/a
               Default: 0.0
              Identity: 0.0

      Default value:
        0.0

    - #### offsetXProperty

          public final DoubleProperty offsetXProperty()

      The shadow offset in the x direction, in pixels.

                 Min: n/a
                 Max: n/a
             Default: 0.0
            Identity: 0.0

      Default value:
        0.0
      See Also:
        `getOffsetX()`, `setOffsetX(double)`

    - #### setOffsetY

          public final void setOffsetY​(double value)

      Sets the value of the property offsetY.
      Property description:
        The shadow offset in the y direction, in pixels.

                   Min: n/a
                   Max: n/a
               Default: 0.0
              Identity: 0.0

      Default value:
        0.0

    - #### getOffsetY

          public final double getOffsetY()

      Gets the value of the property offsetY.
      Property description:
        The shadow offset in the y direction, in pixels.

                   Min: n/a
                   Max: n/a
               Default: 0.0
              Identity: 0.0

      Default value:
        0.0

    - #### offsetYProperty

          public final DoubleProperty offsetYProperty()

      The shadow offset in the y direction, in pixels.

                 Min: n/a
                 Max: n/a
             Default: 0.0
            Identity: 0.0

      Default value:
        0.0
      See Also:
        `getOffsetY()`, `setOffsetY(double)`