Class RoundRectangle2D.Double

All Implemented Interfaces:
Shape, Serializable, Cloneable
Enclosing class:
RoundRectangle2D

public static class RoundRectangle2D.Double extends RoundRectangle2D implements Serializable
The Double class defines a rectangle with rounded corners all specified in double coordinates.
Since:
1.2
See Also:
  • Nested Class Summary

    Nested classes/interfaces declared in class RoundRectangle2D

    RoundRectangle2D.Double, RoundRectangle2D.Float
    Modifier and Type
    Class
    Description
    static class 
    The Double class defines a rectangle with rounded corners all specified in double coordinates.
    static class 
    The Float class defines a rectangle with rounded corners all specified in float coordinates.
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    double
    The height of the arc that rounds off the corners.
    double
    The width of the arc that rounds off the corners.
    double
    The height of this RoundRectangle2D.
    double
    The width of this RoundRectangle2D.
    double
    The X coordinate of this RoundRectangle2D.
    double
    The Y coordinate of this RoundRectangle2D.
  • Constructor Summary

    Constructors
    Constructor
    Description
    Constructs a new RoundRectangle2D, initialized to location (0.0, 0.0), size (0.0, 0.0), and corner arcs of radius 0.0.
    Double(double x, double y, double w, double h, double arcw, double arch)
    Constructs and initializes a RoundRectangle2D from the specified double coordinates.
  • Method Summary

    Modifier and Type
    Method
    Description
    double
    Gets the height of the arc that rounds off the corners.
    double
    Gets the width of the arc that rounds off the corners.
    Returns a high precision and more accurate bounding box of the Shape than the getBounds method.
    double
    Returns the height of the framing rectangle in double precision.
    double
    Returns the width of the framing rectangle in double precision.
    double
    Returns the X coordinate of the upper-left corner of the framing rectangle in double precision.
    double
    Returns the Y coordinate of the upper-left corner of the framing rectangle in double precision.
    boolean
    Determines whether the RectangularShape is empty.
    void
    setRoundRect(double x, double y, double w, double h, double arcw, double arch)
    Sets the location, size, and corner radii of this RoundRectangle2D to the specified double values.
    void
    Sets this RoundRectangle2D to be the same as the specified RoundRectangle2D.

    Methods declared in class RoundRectangle2D

    contains, contains, equals, getPathIterator, hashCode, intersects, setFrame
    Modifier and Type
    Method
    Description
    boolean
    contains(double x, double y)
    Tests if the specified coordinates are inside the boundary of the Shape, as described by the definition of insideness.
    boolean
    contains(double x, double y, double w, double h)
    Tests if the interior of the Shape entirely contains the specified rectangular area.
    boolean
    Determines whether or not the specified Object is equal to this RoundRectangle2D.
    Returns an iteration object that defines the boundary of this RoundRectangle2D.
    int
    Returns the hashcode for this RoundRectangle2D.
    boolean
    intersects(double x, double y, double w, double h)
    Tests if the interior of the Shape intersects the interior of a specified rectangular area.
    void
    setFrame(double x, double y, double w, double h)
    Sets the location and size of the framing rectangle of this Shape to the specified rectangular values.

    Methods declared in class RectangularShape

    clone, contains, contains, getBounds, getCenterX, getCenterY, getFrame, getMaxX, getMaxY, getMinX, getMinY, getPathIterator, intersects, setFrame, setFrame, setFrameFromCenter, setFrameFromCenter, setFrameFromDiagonal, setFrameFromDiagonal
    Modifier and Type
    Method
    Description
    Creates a new object of the same class and with the same contents as this object.
    boolean
    Tests if a specified Point2D is inside the boundary of the Shape, as described by the definition of insideness.
    boolean
    Tests if the interior of the Shape entirely contains the specified Rectangle2D.
    Returns an integer Rectangle that completely encloses the Shape.
    double
    Returns the X coordinate of the center of the framing rectangle of the Shape in double precision.
    double
    Returns the Y coordinate of the center of the framing rectangle of the Shape in double precision.
    Returns the framing Rectangle2D that defines the overall shape of this object.
    double
    Returns the largest X coordinate of the framing rectangle of the Shape in double precision.
    double
    Returns the largest Y coordinate of the framing rectangle of the Shape in double precision.
    double
    Returns the smallest X coordinate of the framing rectangle of the Shape in double precision.
    double
    Returns the smallest Y coordinate of the framing rectangle of the Shape in double precision.
    getPathIterator(AffineTransform at, double flatness)
    Returns an iterator object that iterates along the Shape object's boundary and provides access to a flattened view of the outline of the Shape object's geometry.
    boolean
    Tests if the interior of the Shape intersects the interior of a specified Rectangle2D.
    void
    Sets the location and size of the framing rectangle of this Shape to the specified Point2D and Dimension2D, respectively.
    void
    Sets the framing rectangle of this Shape to be the specified Rectangle2D.
    void
    setFrameFromCenter(double centerX, double centerY, double cornerX, double cornerY)
    Sets the framing rectangle of this Shape based on the specified center point coordinates and corner point coordinates.
    void
    Sets the framing rectangle of this Shape based on a specified center Point2D and corner Point2D.
    void
    setFrameFromDiagonal(double x1, double y1, double x2, double y2)
    Sets the diagonal of the framing rectangle of this Shape based on the two specified coordinates.
    void
    Sets the diagonal of the framing rectangle of this Shape based on two specified Point2D objects.

    Methods declared in class Object

    finalize, getClass, notify, notifyAll, toString, wait, wait, wait
    Modifier and Type
    Method
    Description
    protected void
    Deprecated, for removal: This API element is subject to removal in a future version.
    Finalization is deprecated and subject to removal in a future release.
    final Class<?>
    Returns the runtime class of this Object.
    final void
    Wakes up a single thread that is waiting on this object's monitor.
    final void
    Wakes up all threads that are waiting on this object's monitor.
    Returns a string representation of the object.
    final void
    Causes the current thread to wait until it is awakened, typically by being notified or interrupted.
    final void
    wait(long timeoutMillis)
    Causes the current thread to wait until it is awakened, typically by being notified or interrupted, or until a certain amount of real time has elapsed.
    final void
    wait(long timeoutMillis, int nanos)
    Causes the current thread to wait until it is awakened, typically by being notified or interrupted, or until a certain amount of real time has elapsed.
  • Field Details

    • x

      public double x
      The X coordinate of this RoundRectangle2D.
      Since:
      1.2
    • y

      public double y
      The Y coordinate of this RoundRectangle2D.
      Since:
      1.2
    • width

      public double width
      The width of this RoundRectangle2D.
      Since:
      1.2
    • height

      public double height
      The height of this RoundRectangle2D.
      Since:
      1.2
    • arcwidth

      public double arcwidth
      The width of the arc that rounds off the corners.
      Since:
      1.2
    • archeight

      public double archeight
      The height of the arc that rounds off the corners.
      Since:
      1.2
  • Constructor Details

    • Double

      public Double()
      Constructs a new RoundRectangle2D, initialized to location (0.0, 0.0), size (0.0, 0.0), and corner arcs of radius 0.0.
      Since:
      1.2
    • Double

      public Double(double x, double y, double w, double h, double arcw, double arch)
      Constructs and initializes a RoundRectangle2D from the specified double coordinates.
      Parameters:
      x - the X coordinate of the newly constructed RoundRectangle2D
      y - the Y coordinate of the newly constructed RoundRectangle2D
      w - the width to which to set the newly constructed RoundRectangle2D
      h - the height to which to set the newly constructed RoundRectangle2D
      arcw - the width of the arc to use to round off the corners of the newly constructed RoundRectangle2D
      arch - the height of the arc to use to round off the corners of the newly constructed RoundRectangle2D
      Since:
      1.2
  • Method Details

    • getX

      public double getX()
      Returns the X coordinate of the upper-left corner of the framing rectangle in double precision.
      Specified by:
      getX in class RectangularShape
      Returns:
      the X coordinate of the upper-left corner of the framing rectangle.
      Since:
      1.2
    • getY

      public double getY()
      Returns the Y coordinate of the upper-left corner of the framing rectangle in double precision.
      Specified by:
      getY in class RectangularShape
      Returns:
      the Y coordinate of the upper-left corner of the framing rectangle.
      Since:
      1.2
    • getWidth

      public double getWidth()
      Returns the width of the framing rectangle in double precision.
      Specified by:
      getWidth in class RectangularShape
      Returns:
      the width of the framing rectangle.
      Since:
      1.2
    • getHeight

      public double getHeight()
      Returns the height of the framing rectangle in double precision.
      Specified by:
      getHeight in class RectangularShape
      Returns:
      the height of the framing rectangle.
      Since:
      1.2
    • getArcWidth

      public double getArcWidth()
      Gets the width of the arc that rounds off the corners.
      Specified by:
      getArcWidth in class RoundRectangle2D
      Returns:
      the width of the arc that rounds off the corners of this RoundRectangle2D.
      Since:
      1.2
    • getArcHeight

      public double getArcHeight()
      Gets the height of the arc that rounds off the corners.
      Specified by:
      getArcHeight in class RoundRectangle2D
      Returns:
      the height of the arc that rounds off the corners of this RoundRectangle2D.
      Since:
      1.2
    • isEmpty

      public boolean isEmpty()
      Determines whether the RectangularShape is empty. When the RectangularShape is empty, it encloses no area.
      Specified by:
      isEmpty in class RectangularShape
      Returns:
      true if the RectangularShape is empty; false otherwise.
      Since:
      1.2
    • setRoundRect

      public void setRoundRect(double x, double y, double w, double h, double arcw, double arch)
      Sets the location, size, and corner radii of this RoundRectangle2D to the specified double values.
      Specified by:
      setRoundRect in class RoundRectangle2D
      Parameters:
      x - the X coordinate to which to set the location of this RoundRectangle2D
      y - the Y coordinate to which to set the location of this RoundRectangle2D
      w - the width to which to set this RoundRectangle2D
      h - the height to which to set this RoundRectangle2D
      arcw - the width to which to set the arc of this RoundRectangle2D
      arch - the height to which to set the arc of this RoundRectangle2D
      Since:
      1.2
    • setRoundRect

      public void setRoundRect(RoundRectangle2D rr)
      Sets this RoundRectangle2D to be the same as the specified RoundRectangle2D.
      Overrides:
      setRoundRect in class RoundRectangle2D
      Parameters:
      rr - the specified RoundRectangle2D
      Since:
      1.2
    • getBounds2D

      public Rectangle2D getBounds2D()
      Returns a high precision and more accurate bounding box of the Shape than the getBounds method. Note that there is no guarantee that the returned Rectangle2D is the smallest bounding box that encloses the Shape, only that the Shape lies entirely within the indicated Rectangle2D. The bounding box returned by this method is usually tighter than that returned by the getBounds method and never fails due to overflow problems since the return value can be an instance of the Rectangle2D that uses double precision values to store the dimensions.

      Note that the definition of insideness can lead to situations where points on the defining outline of the shape may not be considered contained in the returned bounds object, but only in cases where those points are also not considered contained in the original shape.

      If a point is inside the shape according to the contains(point) method, then it must be inside the returned Rectangle2D bounds object according to the contains(point) method of the bounds. Specifically:

      shape.contains(p) requires bounds.contains(p)

      If a point is not inside the shape, then it might still be contained in the bounds object:

      bounds.contains(p) does not imply shape.contains(p)

      Specified by:
      getBounds2D in interface Shape
      Returns:
      an instance of Rectangle2D that is a high-precision bounding box of the Shape.
      Since:
      1.2
      See Also: