- java.lang.Object
- 
- java.awt.geom.RectangularShape
- 
- java.awt.geom.Rectangle2D
- 
- java.awt.Rectangle
 
 
 
- 
- All Implemented Interfaces:
- Shape,- Serializable,- Cloneable
 - Direct Known Subclasses:
- DefaultCaret
 
 public class Rectangle extends Rectangle2D implements Shape, Serializable ARectanglespecifies an area in a coordinate space that is enclosed by theRectangleobject's upper-left point(x,y)in the coordinate space, its width, and its height.A Rectangleobject'swidthandheightarepublicfields. The constructors that create aRectangle, and the methods that can modify one, do not prevent setting a negative value for width or height.A Rectanglewhose width or height is exactly zero has location along those axes with zero dimension, but is otherwise considered empty. TheisEmpty()method will return true for such aRectangle. Methods which test if an emptyRectanglecontains or intersects a point or rectangle will always return false if either dimension is zero. Methods which combine such aRectanglewith a point or rectangle will include the location of theRectangleon that axis in the result as if theadd(Point)method were being called.Methods which affect only the location of a Rectanglewill operate on its location regardless of whether or not it has a negative or zero dimension along either axis.Note that a Rectangleconstructed with the default no-argument constructor will have dimensions of0x0and therefore be empty. ThatRectanglewill still have a location of(0,0)and will contribute that location to the union and add operations. Code attempting to accumulate the bounds of a set of points should therefore initially construct theRectanglewith a specifically negative width and height or it should use the first point in the set to construct theRectangle. For example:
 or if we know that the points array contains at least one point:Rectangle bounds = new Rectangle(0, 0, -1, -1); for (int i = 0; i < points.length; i++) { bounds.add(points[i]); }Rectangle bounds = new Rectangle(points[0]); for (int i = 1; i < points.length; i++) { bounds.add(points[i]); }This class uses 32-bit integers to store its location and dimensions. Frequently operations may produce a result that exceeds the range of a 32-bit integer. The methods will calculate their results in a way that avoids any 32-bit overflow for intermediate results and then choose the best representation to store the final results back into the 32-bit fields which hold the location and dimensions. The location of the result will be stored into the xandyfields by clipping the true result to the nearest 32-bit value. The values stored into thewidthandheightdimension fields will be chosen as the 32-bit values that encompass the largest part of the true result as possible. Generally this means that the dimension will be clipped independently to the range of 32-bit integers except that if the location had to be moved to store it into its pair of 32-bit fields then the dimensions will be adjusted relative to the "best representation" of the location. If the true result had a negative dimension and was therefore non-existent along one or both axes, the stored dimensions will be negative numbers in those axes. If the true result had a location that could be represented within the range of 32-bit integers, but zero dimension along one or both axes, then the stored dimensions will be zero in those axes.- Since:
- 1.0
- See Also:
- Serialized Form
 
- 
- 
Nested Class Summary- 
Nested classes/interfaces declared in class java.awt.geom.Rectangle2DRectangle2D.Double, Rectangle2D.Float
 
- 
 - 
Field SummaryFields Modifier and Type Field Description intheightThe height of theRectangle.intwidthThe width of theRectangle.intxThe X coordinate of the upper-left corner of theRectangle.intyThe Y coordinate of the upper-left corner of theRectangle.- 
Fields declared in class java.awt.geom.Rectangle2DOUT_BOTTOM, OUT_LEFT, OUT_RIGHT, OUT_TOP
 
- 
 - 
