Класс Rectangle
- Все реализуемые интерфейсы:
Shape, Serializable, Cloneable
- Прямые известные подклассы:
DefaultCaret
public class Rectangle extends Rectangle2D implements Shape, Serializable
Rectangle задает область в системе координат, ограниченную верхней левой точкой объекта Rectangle (x,y) в системе координат, его шириной и высотой. Rectangle и width объекта height являются public полями. Конструкторы, создающие Rectangle, и методы, которые могут его изменять, не запрещают задавать отрицательные значения ширины или высоты.
Объект Rectangle, ширина или высота которого в точности равна нулю, имеет местоположение вдоль соответствующих осей с нулевым размером, но в остальном считается пустым. Метод isEmpty() вернет true для такого объекта Rectangle. Методы, проверяющие, содержит ли пустой объект Rectangle точку или прямоугольник либо пересекает ли он их, всегда возвращают false, если хотя бы один из размеров равен нулю. Методы, объединяющие такой объект Rectangle с точкой или прямоугольником, включают местоположение объекта Rectangle по этой оси в результат так, как если бы вызывался метод add(Point).
Методы, влияющие только на местоположение объекта Rectangle, выполняют операции с его местоположением независимо от того, имеет ли он отрицательный или нулевой размер по любой из осей.
Обратите внимание, что объект Rectangle, созданный конструктором без аргументов по умолчанию, будет иметь размеры 0x0 и поэтому будет пустым. При этом местоположение объекта Rectangle будет равно (0,0), и он будет добавлять это местоположение при выполнении операций объединения и добавления. Поэтому код, накапливающий границы набора точек, должен изначально создать объект Rectangle с явно отрицательными шириной и высотой либо использовать первую точку набора для создания объекта Rectangle. Например:
Rectangle bounds = new Rectangle(0, 0, -1, -1);
for (int i = 0; i < points.length; i++) {
bounds.add(points[i]);
}
или, если мы знаем, что массив points содержит хотя бы одну точку: Rectangle bounds = new Rectangle(points[0]);
for (int i = 1; i < points.length; i++) {
bounds.add(points[i]);
}
Этот класс использует 32-разрядные целые числа для хранения местоположения и размеров. При выполнении операций результат часто может выходить за диапазон 32-разрядных целых чисел. Методы вычисляют результаты таким образом, чтобы избежать переполнения 32-разрядного целого числа в промежуточных результатах, а затем выбирают наилучшее представление для сохранения окончательных результатов в 32-разрядных полях, в которых хранятся местоположение и размеры. Местоположение результата сохраняется в полях x и y: истинный результат ограничивается ближайшим 32-разрядным значением. Для полей размеров width и height выбираются такие 32-разрядные значения, которые охватывают максимально возможную часть истинного результата. Как правило, это означает, что размер ограничивается диапазоном 32-разрядных целых чисел независимо от других значений; однако, если местоположение пришлось сместить, чтобы сохранить его в паре 32-разрядных полей, размеры корректируются относительно «наилучшего представления» местоположения. Если истинный результат имел отрицательный размер и поэтому не существовал вдоль одной или обеих осей, сохраненные размеры по этим осям будут отрицательными числами. Если местоположение истинного результата можно было представить в диапазоне 32-разрядных целых чисел, но размер по одной или обеим осям равнялся нулю, сохраненные размеры по этим осям будут равны нулю.
- С момента:
- 1.0
- См. также:
Краткое описание вложенных классов
Вложенные классы/интерфейсы, объявленные в классе Rectangle2D
Rectangle2D.Double, Rectangle2D.Float | Модификатор и тип | Класс | Описание |
|---|---|---|
static class |
Rectangle2D.Double |
Класс Double задает прямоугольник с координатами типа double. |
static class |
Rectangle2D.Float |
Класс Float задает прямоугольник с координатами типа float. |
Краткое описание полей
| Модификатор и тип | Поле | Описание |
|---|---|---|
int |
height |
Высота объекта Rectangle. |
int |
width |
Ширина объекта Rectangle. |
int |
x |
Координата X верхнего левого угла объекта Rectangle. |
int |
y |
Координата Y верхнего левого угла объекта Rectangle. |
Поля, объявленные в классе Rectangle2D
OUT_BOTTOM, OUT_LEFT, OUT_RIGHT, OUT_TOP | Модификатор и тип | Поле | Описание |
|---|---|---|
static final int |
OUT_BOTTOM |
Битовая маска, указывающая, что точка находится ниже этого объекта Rectangle2D. |
static final int |
OUT_LEFT |
Битовая маска, указывающая, что точка находится слева от этого объекта Rectangle2D. |
static final int |
OUT_RIGHT |
Битовая маска, указывающая, что точка находится справа от этого объекта Rectangle2D. |
static final int |
OUT_TOP |
Битовая маска, указывающая, что точка находится выше этого объекта Rectangle2D. |
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
Rectangle() |
Создает новый объект Rectangle, верхний левый угол которого находится в точке (0, 0) в системе координат, а ширина и высота равны нулю. |
Rectangle |
Создает новый объект Rectangle, верхний левый угол которого находится в точке (0, 0) в системе координат, а ширина и высота задаются одноименными аргументами. |
Rectangle |
Создает новый объект Rectangle, верхний левый угол которого задается значением (x,y), а ширина и высота — одноименными аргументами. |
Rectangle |
Создает новый объект Rectangle, верхний левый угол которого находится в точке (0, 0), а ширина и высота задаются аргументом Dimension. |
Rectangle |
Создает новый объект Rectangle, верхний левый угол которого совпадает с указанным Point, а ширина и высота равны нулю. |
Rectangle |
|
Rectangle |
Создает новый объект Rectangle, инициализированный значениями указанного Rectangle. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
void |
add |
Добавляет точку, заданную целочисленными аргументами newx,newy, к границам этого объекта Rectangle. |
void |
add |
Добавляет указанный объект Point к границам этого объекта Rectangle. |
void |
add |
Добавляет объект Rectangle к этому объекту Rectangle. |
boolean |
contains |
Проверяет, содержит ли этот объект Rectangle точку в указанном местоположении (x,y). |
boolean |
contains |
Проверяет, полностью ли этот объект Rectangle содержит объект Rectangle в указанном местоположении (X,Y) и с указанными размерами (W,H). |
boolean |
contains |
Проверяет, содержит ли этот объект Rectangle указанный объект Point. |
boolean |
contains |
Проверяет, полностью ли этот объект Rectangle содержит указанный объект Rectangle. |
Rectangle2D |
createIntersection |
Возвращает новый объект Rectangle2D, представляющий пересечение этого объекта Rectangle2D с указанным объектом Rectangle2D. |
Rectangle2D |
createUnion |
Возвращает новый объект Rectangle2D, представляющий объединение этого объекта Rectangle2D с указанным объектом Rectangle2D. |
boolean |
equals |
Проверяет, равны ли два прямоугольника. |
Rectangle |
getBounds() |
Получает ограничивающий объект Rectangle этого объекта Rectangle. |
Rectangle2D |
getBounds2D() |
Возвращает ограничивающий прямоугольник объекта Shape с более высокой точностью, чем метод getBounds. |
double |
getHeight() |
Возвращает высоту ограничивающего объекта Rectangle с точностью double. |
Point |
getLocation() |
Возвращает местоположение этого объекта Rectangle. |
Dimension |
getSize() |
Получает размер этого объекта Rectangle, представленный возвращаемым объектом Dimension. |
double |
getWidth() |
Возвращает ширину ограничивающего объекта Rectangle с точностью double. |
double |
getX() |
Возвращает координату X ограничивающего объекта Rectangle с точностью double. |
double |
getY() |
Возвращает координату Y ограничивающего объекта Rectangle с точностью double. |
void |
grow |
Изменяет размер объекта Rectangle по горизонтали и вертикали. |
boolean |
inside |
Устарел. |
Rectangle |
intersection |
Вычисляет пересечение этого объекта Rectangle с указанным объектом Rectangle. |
boolean |
intersects |
Определяет, пересекаются ли этот объект Rectangle и указанный объект Rectangle. |
boolean |
isEmpty() |
Определяет, является ли объект RectangularShape пустым. |
void |
move |
Устарел. Начиная с версии JDK 1.1 заменен на setLocation(int, int). |
int |
outcode |
Определяет положение указанных координат относительно этого объекта Rectangle2D. |
void |
reshape |
Устарел. Начиная с версии JDK 1.1 заменен на setBounds(int, int, int, int). |
void |
resize |
Устарел. Начиная с версии JDK 1.1 заменен на setSize(int, int). |
void |
setBounds |
Задает ограничивающий объект Rectangle этого объекта Rectangle указанными значениями x, y, width и height. |
void |
setBounds |
Задает ограничивающий объект Rectangle этого объекта Rectangle в соответствии с указанным объектом Rectangle. |
void |
setLocation |
Перемещает этот объект Rectangle в указанное местоположение. |
void |
setLocation |
Перемещает этот объект Rectangle в указанное местоположение. |
void |
setRect |
Задает границы объекта Rectangle как целочисленные границы, охватывающие указанные значения x, y, width и height. |
void |
setSize |
Задает для объекта Rectangle указанную ширину и высоту. |
void |
setSize |
Задает размер объекта Rectangle в соответствии с указанным объектом Dimension. |
String |
toString() |
Возвращает объект String, представляющий этот объект Rectangle и его значения. |
void |
translate |
Перемещает этот объект Rectangle на указанное расстояние вправо вдоль оси координат X и вниз вдоль оси координат Y. |
Rectangle |
union |
Вычисляет объединение этого объекта Rectangle с указанным объектом Rectangle. |
Методы, объявленные в классе Rectangle2D
add, add, add, contains, contains, getPathIterator, getPathIterator, hashCode, intersect, intersects, intersectsLine, intersectsLine, outcode, setFrame, setRect, union | Модификатор и тип | Метод | Описание |
|---|---|---|
void |
add |
Добавляет точку, заданную аргументами двойной точности newx и newy, к этому объекту Rectangle2D. |
void |
add |
Добавляет объект Point2D pt к этому объекту Rectangle2D. |
void |
add |
Добавляет объект Rectangle2D к этому объекту Rectangle2D. |
boolean |
contains |
Проверяет, находятся ли указанные координаты внутри границы объекта Shape, согласно определению принадлежности внутренней области. |
boolean |
contains |
Проверяет, полностью ли внутренняя область объекта Shape содержит указанную прямоугольную область. |
PathIterator |
getPathIterator |
Возвращает объект-итератор, задающий границу этого объекта Rectangle2D. |
PathIterator |
getPathIterator |
Возвращает объект-итератор, задающий границу упрощенного объекта Rectangle2D. |
int |
hashCode() |
Возвращает хеш-код этого объекта Rectangle2D. |
static void |
intersect |
Вычисляет пересечение пары указанных исходных объектов Rectangle2D и помещает результат в указанный целевой объект Rectangle2D. |
boolean |
intersects |
Проверяет, пересекается ли внутренняя область объекта Shape с внутренней областью указанной прямоугольной области. |
boolean |
intersectsLine |
Проверяет, пересекает ли указанный отрезок прямой внутреннюю область этого объекта Rectangle2D. |
boolean |
intersectsLine |
Проверяет, пересекает ли указанный отрезок прямой внутреннюю область этого объекта Rectangle2D. |
int |
outcode |
Определяет, где находится указанная точка Point2D относительно этого объекта Rectangle2D. |
void |
setFrame |
Задает местоположение и размер внешних границ этого объекта Rectangle2D указанными значениями прямоугольника. |
void |
setRect |
Задает для объекта Rectangle2D значения, совпадающие с указанным объектом Rectangle2D. |
static void |
union |
Объединяет пару исходных объектов Rectangle2D и помещает результат в указанный целевой объект Rectangle2D. |
Методы, объявленные в классе RectangularShape
clone, contains, contains, getCenterX, getCenterY, getFrame, getMaxX, getMaxY, getMinX, getMinY, intersects, setFrame, setFrame, setFrameFromCenter, setFrameFromCenter, setFrameFromDiagonal, setFrameFromDiagonal | Модификатор и тип | Метод | Описание |
|---|---|---|
Object |
clone() |
Создает новый объект того же класса и с тем же содержимым, что и этот объект. |
boolean |
contains |
Проверяет, находится ли указанная точка Point2D внутри границы объекта Shape согласно определению принадлежности внутренней области. |
boolean |
contains |
Проверяет, полностью ли внутренняя область объекта Shape содержит указанный объект Rectangle2D. |
double |
getCenterX() |
Возвращает координату X центра ограничивающего прямоугольника объекта Shape с точностью double. |
double |
getCenterY() |
Возвращает координату Y центра ограничивающего прямоугольника объекта Shape с точностью double. |
Rectangle2D |
getFrame() |
Возвращает ограничивающий Rectangle2D, определяющий общую форму этого объекта. |
double |
getMaxX() |
Возвращает наибольшую координату X ограничивающего прямоугольника объекта Shape с точностью double. |
double |
getMaxY() |
Возвращает наибольшую координату Y ограничивающего прямоугольника объекта Shape с точностью double. |
double |
getMinX() |
Возвращает наименьшую координату X ограничивающего прямоугольника объекта Shape с точностью double. |
double |
getMinY() |
Возвращает наименьшую координату Y ограничивающего прямоугольника объекта Shape с точностью double. |
boolean |
intersects |
Проверяет, пересекается ли внутренняя область объекта Shape с внутренней областью указанного объекта Rectangle2D. |
void |
setFrame |
Задает местоположение и размер ограничивающего прямоугольника этого объекта Shape указанными значениями Point2D и Dimension2D соответственно. |
void |
setFrame |
Задает для ограничивающего прямоугольника этого объекта Shape указанный объект Rectangle2D. |
void |
setFrameFromCenter |
Задает ограничивающий прямоугольник объекта Shape на основе указанных координат центральной и угловой точек. |
void |
setFrameFromCenter |
Задает ограничивающий прямоугольник объекта Shape на основе указанного центра Point2D и угла Point2D. |
void |
setFrameFromDiagonal |
Задает диагональ ограничивающего прямоугольника этого объекта Shape на основе двух указанных координат. |
void |
setFrameFromDiagonal |
Задает диагональ ограничивающего прямоугольника этого объекта Shape на основе двух указанных объектов Point2D. |
Методы, объявленные в классе Object
finalize, getClass, notify, notifyAll, wait, wait, wait | Модификатор и тип | Метод | Описание |
|---|---|---|
protected void |
finalize() |
Устарел, будет удален: этот элемент API может быть удален в будущей версии. Финализация устарела и может быть удалена в одном из следующих выпусков. |
final Class |
getClass() |
Возвращает класс времени выполнения этого объекта Object. |
final void |
notify() |
Пробуждает один поток, ожидающий на мониторе этого объекта. |
final void |
notifyAll() |
Пробуждает все потоки, ожидающие на мониторе этого объекта. |
final void |
wait() |
Заставляет текущий поток ожидать до тех пор, пока он не будет разбужен, обычно посредством уведомления или прерывания. |
final void |
wait |
Заставляет текущий поток ожидать до тех пор, пока он не будет разбужен, обычно посредством уведомления или прерывания, либо пока не истечет заданный промежуток реального времени. |
final void |
wait |
Заставляет текущий поток ожидать до тех пор, пока он не будет разбужен, обычно посредством уведомления или прерывания, либо пока не истечет заданный промежуток реального времени. |
Подробное описание полей
x
public int x
Rectangle.- Начиная с:
- 1.0
- См. также:
y
public int y
Rectangle.- Начиная с:
- 1.0
- См. также:
width
public int width
Rectangle.- Начиная с:
- 1.0
- См. также:
height
public int height
Rectangle.- Начиная с:
- 1.0
- См. также:
Подробное описание конструкторов
Rectangle
public Rectangle()
Rectangle, верхний левый угол которого находится в точке (0, 0) в системе координат, а ширина и высота равны нулю.Rectangle
public Rectangle(Rectangle r)
Rectangle, инициализированный значениями указанного Rectangle.- Параметры:
-
r—Rectangle, из которого копируются начальные значения в новыйRectangle - Начиная с:
- 1.1
Rectangle
public Rectangle(int x, int y, int width, int height)
Rectangle, верхний левый угол которого задаётся значением (x,y), а ширина и высота — аргументами с соответствующими именами.- Параметры:
-
x— указанная координата X -
y— указанная координата Y -
width— ширинаRectangle -
height— высотаRectangle - Начиная с:
- 1.0
Rectangle
public Rectangle(int width, int height)
Rectangle, верхний левый угол которого находится в точке (0, 0) в системе координат, а ширина и высота задаются аргументами с соответствующими именами.- Параметры:
-
width— ширинаRectangle -
height— высотаRectangle
Rectangle
Rectangle
public Rectangle(Point p)
Rectangle, верхний левый угол которого задаётся указанным Point, а ширина и высота равны нулю.- Параметры:
-
p—Point, задающий верхний левый уголRectangle
Rectangle
public Rectangle(Dimension d)
Rectangle с верхним левым углом в точке (0, 0) и шириной и высотой, заданными аргументом Dimension.- Параметры:
-
d—Dimension, задающий ширину и высоту
Подробное описание методов
getX
public double getX()
Rectangle с точностью double.- Определено в:
-
getXв классеRectangularShape - Возвращает:
- координату X ограничивающего
Rectangle.
getY
public double getY()
Rectangle с точностью double.- Определено в:
-
getYв классеRectangularShape - Возвращает:
- координату Y ограничивающего
Rectangle.
getWidth
public double getWidth()
Rectangle с точностью double.- Определено в:
-
getWidthв классеRectangularShape - Возвращает:
- ширину ограничивающего
Rectangle.
getHeight
public double getHeight()
Rectangle с точностью double.- Определено в:
-
getHeightв классеRectangularShape - Возвращает:
- высоту ограничивающего
Rectangle.
getBounds
public Rectangle getBounds()
Rectangle этого Rectangle. Этот метод включён для полноты, чтобы соответствовать методу getBounds класса Component.
- Определено в:
-
getBoundsв интерфейсеShape - Переопределяет:
-
getBoundsв классеRectangularShape - Возвращает:
- новый
Rectangle, равный ограничивающемуRectangleдля этогоRectangle. - Начиная с:
- 1.1
- См. также:
getBounds2D
public Rectangle2D getBounds2D()
Shape с более высокой точностью, чем метод getBounds. Обратите внимание, что нет гарантии, что возвращённый Rectangle2D является наименьшей ограничивающей рамкой, охватывающей Shape; гарантируется лишь, что Shape целиком находится внутри указанного Rectangle2D. Ограничивающая рамка, возвращаемая этим методом, обычно компактнее, чем возвращаемая методом getBounds, и никогда не приводит к сбоям из-за переполнения, поскольку возвращаемое значение может быть экземпляром Rectangle2D, который использует значения двойной точности для хранения размеров. Обратите внимание, что определение принадлежности внутренней области может приводить к ситуациям, когда точки на контуре shape не считаются принадлежащими возвращённому объекту bounds, но только в случаях, когда эти точки также не считаются принадлежащими исходному shape.
Если point находится внутри shape согласно методу contains(point), оно должно находиться и внутри возвращённого объекта границ Rectangle2D согласно методу contains(point) класса bounds. В частности:
shape.contains(p) требует bounds.contains(p)
Если point не находится внутри shape, оно всё ещё может принадлежать объекту bounds:
bounds.contains(p) не подразумевает shape.contains(p)
- Определено в:
-
getBounds2Dв интерфейсеShape - Переопределяет:
-
getBounds2Dв классеRectangle2D - Возвращает:
- экземпляр
Rectangle2D, представляющий ограничивающую рамкуShapeс высокой точностью. - Начиная с:
- 1.2
- См. также:
setBounds
public void setBounds(Rectangle r)
Rectangle этого Rectangle в соответствии с указанным Rectangle. Этот метод включён для полноты, чтобы соответствовать методу setBounds класса Component.
- Параметры:
-
r— указанноеRectangle - Начиная с:
- 1.1
- См. также:
setBounds
public void setBounds(int x, int y, int width, int height)
Rectangle этого Rectangle в соответствии с указанными значениями x, y, width и height. Этот метод включён для полноты, чтобы соответствовать методу setBounds класса Component.
- Параметры:
-
x— новая координата X верхнего левого угла этогоRectangle -
y— новая координата Y верхнего левого угла этогоRectangle -
width— новая ширина этогоRectangle -
height— новая высота этогоRectangle - Начиная с:
- 1.1
- См. также:
setRect
public void setRect(double x, double y, double width, double height)
Rectangle в виде целочисленных границ, охватывающих указанные x, y, width и height. Если параметры задают Rectangle, выходящее за максимальный диапазон целых чисел, результатом будет наилучшее представление указанного Rectangle, пересечённое с максимальными целочисленными границами.- Определено в:
-
setRectв классеRectangle2D - Параметры:
-
x— координата X верхнего левого угла указанного прямоугольника -
y— координата Y верхнего левого угла указанного прямоугольника -
width— ширина указанного прямоугольника -
height— новая высота указанного прямоугольника
reshape
@Deprecated public void reshape(int x, int y, int width, int height)
setBounds(int, int, int, int).Rectangle этого Rectangle в соответствии с указанными значениями x, y, width и height.- Параметры:
-
x— новая координата X верхнего левого угла этогоRectangle -
y— новая координата Y верхнего левого угла этогоRectangle -
width— новая ширина этогоRectangle -
height— новая высота этогоRectangle
getLocation
public Point getLocation()
Rectangle. Этот метод включён для полноты, чтобы соответствовать методу getLocation класса Component.
- Возвращает:
Point, являющийся верхним левым углом этогоRectangle.- Начиная с:
- 1.1
- См. также:
setLocation
public void setLocation(Point p)
Rectangle в указанное местоположение. Этот метод включён для полноты, чтобы соответствовать методу setLocation класса Component.
- Параметры:
-
p—Point, задающий новое местоположение этогоRectangle - Начиная с:
- 1.1
- См. также:
setLocation
public void setLocation(int x, int y)
Rectangle в указанное местоположение. Этот метод включён для полноты, чтобы соответствовать методу setLocation класса Component.
- Параметры:
-
x— координата X нового местоположения -
y— координата Y нового местоположения - Начиная с:
- 1.1
- См. также:
move
@Deprecated public void move(int x, int y)
setLocation(int, int).Rectangle в указанное местоположение.- Параметры:
-
x— координата X нового местоположения -
y— координата Y нового местоположения
translate
public void translate(int dx, int dy)
Rectangle на указанное расстояние вправо вдоль оси координат X и вниз вдоль оси координат Y.- Параметры:
-
dx— расстояние перемещения этогоRectangleвдоль оси X -
dy— расстояние перемещения этогоRectangleвдоль оси Y - См. также:
getSize
public Dimension getSize()
Rectangle в виде возвращаемого Dimension. Этот метод включён для полноты, чтобы соответствовать методу getSize класса Component.
- Возвращает:
Dimension, представляющий размер этогоRectangle.- Начиная с:
- 1.1
- См. также:
setSize
public void setSize(Dimension d)
Rectangle в соответствии с указанным Dimension. Этот метод включён для полноты, чтобы соответствовать методу setSize класса Component.
- Параметры:
-
d— новый размер объектаDimension - Начиная с:
- 1.1
- См. также:
setSize
public void setSize(int width, int height)
Rectangle в соответствии с указанными шириной и высотой. Этот метод включён для полноты, чтобы соответствовать методу setSize класса Component.
- Параметры:
-
width— новая ширина этогоRectangle -
height— новая высота этогоRectangle - Начиная с:
- 1.1
- См. также:
resize
@Deprecated public void resize(int width, int height)
setSize(int, int).Rectangle в соответствии с указанными шириной и высотой.- Параметры:
-
width— новая ширина этогоRectangle -
height— новая высота этогоRectangle
contains
public boolean contains(Point p)
Rectangle указанный Point.- Параметры:
-
p—Pointдля проверки - Возвращает:
-
true, если указанныйPointнаходится внутри этогоRectangle; в противном случае —false. - Начиная с:
- 1.1
contains
public boolean contains(int x, int y)
Rectangle точку в указанном местоположении (x,y).- Параметры:
-
x— указанная координата X -
y— указанная координата Y - Возвращает:
-
true, если точка(x,y)находится внутри этогоRectangle; в противном случае —false. - Начиная с:
- 1.1
contains
public boolean contains(Rectangle r)
Rectangle содержит указанный Rectangle.- Параметры:
-
r— указанныйRectangle - Возвращает:
-
true, еслиRectangleполностью находится внутри этогоRectangle; в противном случае —false - Начиная с:
- 1.2
contains
public boolean contains(int X, int Y, int W, int H)
Rectangle содержит Rectangle в указанном местоположении (X,Y) с указанными размерами (W,H).- Параметры:
-
X— указанная координата X -
Y— указанная координата Y -
W— ширинаRectangle -
H— высотаRectangle - Возвращает:
-
true, еслиRectangle, заданный(X, Y, W, H), полностью находится внутри этогоRectangle; в противном случае —false. - Начиная с:
- 1.1
inside
@Deprecated public boolean inside(int X, int Y)
contains(int, int).Rectangle точку в указанном местоположении (X,Y).- Параметры:
-
X— указанная координата X -
Y— указанная координата Y - Возвращает:
-
true, если точка(X,Y)находится внутри этогоRectangle; в противном случае —false.
intersects
public boolean intersects(Rectangle r)
Rectangle и указанный Rectangle. Два прямоугольника пересекаются, если их пересечение не пусто.- Параметры:
-
r— указанныйRectangle - Возвращает:
-
true, если указанныйRectangleи этотRectangleпересекаются; в противном случае —false.
intersection
public Rectangle intersection(Rectangle r)
Rectangle с указанным Rectangle. Возвращает новый Rectangle, представляющий пересечение двух прямоугольников. Если прямоугольники не пересекаются, результатом будет пустой прямоугольник.- Параметры:
-
r— указанныйRectangle - Возвращает:
- наибольший
Rectangle, содержащийся как в указанномRectangle, так и в этомRectangle; если прямоугольники не пересекаются — пустой прямоугольник.
union
public Rectangle union(Rectangle r)
Rectangle с указанным Rectangle. Возвращает новый Rectangle, представляющий объединение двух прямоугольников. Если какой-либо Rectangle имеет размерность меньше нуля, применяются правила для несуществующих прямоугольников. Если размерность меньше нуля только у одного из них, результатом будет копия другого Rectangle. Если размерность меньше нуля у обоих, результат будет иметь как минимум одну размерность меньше нуля.
Если размер результирующего Rectangle слишком велик для представления типом int, размер этой размерности будет равен Integer.MAX_VALUE.
- Параметры:
-
r— указанныйRectangle - Возвращает:
- наименьший
Rectangle, содержащий указанныйRectangleи этотRectangle.
add
public void add(int newx, int newy)
newx,newy, к границам этого Rectangle. Если какая-либо размерность этого Rectangle меньше нуля, применяются правила для несуществующих прямоугольников. В этом случае новые границы этого Rectangle будут иметь местоположение, равное указанным координатам, и ширину и высоту, равные нулю.
После добавления точки вызов contains с добавленной точкой в качестве аргумента не обязательно вернёт true. Метод contains не возвращает true для точек на правой или нижней границе Rectangle. Поэтому, если добавленная точка окажется на правой или нижней границе увеличенного Rectangle, contains вернёт для этой точки false. Если указанная точка должна находиться внутри нового Rectangle, вместо этого следует добавить прямоугольник размером 1x1:
r.add(new Rectangle(newx, newy, 1, 1));
- Параметры:
-
newx— координата X новой точки -
newy— координата Y новой точки
add
public void add(Point pt)
Point к границам этого Rectangle. Если какая-либо размерность этого Rectangle меньше нуля, применяются правила для несуществующих прямоугольников. В этом случае новые границы этого Rectangle будут иметь координаты, равные координатам указанной Point, а ширина и высота будут равны нулю.
После добавления Point вызов contains с добавленной Point в качестве аргумента не обязательно вернёт true. Метод contains не возвращает true для точек на правой или нижней границе Rectangle. Поэтому, если добавленная Point находится на правой или нижней границе увеличенного Rectangle, contains возвращает false для этой Point. Если указанная точка должна содержаться в новом Rectangle, вместо этого следует добавить прямоугольник размером 1x1:
r.add(new Rectangle(pt, new Dimension(1, 1)));
- Параметры:
-
pt— новаяPoint, добавляемая к этомуRectangle
add
public void add(Rectangle r)
Rectangle к этому Rectangle. Результирующий Rectangle является объединением двух прямоугольников. Если какая-либо размерность одного из Rectangle меньше 0, результат будет иметь размеры другого Rectangle. Если хотя бы одна размерность обоих Rectangleов меньше 0, результат будет иметь хотя бы одну размерность меньше 0.
Если одна или обе размерности любого из Rectangle равны 0, результат вдоль соответствующих осей с нулевыми размерностями будет эквивалентен результату добавления соответствующей координаты начала координат к результирующему прямоугольнику вдоль этой оси, подобно операции метода add(Point), но без дальнейшего увеличения размерности.
Если размерность результирующего Rectangle будет слишком велика, чтобы быть представленной как int, эта размерность результата будет равна Integer.MAX_VALUE.
- Параметры:
-
r— указанныйRectangle
grow
public void grow(int h, int v)
Rectangle по горизонтали и вертикали. Этот метод изменяет Rectangle так, чтобы он стал больше на h единиц с каждой из левой и правой сторон и на v единиц сверху и снизу.
Новый Rectangle имеет (x - h, y - v) в качестве верхнего левого угла, ширину (width + 2h) и высоту (height + 2v).
Если для h и v указаны отрицательные значения, размер Rectangle соответственно уменьшается. Метод grow проверяет переполнение и потерю значимости целых чисел, но не проверяет, становятся ли результирующие значения width и height неотрицательными из отрицательных или отрицательными из неотрицательных.
- Параметры:
-
h— расширение по горизонтали -
v— расширение по вертикали
isEmpty
public boolean isEmpty()
RectangularShape пустым. Пустой RectangularShape не охватывает никакой области.- Определено в:
-
isEmptyв классеRectangularShape - Возвращает:
-
true, еслиRectangularShapeпуст; в противном случае —false. - Начиная с:
- 1.2
outcode
public int outcode(double x, double y)
Rectangle2D. Этот метод вычисляет побитовое ИЛИ соответствующих значений маски, показывающих для каждой стороны этого Rectangle2D, находятся ли указанные координаты по ту же сторону границы, что и остальная часть этого Rectangle2D.- Определено в:
-
outcodeв классеRectangle2D - Параметры:
-
x— указанная координата X -
y— указанная координата Y - Возвращает:
- логическое ИЛИ всех соответствующих кодов выхода.
- Начиная с:
- 1.2
- См. также:
createIntersection
public Rectangle2D createIntersection(Rectangle2D r)
Rectangle2D, представляющий пересечение этого Rectangle2D с указанным Rectangle2D.- Определено в:
-
createIntersectionв классеRectangle2D - Параметры:
-
r—Rectangle2D, с которым пересекается этотRectangle2D - Возвращает:
- наибольший
Rectangle2D, содержащийся и в указанномRectangle2D, и в этомRectangle2D. - Начиная с:
- 1.2
createUnion
public Rectangle2D createUnion(Rectangle2D r)
Rectangle2D, представляющий объединение этого Rectangle2D с указанным Rectangle2D.- Определено в:
-
createUnionв классеRectangle2D - Параметры:
-
r—Rectangle2D, объединяемый с этимRectangle2D - Возвращает:
- наименьший
Rectangle2D, содержащий и указанныйRectangle2D, и этотRectangle2D. - Начиная с:
- 1.2
equals
public boolean equals(Object obj)
Результат равен true тогда и только тогда, когда аргумент не является null и представляет собой объект Rectangle с теми же верхним левым углом, шириной и высотой, что и этот Rectangle.
- Переопределяет:
-
equalsв классеRectangle2D - Параметры:
-
obj—Objectдля сравнения с этимRectangle - Возвращает:
-
true, если объекты равны; в противном случае —false. - См. также:
toString
© 1993, 2025, 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.
contains(int, int).