Class RoundRectangle2D.Double
java.lang.Object
java.awt.geom.RectangularShape
java.awt.geom.RoundRectangle2D
java.awt.geom.RoundRectangle2D.Double
- All Implemented Interfaces:
Shape
,Serializable
,Cloneable
- Enclosing class:
RoundRectangle2D
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 inherited from class java.awt.geom.RoundRectangle2D
RoundRectangle2D.Double, RoundRectangle2D.Float
-
Field Summary
Modifier and TypeFieldDescriptiondouble
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 thisRoundRectangle2D
.double
The width of thisRoundRectangle2D
.double
The X coordinate of thisRoundRectangle2D
.double
The Y coordinate of thisRoundRectangle2D
. -
Constructor Summary
ConstructorDescriptionDouble()
Constructs a newRoundRectangle2D
, 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 aRoundRectangle2D
from the specifieddouble
coordinates. -
Method Summary
Modifier and TypeMethodDescriptiondouble
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 theShape
than thegetBounds
method.double
Returns the height of the framing rectangle indouble
precision.double
getWidth()
Returns the width of the framing rectangle indouble
precision.double
getX()
Returns the X coordinate of the upper-left corner of the framing rectangle indouble
precision.double
getY()
Returns the Y coordinate of the upper-left corner of the framing rectangle indouble
precision.boolean
isEmpty()
Determines whether theRectangularShape
is empty.void
setRoundRect
(double x, double y, double w, double h, double arcw, double arch) Sets the location, size, and corner radii of thisRoundRectangle2D
to the specifieddouble
values.void
Sets thisRoundRectangle2D
to be the same as the specifiedRoundRectangle2D
.Methods inherited from class java.awt.geom.RoundRectangle2D
contains, contains, equals, getPathIterator, hashCode, intersects, setFrame
Methods inherited from class java.awt.geom.RectangularShape
clone, contains, contains, getBounds, getCenterX, getCenterY, getFrame, getMaxX, getMaxY, getMinX, getMinY, getPathIterator, intersects, setFrame, setFrame, setFrameFromCenter, setFrameFromCenter, setFrameFromDiagonal, setFrameFromDiagonal
-
Field Details
-
x
public double xThe X coordinate of thisRoundRectangle2D
.- Since:
- 1.2
-
y
public double yThe Y coordinate of thisRoundRectangle2D
.- Since:
- 1.2
-
width
public double widthThe width of thisRoundRectangle2D
.- Since:
- 1.2
-
height
public double heightThe height of thisRoundRectangle2D
.- Since:
- 1.2
-
arcwidth
public double arcwidthThe width of the arc that rounds off the corners.- Since:
- 1.2
-
archeight
public double archeightThe height of the arc that rounds off the corners.- Since:
- 1.2
-
-
Constructor Details
-
Double
public Double()Constructs a newRoundRectangle2D
, 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 aRoundRectangle2D
from the specifieddouble
coordinates.- Parameters:
x
- the X coordinate of the newly constructedRoundRectangle2D
y
- the Y coordinate of the newly constructedRoundRectangle2D
w
- the width to which to set the newly constructedRoundRectangle2D
h
- the height to which to set the newly constructedRoundRectangle2D
arcw
- the width of the arc to use to round off the corners of the newly constructedRoundRectangle2D
arch
- the height of the arc to use to round off the corners of the newly constructedRoundRectangle2D
- Since:
- 1.2
-
-
Method Details
-
getX
public double getX()Returns the X coordinate of the upper-left corner of the framing rectangle indouble
precision.- Specified by:
getX
in classRectangularShape
- 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 indouble
precision.- Specified by:
getY
in classRectangularShape
- 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 indouble
precision.- Specified by:
getWidth
in classRectangularShape
- Returns:
- the width of the framing rectangle.
- Since:
- 1.2
-
getHeight
public double getHeight()Returns the height of the framing rectangle indouble
precision.- Specified by:
getHeight
in classRectangularShape
- 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 classRoundRectangle2D
- 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 classRoundRectangle2D
- Returns:
- the height of the arc that rounds off the corners
of this
RoundRectangle2D
. - Since:
- 1.2
-
isEmpty
public boolean isEmpty()Determines whether theRectangularShape
is empty. When theRectangularShape
is empty, it encloses no area.- Specified by:
isEmpty
in classRectangularShape
- Returns:
true
if theRectangularShape
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 thisRoundRectangle2D
to the specifieddouble
values.- Specified by:
setRoundRect
in classRoundRectangle2D
- Parameters:
x
- the X coordinate to which to set the location of thisRoundRectangle2D
y
- the Y coordinate to which to set the location of thisRoundRectangle2D
w
- the width to which to set thisRoundRectangle2D
h
- the height to which to set thisRoundRectangle2D
arcw
- the width to which to set the arc of thisRoundRectangle2D
arch
- the height to which to set the arc of thisRoundRectangle2D
- Since:
- 1.2
-
setRoundRect
Sets thisRoundRectangle2D
to be the same as the specifiedRoundRectangle2D
.- Overrides:
setRoundRect
in classRoundRectangle2D
- Parameters:
rr
- the specifiedRoundRectangle2D
- Since:
- 1.2
-
getBounds2D
Returns a high precision and more accurate bounding box of theShape
than thegetBounds
method. Note that there is no guarantee that the returnedRectangle2D
is the smallest bounding box that encloses theShape
, only that theShape
lies entirely within the indicatedRectangle2D
. The bounding box returned by this method is usually tighter than that returned by thegetBounds
method and never fails due to overflow problems since the return value can be an instance of theRectangle2D
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 returnedbounds
object, but only in cases where those points are also not considered contained in the originalshape
.If a
point
is inside theshape
according to thecontains(point)
method, then it must be inside the returnedRectangle2D
bounds object according to thecontains(point)
method of thebounds
. Specifically:shape.contains(p)
requiresbounds.contains(p)
If a
point
is not inside theshape
, then it might still be contained in thebounds
object:bounds.contains(p)
does not implyshape.contains(p)
- Specified by:
getBounds2D
in interfaceShape
- Returns:
- an instance of
Rectangle2D
that is a high-precision bounding box of theShape
. - Since:
- 1.2
- See Also:
-