Constructor SummaryConstructors Constructor Description Rectangle()Constructs a newRectanglewhose upper-left corner is at (0, 0) in the coordinate space, and whose width and height are both zero.Rectangle(int width, int height)Constructs a newRectanglewhose upper-left corner is at (0, 0) in the coordinate space, and whose width and height are specified by the arguments of the same name.Rectangle(int x, int y, int width, int height)Constructs a newRectanglewhose upper-left corner is specified as(x,y)and whose width and height are specified by the arguments of the same name.Rectangle(Dimension d)Constructs a newRectanglewhose top left corner is (0, 0) and whose width and height are specified by theDimensionargument.Rectangle(Point p)Constructs a newRectanglewhose upper-left corner is the specifiedPoint, and whose width and height are both zero.Rectangle(Point p, Dimension d)Rectangle(Rectangle r)Constructs a newRectangle, initialized to match the values of the specifiedRectangle.
 - 
Method SummaryAll Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description voidadd(int newx, int newy)Adds a point, specified by the integer argumentsnewx,newyto the bounds of thisRectangle.voidadd(Point pt)Adds the specifiedPointto the bounds of thisRectangle.voidadd(Rectangle r)Adds aRectangleto thisRectangle.booleancontains(int x, int y)Checks whether or not thisRectanglecontains the point at the specified location(x,y).booleancontains(int X, int Y, int W, int H)Checks whether thisRectangleentirely contains theRectangleat the specified location(X,Y)with the specified dimensions(W,H).booleancontains(Point p)Checks whether or not thisRectanglecontains the specifiedPoint.booleancontains(Rectangle r)Checks whether or not thisRectangleentirely contains the specifiedRectangle.Rectangle2DcreateIntersection(Rectangle2D r)Returns a newRectangle2Dobject representing the intersection of thisRectangle2Dwith the specifiedRectangle2D.Rectangle2DcreateUnion(Rectangle2D r)Returns a newRectangle2Dobject representing the union of thisRectangle2Dwith the specifiedRectangle2D.booleanequals(Object obj)Checks whether two rectangles are equal.RectanglegetBounds()Gets the boundingRectangleof thisRectangle.Rectangle2DgetBounds2D()Returns a high precision and more accurate bounding box of theShapethan thegetBoundsmethod.doublegetHeight()Returns the height of the boundingRectangleindoubleprecision.PointgetLocation()Returns the location of thisRectangle.DimensiongetSize()Gets the size of thisRectangle, represented by the returnedDimension.doublegetWidth()Returns the width of the boundingRectangleindoubleprecision.doublegetX()Returns the X coordinate of the boundingRectangleindoubleprecision.doublegetY()Returns the Y coordinate of the boundingRectangleindoubleprecision.voidgrow(int h, int v)Resizes theRectangleboth horizontally and vertically.booleaninside(int X, int Y)Deprecated.As of JDK version 1.1, replaced bycontains(int, int).Rectangleintersection(Rectangle r)Computes the intersection of thisRectanglewith the specifiedRectangle.booleanintersects(Rectangle r)Determines whether or not thisRectangleand the specifiedRectangleintersect.booleanisEmpty()Determines whether theRectangularShapeis empty.voidmove(int x, int y)Deprecated.As of JDK version 1.1, replaced bysetLocation(int, int).intoutcode(double x, double y)Determines where the specified coordinates lie with respect to thisRectangle2D.voidreshape(int x, int y, int width, int height)Deprecated.As of JDK version 1.1, replaced bysetBounds(int, int, int, int).voidresize(int width, int height)Deprecated.As of JDK version 1.1, replaced bysetSize(int, int).voidsetBounds(int x, int y, int width, int height)Sets the boundingRectangleof thisRectangleto the specifiedx,y,width, andheight.voidsetBounds(Rectangle r)Sets the boundingRectangleof thisRectangleto match the specifiedRectangle.voidsetLocation(int x, int y)Moves thisRectangleto the specified location.voidsetLocation(Point p)Moves thisRectangleto the specified location.voidsetRect(double x, double y, double width, double height)Sets the bounds of thisRectangleto the integer bounds which encompass the specifiedx,y,width, andheight.voidsetSize(int width, int height)Sets the size of thisRectangleto the specified width and height.voidsetSize(Dimension d)Sets the size of thisRectangleto match the specifiedDimension.StringtoString()Returns aStringrepresenting thisRectangleand its values.voidtranslate(int dx, int dy)Translates thisRectanglethe indicated distance, to the right along the X coordinate axis, and downward along the Y coordinate axis.Rectangleunion(Rectangle r)Computes the union of thisRectanglewith the specifiedRectangle.- 
Methods declared in class java.awt.geom.Rectangle2Dadd, add, add, contains, contains, getPathIterator, getPathIterator, hashCode, intersect, intersects, intersectsLine, intersectsLine, outcode, setFrame, setRect, union
 - 
