java.lang.Object java.awt.geom.RectangularShape java.awt.geom.Rectangle2D java.awt.Rectangle
A Rectangle specifies an area in a coordinate space that is enclosed by the Rectangle object's top-left point ( x , y ) in the coordinate space, its width, and its height.
A Rectangle object's width and height are public fields. The constructors that create a Rectangle, and the methods that can modify one, do not prevent setting a negative value for width or height.
A Rectangle whose width or height is negative is considered empty. If the Rectangle is empty, then the isEmpty method returns true. No point can be contained by or inside an empty Rectangle. The values of width and height, however, are still valid. An empty Rectangle still has a location in the coordinate space, and methods that change its size or location remain valid. The behavior of methods that operate on more than one Rectangle is undefined if any of the participating Rectangle objects has a negative width or height. These methods include intersects, intersection, and union.
Nested Class Summary |
---|
Nested classes inherited from class java.awt.geom. Rectangle2D |
---|
Rectangle2D.Double , Rectangle2D.Float |
Field Summary | |
---|---|
int |
height
The height of the Rectangle. |
int |
width
The width of the Rectangle. |
int |
x
The x coordinate of the Rectangle. |
int |
y
The y coordinate of the Rectangle. |
Fields inherited from class java.awt.geom. Rectangle2D |
---|
OUT_BOTTOM , OUT_LEFT , OUT_RIGHT , OUT_TOP |
Constructor Summary | |
---|---|
Rectangle
() Constructs a new Rectangle whose top-left corner is at (0, 0) in the coordinate space, and whose width and height are both zero. |
|
Rectangle
(
Dimension
d) Constructs a new Rectangle whose top left corner is (0, 0) and whose width and height are specified by the Dimension argument. |
|
Rectangle
(int width, int height) Constructs a new Rectangle whose top-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 new Rectangle whose top-left corner is specified as (x, y) and whose width and height are specified by the arguments of the same name. |
|
Rectangle
(
Point
p) Constructs a new Rectangle whose top-left corner is the specified Point, and whose width and height are both zero. |
|
Rectangle
(
Point
p,
Dimension
d) Constructs a new Rectangle whose top-left corner is specified by the Point argument, and whose width and height are specified by the Dimension argument. |
|
Rectangle
(
Rectangle
r) Constructs a new Rectangle, initialized to match the values of the specified Rectangle. |
Method Summary | |
---|---|
void |
add
(int newx, int newy) Adds a point, specified by the integer arguments newx and newy, to this Rectangle. |
void |
add
(
Point
pt) Adds the specified Point to this Rectangle. |
void |
add
(
Rectangle
r) Adds a Rectangle to this Rectangle. |
boolean |
contains
(int x, int y) Checks whether or not this Rectangle contains the point at the specified location ( x , y ). |
boolean |
contains
(int X, int Y, int W, int H) Checks whether this Rectangle entirely contains the Rectangle at the specified location ( X , Y ) with the specified dimensions ( W , H ). |
boolean |
contains
(
Point
p) Checks whether or not this Rectangle contains the specified Point. |
boolean |
contains
(
Rectangle
r) Checks whether or not this Rectangle entirely contains the specified Rectangle. |
Rectangle2D |
createIntersection
(
Rectangle2D
r) Returns a new Rectangle2D object representing the intersection of this Rectangle with the specified Rectangle2D. |
Rectangle2D |
createUnion
(
Rectangle2D
r) Returns a new Rectangle2D object representing the union of this Rectangle with the specified Rectangle2D. |
boolean |
equals
(
Object
obj) Checks whether two rectangles are equal. |
Rectangle |
getBounds
() Gets the bounding Rectangle of this Rectangle. |
Rectangle2D |
getBounds2D
() Return the high precision bounding box of this rectangle. |
double |
getHeight
() Returns the height of the bounding Rectangle in double precision. |
Point |
getLocation
() Returns the location of this Rectangle. |
Dimension |
getSize
() Gets the size of this Rectangle, represented by the returned Dimension. |
double |
getWidth
() Returns the width of the bounding Rectangle in double precision. |
double |
getX
() Returns the X coordinate of the bounding Rectangle in double precision. |
double |
getY
() Returns the Y coordinate of the bounding Rectangle in double precision. |
void |
grow
(int h, int v) Resizes the Rectangle both horizontally and vertically. |
boolean |
inside
(int X, int Y) Deprecated. As of JDK version 1.1, replaced by contains(int, int). |
Rectangle |
intersection
(
Rectangle
r) Computes the intersection of this Rectangle with the specified Rectangle. |
boolean |
intersects
(
Rectangle
r) Determines whether or not this Rectangle and the specified Rectangle intersect. |
boolean |
isEmpty
() Determines whether or not this Rectangle is empty. |
void |
move
(int x, int y) Deprecated. As of JDK version 1.1, replaced by setLocation(int, int). |
int |
outcode
(double x, double y) Determines where the specified coordinates lie with respect to this Rectangle. |
void |
reshape
(int x, int y, int width, int height) Deprecated. As of JDK version 1.1, replaced by setBounds(int, int, int, int). |
void |
resize
(int width, int height) Deprecated. As of JDK version 1.1, replaced by setSize(int, int). |
void |
setBounds
(int x, int y, int width, int height) Sets the bounding Rectangle of this Rectangle to the specified x, y, width, and height. |
void |
setBounds
(
Rectangle
r) Sets the bounding Rectangle of this Rectangle to match the specified Rectangle. |
void |
setLocation
(int x, int y) Moves this Rectangle to the specified location. |
void |
setLocation
(
Point
p) Moves this Rectangle to the specified location. |
void |
setRect
(double x, double y, double width, double height) Sets the bounds of this Rectangle to the specified x, y, width, and height. |
void |
setSize
(
Dimension
d) Sets the size of this Rectangle to match the specified Dimension. |
void |
setSize
(int width, int height) Sets the size of this Rectangle to the specified width and height. |
String |
toString
() Returns a String representing this Rectangle and its values. |
void |
translate
(int x, int y) Translates this Rectangle the indicated distance, to the right along the x coordinate axis, and downward along the y coordinate axis. |
Rectangle |
union
(
Rectangle
r) Computes the union of this Rectangle with the specified Rectangle. |
Methods inherited from class java.awt.geom. Rectangle2D |
---|
add , add , add , contains , contains , getPathIterator , getPathIterator , hashCode , intersect , intersects , intersectsLine , intersectsLine , outcode , setFrame , setRect , union |
Methods inherited from class java.awt.geom. RectangularShape |
---|
clone , contains , contains , getCenterX , getCenterY , getFrame , getMaxX , getMaxY , getMinX , getMinY , intersects , setFrame , setFrame , setFrameFromCenter , setFrameFromCenter , setFrameFromDiagonal , setFrameFromDiagonal |
Methods inherited from class java.lang. Object |
---|
finalize , getClass , notify , notifyAll , wait , wait , wait |
Methods inherited from interface java.awt. Shape |
---|
contains , contains , contains , contains , getPathIterator , getPathIterator , intersects , intersects |
Field Detail |
---|
public int x
public int y
public int width
public int height
Constructor Detail |
---|
public Rectangle()
public Rectangle(Rectangle r)
public Rectangle(int x, int y, int width, int height)
public Rectangle(int width, int height)
public Rectangle(Point p, Dimension d)
public Rectangle(Point p)
public Rectangle(Dimension d)
Method Detail |
---|
public double getX()
public double getY()
public double getWidth()
public double getHeight()
public Rectangle getBounds()
This method is included for completeness, to parallel the getBounds method of Component .
public Rectangle2D getBounds2D()
public void setBounds(Rectangle r)
This method is included for completeness, to parallel the setBounds method of Component.
public void setBounds(int x, int y, int width, int height)
This method is included for completeness, to parallel the setBounds method of Component.
public void setRect(double x, double y, double width, double height)
public void reshape(int x, int y, int width, int height)
public Point getLocation()
This method is included for completeness, to parallel the getLocation method of Component.
public void setLocation(Point p)
This method is included for completeness, to parallel the setLocation method of Component.
public void setLocation(int x, int y)
This method is included for completeness, to parallel the setLocation method of Component.
public void move(int x, int y)
public void translate(int x, int y)
public Dimension getSize()
This method is included for completeness, to parallel the getSize method of Component.
public void setSize(Dimension d)
This method is included for completeness, to parallel the setSize method of Component.
public void setSize(int width, int height)
This method is included for completeness, to parallel the setSize method of Component.
public void resize(int width, int height)
public boolean contains(Point p)
public boolean contains(int x, int y)
public boolean contains(Rectangle r)
public boolean contains(int X, int Y, int W, int H)
public boolean inside(int X, int Y)
public boolean intersects(Rectangle r)
public Rectangle intersection(Rectangle r)
public Rectangle union(Rectangle r)
public void add(int newx, int newy)
After adding a point, a call to contains with the added point as an argument does not necessarily return true. The contains method does not return true for points on the right or bottom edges of a Rectangle. Therefore, if the added point falls on the right or bottom edge of the enlarged Rectangle, contains returns false for that point.
public void add(Point pt)
After adding a Point, a call to contains with the added Point as an argument does not necessarily return true. The contains method does not return true for points on the right or bottom edges of a Rectangle. Therefore if the added Point falls on the right or bottom edge of the enlarged Rectangle, contains returns false for that Point.
public void add(Rectangle r)
public void grow(int h, int v)
This method modifies the Rectangle so that it is h units larger on both the left and right side, and v units larger at both the top and bottom.
The new Rectangle has (x - h, y - v) as its top-left corner, a width of width + 2h, and a height of height + 2v.
If negative values are supplied for h and v, the size of the Rectangle decreases accordingly. The grow method does not check whether the resulting values of width and height are non-negative.
public boolean isEmpty()
public int outcode(double x, double y)
public Rectangle2D createIntersection(Rectangle2D r)
public Rectangle2D createUnion(Rectangle2D r)
public boolean equals(Object obj)
The result is true if and only if the argument is not null and is a Rectangle object that has the same top-left corner, width, and height as this Rectangle.
public String toString()