- java.lang.Object
-
- java.awt.geom.RectangularShape
-
- java.awt.geom.Rectangle2D
-
- java.awt.geom.Rectangle2D.Double
-
- All Implemented Interfaces:
- Shape, Serializable, Cloneable
- Enclosing class:
- Rectangle2D
public static class Rectangle2D.Double extends Rectangle2D implements Serializable
TheDouble
class defines a rectangle specified in double coordinates.- Since:
- 1.2
- See Also:
- Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class java.awt.geom.Rectangle2D
Rectangle2D.Double, Rectangle2D.Float
-
-
Field Summary
Fields Modifier and Type Field and Description double
height
The height of thisRectangle2D
.double
width
The width of thisRectangle2D
.double
x
The X coordinate of thisRectangle2D
.double
y
The Y coordinate of thisRectangle2D
.-
Fields inherited from class java.awt.geom.Rectangle2D
OUT_BOTTOM, OUT_LEFT, OUT_RIGHT, OUT_TOP
-
-
Constructor Summary
Constructors Constructor and Description Rectangle2D.Double()
Constructs a newRectangle2D
, initialized to location (0, 0) and size (0, 0).Rectangle2D.Double(double x, double y, double w, double h)
Constructs and initializes aRectangle2D
from the specifieddouble
coordinates.
-
Method Summary
Methods Modifier and Type Method and Description Rectangle2D
createIntersection(Rectangle2D r)
Returns a newRectangle2D
object representing the intersection of thisRectangle2D
with the specifiedRectangle2D
.Rectangle2D
createUnion(Rectangle2D r)
Returns a newRectangle2D
object representing the union of thisRectangle2D
with the specifiedRectangle2D
.Rectangle2D
getBounds2D()
Returns a high precision and more accurate bounding box of theShape
than thegetBounds
method.double
getHeight()
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.int
outcode(double x, double y)
Determines where the specified coordinates lie with respect to thisRectangle2D
.void
setRect(double x, double y, double w, double h)
Sets the location and size of thisRectangle2D
to the specifieddouble
values.void
setRect(Rectangle2D r)
Sets thisRectangle2D
to be the same as the specifiedRectangle2D
.String
toString()
Returns theString
representation of thisRectangle2D
.-
Methods inherited from class java.awt.geom.Rectangle2D
add, add, add, contains, contains, equals, getPathIterator, getPathIterator, hashCode, intersect, intersects, intersectsLine, intersectsLine, outcode, setFrame, union
-
Methods inherited from class java.awt.geom.RectangularShape
clone, contains, contains, getBounds, getCenterX, getCenterY, getFrame, getMaxX, getMaxY, getMinX, getMinY, intersects, setFrame, setFrame, setFrameFromCenter, setFrameFromCenter, setFrameFromDiagonal, setFrameFromDiagonal
-
-
-
-
Field Detail
-
x
public double x
The X coordinate of thisRectangle2D
.- Since:
- 1.2
-
y
public double y
The Y coordinate of thisRectangle2D
.- Since:
- 1.2
-
width
public double width
The width of thisRectangle2D
.- Since:
- 1.2
-
height
public double height
The height of thisRectangle2D
.- Since:
- 1.2
-
-
Constructor Detail
-
Rectangle2D.Double
public Rectangle2D.Double()
Constructs a newRectangle2D
, initialized to location (0, 0) and size (0, 0).- Since:
- 1.2
-
Rectangle2D.Double
public Rectangle2D.Double(double x, double y, double w, double h)
Constructs and initializes aRectangle2D
from the specifieddouble
coordinates.- Parameters:
x
- the X coordinate of the upper-left corner of the newly constructedRectangle2D
y
- the Y coordinate of the upper-left corner of the newly constructedRectangle2D
w
- the width of the newly constructedRectangle2D
h
- the height of the newly constructedRectangle2D
- Since:
- 1.2
-
-
Method Detail
-
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
-
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
-
setRect
public void setRect(double x, double y, double w, double h)
Sets the location and size of thisRectangle2D
to the specifieddouble
values.- Specified by:
setRect
in classRectangle2D
- Parameters:
x
- the X coordinate of the upper-left corner of thisRectangle2D
y
- the Y coordinate of the upper-left corner of thisRectangle2D
w
- the width of thisRectangle2D
h
- the height of thisRectangle2D
- Since:
- 1.2
-
setRect
public void setRect(Rectangle2D r)
Sets thisRectangle2D
to be the same as the specifiedRectangle2D
.- Overrides:
setRect
in classRectangle2D
- Parameters:
r
- the specifiedRectangle2D
- Since:
- 1.2
-
outcode
public int outcode(double x, double y)
Determines where the specified coordinates lie with respect to thisRectangle2D
. This method computes a binary OR of the appropriate mask values indicating, for each side of thisRectangle2D
, whether or not the specified coordinates are on the same side of the edge as the rest of thisRectangle2D
.- Specified by:
outcode
in classRectangle2D
- Parameters:
x
- the specified X coordinatey
- the specified Y coordinate- Returns:
- the logical OR of all appropriate out codes.
- Since:
- 1.2
- See Also:
Rectangle2D.OUT_LEFT
,Rectangle2D.OUT_TOP
,Rectangle2D.OUT_RIGHT
,Rectangle2D.OUT_BOTTOM
-
getBounds2D
public Rectangle2D 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
- Overrides:
getBounds2D
in classRectangle2D
- Returns:
- an instance of
Rectangle2D
that is a high-precision bounding box of theShape
. - Since:
- 1.2
- See Also:
Shape.getBounds()
-
createIntersection
public Rectangle2D createIntersection(Rectangle2D r)
Returns a newRectangle2D
object representing the intersection of thisRectangle2D
with the specifiedRectangle2D
.- Specified by:
createIntersection
in classRectangle2D
- Parameters:
r
- theRectangle2D
to be intersected with thisRectangle2D
- Returns:
- the largest
Rectangle2D
contained in both the specifiedRectangle2D
and in thisRectangle2D
. - Since:
- 1.2
-
createUnion
public Rectangle2D createUnion(Rectangle2D r)
Returns a newRectangle2D
object representing the union of thisRectangle2D
with the specifiedRectangle2D
.- Specified by:
createUnion
in classRectangle2D
- Parameters:
r
- theRectangle2D
to be combined with thisRectangle2D
- Returns:
- the smallest
Rectangle2D
containing both the specifiedRectangle2D
and thisRectangle2D
. - Since:
- 1.2
-
-
Document created the 11/06/2005, last modified the 04/03/2020
Source of the printed document:https://www.gaudry.be/en/java-api-rf-java/awt/geom/Rectangle2D.Double.html
The infobrol is a personal site whose content is my sole responsibility. The text is available under CreativeCommons license (BY-NC-SA). More info on the terms of use and the author.
References
These references and links indicate documents consulted during the writing of this page, or which may provide additional information, but the authors of these sources can not be held responsible for the content of this page.
The author This site is solely responsible for the way in which the various concepts, and the freedoms that are taken with the reference works, are presented here. Remember that you must cross multiple source information to reduce the risk of errors.