Methods declared in class java.awt.geom.RectangularShapeclone, contains, contains, getCenterX, getCenterY, getFrame, getMaxX, getMaxY, getMinX, getMinY, intersects, setFrame, setFrame, setFrameFromCenter, setFrameFromCenter, setFrameFromDiagonal, setFrameFromDiagonal
 - 
Methods declared in interface java.awt.Shapecontains, contains, contains, contains, getPathIterator, getPathIterator, intersects, intersects
 
- 
 
- 
- 
- 
Field Detail- 
xpublic int x The X coordinate of the upper-left corner of theRectangle.- Since:
- 1.0
- See Also:
- setLocation(int, int),- getLocation()
 
 - 
ypublic int y The Y coordinate of the upper-left corner of theRectangle.- Since:
- 1.0
- See Also:
- setLocation(int, int),- getLocation()
 
 - 
widthpublic int width The width of theRectangle.- Since:
- 1.0
- See Also:
- setSize(int, int),- getSize()
 
 - 
heightpublic int height The height of theRectangle.- Since:
- 1.0
- See Also:
- setSize(int, int),- getSize()
 
 
- 
 - 
Constructor Detail- 
Rectanglepublic Rectangle() Constructs a newRectanglewhose upper-left corner is at (0, 0) in the coordinate space, and whose width and height are both zero.
 - 
Rectanglepublic Rectangle(Rectangle r) Constructs a newRectangle, initialized to match the values of the specifiedRectangle.- Parameters:
- r- the- Rectanglefrom which to copy initial values to a newly constructed- Rectangle
- Since:
- 1.1
 
 - 
Rectanglepublic Rectangle(int x, int y, int width, int height)Constructs a newRectanglewhose upper-left corner is specified as(x,y)and whose width and height are specified by the arguments of the same name.- Parameters:
- x- the specified X coordinate
- y- the specified Y coordinate
- width- the width of the- Rectangle
- height- the height of the- Rectangle
- Since:
- 1.0
 
 - 
Rectanglepublic Rectangle(int width, int height)Constructs a newRectanglewhose upper-left corner is at (0, 0) in the coordinate space, and whose width and height are specified by the arguments of the same name.- Parameters:
- width- the width of the- Rectangle
- height- the height of the- Rectangle
 
 - 
Rectanglepublic Rectangle(Point p, Dimension d) Constructs a newRectanglewhose upper-left corner is specified by thePointargument, and whose width and height are specified by theDimensionargument.- Parameters:
- p- a- Pointthat is the upper-left corner of the- Rectangle
- d- a- Dimension, representing the width and height of the- Rectangle
 
 - 
Rectanglepublic Rectangle(Point p) Constructs a newRectanglewhose upper-left corner is the specifiedPoint, and whose width and height are both zero.- Parameters:
- p- a- Pointthat is the top left corner of the- Rectangle
 
 - 
Rectanglepublic Rectangle(Dimension d) Constructs a newRectanglewhose top left corner is (0, 0) and whose width and height are specified by theDimensionargument.- Parameters:
- d- a- Dimension, specifying width and height
 
 
- 
 - 
Method Detail- 
getXpublic double getX() Returns the X coordinate of the boundingRectangleindoubleprecision.- Specified by:
- getXin class- RectangularShape
- Returns:
- the X coordinate of the bounding Rectangle.
 
 - 
