W3cubDocs

/OpenJDK 21

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 java.awt.geom.RoundRectangle2D

RoundRectangle2D.Double, RoundRectangle2D.Float

Field Summary

Modifier and Type Field Description
double archeight
The height of the arc that rounds off the corners.
double arcwidth
The width of the arc that rounds off the corners.
double height
The height of this RoundRectangle2D.
double width
The width of this RoundRectangle2D.
double x
The X coordinate of this RoundRectangle2D.
double y
The Y coordinate of this RoundRectangle2D.

Constructor Summary

Constructor Description
Double()
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 getArcHeight()
Gets the height of the arc that rounds off the corners.
double getArcWidth()
Gets the width of the arc that rounds off the corners.
Rectangle2D getBounds2D()
Returns a high precision and more accurate bounding box of the Shape than the getBounds method.
double getHeight()
Returns the height of the framing rectangle in double precision.
double getWidth()
Returns the width of the framing rectangle in double precision.
double getX()
Returns the X coordinate of the upper-left corner of the framing rectangle in double precision.
double getY()
Returns the Y coordinate of the upper-left corner of the framing rectangle in double precision.
boolean isEmpty()
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 setRoundRect(RoundRectangle2D rr)
Sets this RoundRectangle2D to be the same as the specified RoundRectangle2D.

Methods declared in class java.awt.geom.RoundRectangle2D

contains, contains, equals, getPathIterator, hashCode, intersects, setFrame

Methods declared in class java.lang.Object

finalize, getClass, notify, notifyAll, toString, wait, wait, wait

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:

© 1993, 2023, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/21/docs/api/java.desktop/java/awt/geom/RoundRectangle2D.Double.html