Shadow (JavaFX 19)
Description: declaration: module: javafx.graphics, package: javafx.scene.effect, class: Shadow

Module javafx.graphics
Package javafx.scene.effect

# Class Shadow

java.lang.Object
javafx.scene.effect.Effect
javafx.scene.effect.Shadow

public class Shadow extends Effect
An effect which creates a monochrome duplicate of an input with blurry edges. This effect is primarily used along with its default black color for purposes of combining it with the original to create a shadow. It can also be used with a light color and combined with an original to create a glow effect. The `DropShadow` effect is a utility effect which automatically combines this `Shadow` effect with an original graphic for ease of adding a shadow to an existing scene graph `Node` with a single effect.

Since:
  JavaFX 2.0

- ## Property Summary

  Properties
  Type
  Property
  Description
  `final ObjectProperty<BlurType>`
  `blurType`
  The algorithm used to blur the shadow.
  `final ObjectProperty<Color>`
  `color`
  The shadow `Color`.
  `final DoubleProperty`
  `height`
  The vertical size of the shadow blur kernel.
  `final ObjectProperty<Effect>`
  `input`
  The input for this `Effect`.
  `final DoubleProperty`
  `radius`
  The radius of the shadow blur kernel.
  `final DoubleProperty`
  `width`
  The horizontal size of the shadow blur kernel.

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `Shadow()`
  Creates a new instance of Shadow with default parameters.
  `Shadow(double radius, Color color)`
  Creates a new instance of Shadow with specified radius and color.
  `Shadow(BlurType blurType, Color color, double radius)`
  Creates a new instance of Shadow with the specified blurType, color, radius.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `final ObjectProperty<BlurType>`
  `blurTypeProperty()`
  The algorithm used to blur the shadow.
  `final ObjectProperty<Color>`
  `colorProperty()`
  The shadow `Color`.
  `final BlurType`
  `getBlurType()`
  Gets the value of the property blurType.
  `final Color`
  `getColor()`
  Gets the value of the property color.
  `final double`
  `getHeight()`
  Gets the value of the property height.
  `final Effect`
  `getInput()`
  Gets the value of the property input.
  `final double`
  `getRadius()`
  Gets the value of the property radius.
  `final double`
  `getWidth()`
  Gets the value of the property width.
  `final DoubleProperty`
  `heightProperty()`
  The vertical size of the shadow blur kernel.
  `final ObjectProperty<Effect>`
  `inputProperty()`
  The input for this `Effect`.
  `final DoubleProperty`
  `radiusProperty()`
  The radius of the shadow blur kernel.
  `final void`
  `setBlurType(BlurType value)`
  Sets the value of the property blurType.
  `final void`
  `setColor(Color value)`
  Sets the value of the property color.
  `final void`
  `setHeight(double value)`
  Sets the value of the property height.
  `final void`
  `setInput(Effect value)`
  Sets the value of the property input.
  `final void`
  `setRadius(double value)`
  Sets the value of the property radius.
  `final void`
  `setWidth(double value)`
  Sets the value of the property width.
  `final DoubleProperty`
  `widthProperty()`
  The horizontal size of the shadow blur kernel.

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

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

- ## Property Details

  - ### 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)`

  - ### 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)`

- ## Constructor Details

  - ### Shadow

    public Shadow()
    Creates a new instance of Shadow with default parameters.

  - ### Shadow

    public Shadow(double radius, Color color)
    Creates a new instance of Shadow with specified radius and color.
    Parameters:
      `radius` - the radius of the shadow blur kernel
      `color` - the shadow `Color`
    Since:
      JavaFX 2.1

  - ### Shadow

    public Shadow(BlurType blurType, Color color, double radius)
    Creates a new instance of Shadow with the specified blurType, color, radius.
    Parameters:
      `blurType` - the algorithm used to blur the shadow
      `color` - the shadow `Color`
      `radius` - the radius of the shadow blur kernel
    Since:
      JavaFX 2.1

- ## Method Details

  - ### 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)`

  - ### 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)`