getYpublic double getY() Returns the Y coordinate of the boundingRectangleindoubleprecision.- Specified by:
- getYin class- RectangularShape
- Returns:
- the Y coordinate of the bounding Rectangle.
 
 - 
getWidthpublic double getWidth() Returns the width of the boundingRectangleindoubleprecision.- Specified by:
- getWidthin class- RectangularShape
- Returns:
- the width of the bounding Rectangle.
 
 - 
getHeightpublic double getHeight() Returns the height of the boundingRectangleindoubleprecision.- Specified by:
- getHeightin class- RectangularShape
- Returns:
- the height of the bounding Rectangle.
 
 - 
getBoundspublic Rectangle getBounds() Gets the boundingRectangleof thisRectangle.This method is included for completeness, to parallel the getBoundsmethod ofComponent.- Specified by:
- getBoundsin interface- Shape
- Overrides:
- getBoundsin class- RectangularShape
- Returns:
- a new Rectangle, equal to the boundingRectanglefor thisRectangle.
- Since:
- 1.1
- See Also:
- Component.getBounds(),- setBounds(Rectangle),- setBounds(int, int, int, int)
 
 - 
getBounds2Dpublic Rectangle2D getBounds2D() Returns a high precision and more accurate bounding box of theShapethan thegetBoundsmethod. Note that there is no guarantee that the returnedRectangle2Dis the smallest bounding box that encloses theShape, only that theShapelies entirely within the indicatedRectangle2D. The bounding box returned by this method is usually tighter than that returned by thegetBoundsmethod and never fails due to overflow problems since the return value can be an instance of theRectangle2Dthat 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 shapemay not be considered contained in the returnedboundsobject, but only in cases where those points are also not considered contained in the originalshape.If a pointis inside theshapeaccording to thecontains(point)method, then it must be inside the returnedRectangle2Dbounds object according to thecontains(point)method of thebounds. Specifically:shape.contains(p)requiresbounds.contains(p)If a pointis not inside theshape, then it might still be contained in theboundsobject:bounds.contains(p)does not implyshape.contains(p)- Specified by:
- getBounds2Din interface- Shape
- Overrides:
- getBounds2Din class- Rectangle2D
- Returns:
- an instance of Rectangle2Dthat is a high-precision bounding box of theShape.
- Since:
- 1.2
- See Also:
- Shape.getBounds()
 
 - 
setBoundspublic void setBounds(Rectangle r) Sets the boundingRectangleof thisRectangleto match the specifiedRectangle.This method is included for completeness, to parallel the setBoundsmethod ofComponent.- Parameters:
- r- the specified- Rectangle
- Since:
- 1.1
- See Also:
- getBounds(),- Component.setBounds(java.awt.Rectangle)
 
 - 
setBoundspublic void setBounds(int x, int y, int width, int height)Sets the boundingRectangleof thisRectangleto the specifiedx,y,width, andheight.This method is included for completeness, to parallel the setBoundsmethod ofComponent.- Parameters:
- x- the new X coordinate for the upper-left corner of this- Rectangle
- y- the new Y coordinate for the upper-left corner of this- Rectangle
- width- the new width for this- Rectangle
- height- the new height for this- Rectangle
- Since:
- 1.1
- See Also:
- getBounds(),- Component.setBounds(int, int, int, int)
 
 - 
setRectpublic void setRect(double x, double y, double width, double height)Sets the bounds of thisRectangleto the integer bounds which encompass the specifiedx,y,width, andheight. If the parameters specify aRectanglethat exceeds the maximum range of integers, the result will be the best representation of the specifiedRectangleintersected with the maximum integer bounds.- Specified by:
- setRectin class- Rectangle2D
- Parameters:
- x- the X coordinate of the upper-left corner of the specified rectangle
- y- the Y coordinate of the upper-left corner of the specified rectangle
- width- the width of the specified rectangle
- height- the new height of the specified rectangle
 
 - 
reshape@Deprecated public void reshape(int x, int y, int width, int height) Deprecated.As of JDK version 1.1, replaced bysetBounds(int, int, int, int).Sets the boundingRectangleof thisRectangleto the specifiedx,y,width, andheight.- Parameters:
- x- the new X coordinate for the upper-left corner of this- Rectangle
- y- the new Y coordinate for the upper-left corner of this- Rectangle
- width- the new width for this- Rectangle
- height- the new height for this- Rectangle
 
 - 
getLocationpublic Point getLocation() Returns the location of thisRectangle.This method is included for completeness, to parallel the getLocationmethod ofComponent.- Returns:
- the Pointthat is the upper-left corner of thisRectangle.
- Since:
- 1.1
- See Also:
- Component.getLocation(),- setLocation(Point),- setLocation(int, int)
 
 - 
setLocationpublic void setLocation(Point p) Moves thisRectangleto the specified location.This method is included for completeness, to parallel the setLocationmethod ofComponent.- Parameters:
- p- the- Pointspecifying the new location for this- Rectangle
- Since:
- 1.1
- See Also:
- Component.setLocation(java.awt.Point),- getLocation()
 
 - 
setLocationpublic void setLocation(int x, int y)Moves thisRectangleto the specified location.This method is included for completeness, to parallel the setLocationmethod ofComponent.- Parameters:
- x- the X coordinate of the new location
- y- the Y coordinate of the new location
- Since:
- 1.1
- See Also:
- getLocation(),- Component.setLocation(int, int)
 
 - 
move@Deprecated public void move(int x, int y) Deprecated.As of JDK version 1.1, replaced bysetLocation(int, int).Moves thisRectangleto the specified location.- Parameters:
- x- the X coordinate of the new location
- y- the Y coordinate of the new location
 
 - 
translatepublic void translate(int dx, int dy)Translates thisRectanglethe indicated distance, to the right along the X coordinate axis, and downward along the Y coordinate axis.- Parameters:
- dx- the distance to move this- Rectanglealong the X axis
- dy- the distance to move this- Rectanglealong the Y axis
- See Also:
- setLocation(int, int),- setLocation(java.awt.Point)
 
 - 
getSizepublic Dimension getSize() Gets the size of thisRectangle, represented by the returnedDimension.This method is included for completeness, to parallel the getSizemethod ofComponent.- Returns:
- a Dimension, representing the size of thisRectangle.
- Since:
- 1.1
- See Also:
- Component.getSize(),- setSize(Dimension),- setSize(int, int)
 
 - 
setSizepublic void setSize(Dimension d) Sets the size of thisRectangleto match the specifiedDimension.This method is included for completeness, to parallel the setSizemethod ofComponent.- Parameters:
- d- the new size for the- Dimensionobject
- Since:
- 1.1
- See Also:
- Component.setSize(java.awt.Dimension),- getSize()
 
 - 
setSizepublic void setSize(int width, int height)Sets the size of thisRectangleto the specified width and height.This method is included for completeness, to parallel the setSizemethod ofComponent.- Parameters:
- width- the new width for this- Rectangle
- height- the new height for this- Rectangle
- Since:
- 1.1
- See Also:
- Component.setSize(int, int),- getSize()
 
 - 
resize@Deprecated public void resize(int width, int height) Deprecated.As of JDK version 1.1, replaced bysetSize(int, int).Sets the size of thisRectangleto the specified width and height.- Parameters:
- width- the new width for this- Rectangle
- height- the new height for this- Rectangle
 
 - 
containspublic boolean contains(Point p) Checks whether or not thisRectanglecontains the specifiedPoint.- Parameters:
- p- the- Pointto test
- Returns:
- trueif the specified- Pointis inside this- Rectangle;- falseotherwise.
- Since:
- 1.1
 
 - 
containspublic boolean contains(int x, int y)Checks whether or not thisRectanglecontains the point at the specified location(x,y).- Parameters:
- x- the specified X coordinate
- y- the specified Y coordinate
- Returns:
- trueif the point- (x,y)is inside this- Rectangle;- falseotherwise.
- Since:
- 1.1
 
 - 
containspublic boolean contains(Rectangle r) Checks whether or not thisRectangleentirely contains the specifiedRectangle.- Parameters:
- r- the specified- Rectangle
- Returns:
- trueif the- Rectangleis contained entirely inside this- Rectangle;- falseotherwise
- Since:
- 1.2
 
 - 
containspublic boolean contains(int X, int Y, int W, int H)Checks whether thisRectangleentirely contains theRectangleat the specified location(X,Y)with the specified dimensions(W,H).- Parameters:
- X- the specified X coordinate
- Y- the specified Y coordinate
- W- the width of the- Rectangle
- H- the height of the- Rectangle
- Returns:
- trueif the- Rectanglespecified by- (X, Y, W, H)is entirely enclosed inside this- Rectangle;- falseotherwise.
- Since:
- 1.1
 
 - 
inside@Deprecated public boolean inside(int X, int Y) Deprecated.As of JDK version 1.1, replaced bycontains(int, int).Checks whether or not thisRectanglecontains the point at the specified location(X,Y).- Parameters:
- X- the specified X coordinate
- Y- the specified Y coordinate
- Returns:
- trueif the point- (X,Y)is inside this- Rectangle;- falseotherwise.
 
 - 
intersectspublic boolean intersects(Rectangle r) Determines whether or not thisRectangleand the specifiedRectangleintersect. Two rectangles intersect if their intersection is nonempty.- Parameters:
- r- the specified- Rectangle
- Returns:
- trueif the specified- Rectangleand this- Rectangleintersect;- falseotherwise.
 
 - 
intersectionpublic Rectangle intersection(Rectangle r) Computes the intersection of thisRectanglewith the specifiedRectangle. Returns a newRectanglethat represents the intersection of the two rectangles. If the two rectangles do not intersect, the result will be an empty rectangle.- Parameters:
- r- the specified- Rectangle
- Returns:
- the largest Rectanglecontained in both the specifiedRectangleand in thisRectangle; or if the rectangles do not intersect, an empty rectangle.
 
 - 
unionpublic Rectangle union(Rectangle r) Computes the union of thisRectanglewith the specifiedRectangle. Returns a newRectanglethat represents the union of the two rectangles.If either Rectanglehas any dimension less than zero the rules for non-existent rectangles apply. If only one has a dimension less than zero, then the result will be a copy of the otherRectangle. If both have dimension less than zero, then the result will have at least one dimension less than zero.If the resulting Rectanglewould have a dimension too large to be expressed as anint, the result will have a dimension ofInteger.MAX_VALUEalong that dimension.- Parameters:
- r- the specified- Rectangle
- Returns:
- the smallest Rectanglecontaining both the specifiedRectangleand thisRectangle.
 
 - 
addpublic void add(int newx, int newy)Adds a point, specified by the integer argumentsnewx,newyto the bounds of thisRectangle.If this Rectanglehas any dimension less than zero, the rules for non-existent rectangles apply. In that case, the new bounds of thisRectanglewill have a location equal to the specified coordinates and width and height equal to zero.After adding a point, a call to containswith the added point as an argument does not necessarily returntrue. Thecontainsmethod does not returntruefor points on the right or bottom edges of aRectangle. Therefore, if the added point falls on the right or bottom edge of the enlargedRectangle,containsreturnsfalsefor that point. If the specified point must be contained within the newRectangle, a 1x1 rectangle should be added instead:r.add(newx, newy, 1, 1);- Parameters:
- newx- the X coordinate of the new point
- newy- the Y coordinate of the new point
 
 - 
addpublic void add(Point pt) Adds the specifiedPointto the bounds of thisRectangle.If this Rectanglehas any dimension less than zero, the rules for non-existent rectangles apply. In that case, the new bounds of thisRectanglewill have a location equal to the coordinates of the specifiedPointand width and height equal to zero.After adding a Point, a call tocontainswith the addedPointas an argument does not necessarily returntrue. Thecontainsmethod does not returntruefor points on the right or bottom edges of aRectangle. Therefore if the addedPointfalls on the right or bottom edge of the enlargedRectangle,containsreturnsfalsefor thatPoint. If the specified point must be contained within the newRectangle, a 1x1 rectangle should be added instead:r.add(pt.x, pt.y, 1, 1);- Parameters:
- pt- the new- Pointto add to this- Rectangle
 
 - 
addpublic void add(Rectangle r) Adds aRectangleto thisRectangle. The resultingRectangleis the union of the two rectangles.If either Rectanglehas any dimension less than 0, the result will have the dimensions of the otherRectangle. If bothRectangles have at least one dimension less than 0, the result will have at least one dimension less than 0.If either Rectanglehas one or both dimensions equal to 0, the result along those axes with 0 dimensions will be equivalent to the results obtained by adding the corresponding origin coordinate to the result rectangle along that axis, similar to the operation of theadd(Point)method, but contribute no further dimension beyond that.If the resulting Rectanglewould have a dimension too large to be expressed as anint, the result will have a dimension ofInteger.MAX_VALUEalong that dimension.- Parameters:
- r- the specified- Rectangle
 
 - 
growpublic void grow(int h, int v)Resizes theRectangleboth horizontally and vertically.This method modifies the Rectangleso that it ishunits larger on both the left and right side, andvunits larger at both the top and bottom.The new Rectanglehas(x - h, y - v)as its upper-left corner, width of(width + 2h), and a height of(height + 2v).If negative values are supplied for handv, the size of theRectangledecreases accordingly. Thegrowmethod will check for integer overflow and underflow, but does not check whether the resulting values ofwidthandheightgrow from negative to non-negative or shrink from non-negative to negative.- Parameters:
- h- the horizontal expansion
- v- the vertical expansion
 
 - 
isEmptypublic boolean isEmpty() Determines whether theRectangularShapeis empty. When theRectangularShapeis empty, it encloses no area.- Specified by:
- isEmptyin class- RectangularShape
- Returns:
- trueif the- RectangularShapeis empty;- falseotherwise.
- Since:
- 1.2
 
 - 
outcodepublic 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:
- outcodein class- Rectangle2D
- Parameters:
- x- the specified X coordinate
- y- 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
 
 - 
createIntersectionpublic Rectangle2D createIntersection(Rectangle2D r) Returns a newRectangle2Dobject representing the intersection of thisRectangle2Dwith the specifiedRectangle2D.- Specified by:
- createIntersectionin class- Rectangle2D
- Parameters:
- r- the- Rectangle2Dto be intersected with this- Rectangle2D
- Returns:
- the largest Rectangle2Dcontained in both the specifiedRectangle2Dand in thisRectangle2D.
- Since:
- 1.2
 
 - 
createUnionpublic Rectangle2D createUnion(Rectangle2D r) Returns a newRectangle2Dobject representing the union of thisRectangle2Dwith the specifiedRectangle2D.- Specified by:
- createUnionin class- Rectangle2D
- Parameters:
- r- the- Rectangle2Dto be combined with this- Rectangle2D
- Returns:
- the smallest Rectangle2Dcontaining both the specifiedRectangle2Dand thisRectangle2D.
- Since:
- 1.2
 
 - 
equalspublic boolean equals(Object obj) Checks whether two rectangles are equal.The result is trueif and only if the argument is notnulland is aRectangleobject that has the same upper-left corner, width, and height as thisRectangle.- Overrides:
- equalsin class- Rectangle2D
- Parameters:
- obj- the- Objectto compare with this- Rectangle
- Returns:
- trueif the objects are equal;- falseotherwise.
- See Also:
- Object.hashCode(),- HashMap
 
 
- 
 
-