Spec-Zone.ru › OpenJDK 25

Класс RoundRectangle2D

java.lang.Object
java.awt.geom.RectangularShape
java.awt.geom.RoundRectangle2D
Все реализуемые интерфейсы:
Shape, Cloneable
Известные прямые подклассы:
RoundRectangle2D.Double, RoundRectangle2D.Float
public abstract class RoundRectangle2D extends RectangularShape
Класс RoundRectangle2D определяет прямоугольник со скруглёнными углами, заданный местоположением (x,y), размером (w x h), а также шириной и высотой дуги, используемой для скругления углов.

Этот класс является абстрактным суперклассом для всех объектов, хранящих двумерный прямоугольник со скруглёнными углами. Способ фактического хранения координат определяется подклассом.

Начиная с:
1.2

Краткое описание вложенных классов

Модификатор и тип Класс Описание
static class  RoundRectangle2D.Double
Класс Double определяет прямоугольник со скруглёнными углами, все параметры которого заданы в координатах double.
static class  RoundRectangle2D.Float
Класс Float определяет прямоугольник со скруглёнными углами, все параметры которого заданы в координатах float.

Краткое описание конструкторов

RoundRectangle2D()
Модификатор Конструктор Описание
protected
Это абстрактный класс, который нельзя создать напрямую.

Краткое описание методов

Модификатор и тип Метод Описание
boolean contains(double x, double y)
Проверяет, находятся ли указанные координаты внутри границы Shape, согласно определению внутренней области.
boolean contains(double x, double y, double w, double h)
Проверяет, полностью ли внутренняя область Shape содержит указанную прямоугольную область.
boolean equals(Object obj)
Определяет, равен ли указанный Object этому RoundRectangle2D.
abstract double getArcHeight()
Возвращает высоту дуги, скругляющей углы.
abstract double getArcWidth()
Возвращает ширину дуги, скругляющей углы.
PathIterator getPathIterator(AffineTransform at)
Возвращает объект-итератор, задающий границу этого RoundRectangle2D.
int hashCode()
Возвращает хеш-код этого RoundRectangle2D.
boolean intersects(double x, double y, double w, double h)
Проверяет, пересекается ли внутренняя область Shape с внутренней областью указанной прямоугольной области.
void setFrame(double x, double y, double w, double h)
Задаёт местоположение и размер ограничивающего прямоугольника этого Shape указанными значениями прямоугольника.
abstract void setRoundRect(double x, double y, double w, double h, double arcWidth, double arcHeight)
Задаёт местоположение, размер и радиусы скругления углов этого RoundRectangle2D указанными значениями double.
void setRoundRect(RoundRectangle2D rr)
Задаёт этому RoundRectangle2D те же значения, что и у указанного RoundRectangle2D.

Методы, объявленные в классе RectangularShape

clone, contains, contains, getBounds, getCenterX, getCenterY, getFrame, getHeight, getMaxX, getMaxY, getMinX, getMinY, getPathIterator, getWidth, getX, getY, intersects, isEmpty, setFrame, setFrame, setFrameFromCenter, setFrameFromCenter, setFrameFromDiagonal, setFrameFromDiagonal

Методы, объявленные в классе Object

finalize, getClass, notify, notifyAll, toString, wait, wait, wait

Методы, объявленные в интерфейсе Shape

getBounds2D

Подробное описание конструкторов

RoundRectangle2D

protected RoundRectangle2D()
Это абстрактный класс, который нельзя создать напрямую. Для создания экземпляров доступны подклассы с реализациями для конкретных типов; они предоставляют несколько форматов хранения данных, необходимых для работы перечисленных ниже методов доступа.
Начиная с:
1.2
См. также:
  • RoundRectangle2D.Float
  • RoundRectangle2D.Double

Подробное описание методов

getArcWidth

public abstract double getArcWidth()
Возвращает ширину дуги, скругляющей углы.
Возвращает:
ширину дуги, скругляющей углы этого RoundRectangle2D.
Начиная с:
1.2

getArcHeight

public abstract double getArcHeight()
Возвращает высоту дуги, скругляющей углы.
Возвращает:
высоту дуги, скругляющей углы этого RoundRectangle2D.
Начиная с:
1.2

setRoundRect

public abstract void setRoundRect(double x, double y, double w, double h, double arcWidth, double arcHeight)
Задаёт местоположение, размер и радиусы скругления углов этого RoundRectangle2D указанными значениями double.
Параметры:
x — координата X, в которую следует поместить этот RoundRectangle2D
y — координата Y, в которую следует поместить этот RoundRectangle2D
w — ширина, которую следует задать этому RoundRectangle2D
h — высота, которую следует задать этому RoundRectangle2D
arcWidth — ширина дуги, которую следует задать этому RoundRectangle2D
arcHeight — высота дуги, которую следует задать этому RoundRectangle2D
Начиная с:
1.2

setRoundRect

public void setRoundRect(RoundRectangle2D rr)
Задаёт этому RoundRectangle2D те же значения, что и у указанного RoundRectangle2D.
Параметры:
rr — указанный RoundRectangle2D
Начиная с:
1.2

setFrame

public void setFrame(double x, double y, double w, double h)
Задаёт местоположение и размер ограничивающего прямоугольника этого Shape указанными значениями прямоугольника.
Переопределяет:
setFrame в классе RectangularShape
Параметры:
x — координата X левого верхнего угла указанной прямоугольной фигуры
y — координата Y левого верхнего угла указанной прямоугольной фигуры
w — ширина указанной прямоугольной фигуры
h — высота указанной прямоугольной фигуры
Начиная с:
1.2
См. также:
  • RectangularShape.getFrame()

contains

public boolean contains(double x, double y)
Проверяет, находятся ли указанные координаты внутри границы Shape, согласно определению внутренней области.
Параметры:
x — указанная координата X для проверки
y — указанная координата Y для проверки
Возвращает:
true, если указанные координаты находятся внутри границы Shape; в противном случае — false.
Начиная с:
1.2

intersects

public boolean intersects(double x, double y, double w, double h)
Проверяет, пересекается ли внутренняя область Shape с внутренней областью указанной прямоугольной области. Считается, что прямоугольная область пересекается с Shape, если какая-либо точка содержится и во внутренней области Shape, и в указанной прямоугольной области.

Метод Shape.intersects() позволяет реализации Shape консервативно возвращать true в следующих случаях:

  • существует высокая вероятность пересечения прямоугольной области и Shape, но
  • вычисления, необходимые для точного определения этого пересечения, требуют чрезмерных затрат.
Это означает, что для некоторых Shapes данный метод может вернуть true, даже если прямоугольная область не пересекается с Shape. Класс Area выполняет более точные вычисления геометрических пересечений, чем большинство объектов Shape, поэтому его можно использовать, если требуется более точный результат.
Параметры:
x — координата X левого верхнего угла указанной прямоугольной области
y — координата Y левого верхнего угла указанной прямоугольной области
w — ширина указанной прямоугольной области
h — высота указанной прямоугольной области
Возвращает:
true, если внутренняя область Shape и внутренняя область прямоугольной области пересекаются либо с высокой вероятностью пересекаются, а вычисление пересечения требует чрезмерных затрат; в противном случае — false.
Начиная с:
1.2
См. также:
  • Area

contains

public boolean contains(double x, double y, double w, double h)
Проверяет, полностью ли внутренняя область Shape содержит указанную прямоугольную область. Чтобы прямоугольная область считалась полностью содержащейся в Shape, все координаты, лежащие внутри неё, должны находиться внутри Shape.

Метод Shape.contains() позволяет реализации Shape консервативно возвращать false в следующих случаях:

  • метод intersect возвращает true, и
  • вычисления, необходимые для определения того, полностью ли Shape содержит прямоугольную область, требуют чрезмерных затрат.
Это означает, что для некоторых Shapes данный метод может вернуть false, даже если Shape содержит прямоугольную область. Класс Area выполняет более точные геометрические вычисления, чем большинство объектов Shape, поэтому его можно использовать, если требуется более точный результат.
Параметры:
x — координата X левого верхнего угла указанной прямоугольной области
y — координата Y левого верхнего угла указанной прямоугольной области
w — ширина указанной прямоугольной области
h — высота указанной прямоугольной области
Возвращает:
true, если внутренняя область Shape полностью содержит указанную прямоугольную область; в противном случае — false либо, если Shape содержит прямоугольную область, метод intersects возвращает true и вычисление принадлежности требует чрезмерных затрат.
Начиная с:
1.2
См. также:
  • Area
  • Shape.intersects(double, double, double, double)

getPathIterator

public PathIterator getPathIterator(AffineTransform at)
Возвращает объект-итератор, задающий границу этого RoundRectangle2D. Итератор этого класса безопасен при многопоточном использовании: класс RoundRectangle2D гарантирует, что изменения геометрии этого объекта RoundRectangle2D не повлияют на уже выполняющиеся итерации по этой геометрии.
Параметры:
at — необязательное преобразование AffineTransform, применяемое к координатам при их возврате в ходе итерации, или null, если нужны координаты без преобразования
Возвращает:
объект PathIterator, который возвращает геометрию контура этого RoundRectangle2D по одному сегменту за раз.
Начиная с:
1.2

hashCode

public int hashCode()
Возвращает хеш-код этого RoundRectangle2D.
Переопределяет:
hashCode в классе Object
Возвращает:
хеш-код этого RoundRectangle2D.
Начиная с:
1.6
См. также:
  • Object.equals(java.lang.Object)
  • System.identityHashCode(Object)

equals

public boolean equals(Object obj)
Определяет, равен ли указанный Object этому RoundRectangle2D. Указанный Object равен этому RoundRectangle2D, если он является экземпляром RoundRectangle2D и его местоположение, размер и размеры дуг скругления углов совпадают с соответствующими значениями этого RoundRectangle2D.
Переопределяет:
equals в классе Object
Параметры:
obj — Object для сравнения с этим RoundRectangle2D.
Возвращает:
true, если obj является экземпляром RoundRectangle2D и имеет те же значения; в противном случае — false.
Начиная с:
1.6
См. также:
  • Object.hashCode()
  • HashMap

Сообщить об ошибке или предложить улучшение
Дополнительные справочные материалы по API и документацию для разработчиков см. в документации Java SE, содержащей более подробные описания для разработчиков, концептуальные обзоры, определения терминов, обходные решения и примеры работающего кода. Другие версии.
Java является товарным знаком или зарегистрированным товарным знаком Oracle и/или её аффилированных лиц в США и других странах.
Авторские права © 1993, 2025, Oracle и/или её аффилированные лица, 500 Oracle Parkway, Redwood Shores, CA 94065 USA.
Все права защищены. Использование регулируется условиями лицензии и политикой распространения документации.

© 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.
https://docs.oracle.com/en/java/javase/25/docs/api/java.desktop/java/awt/geom/RoundRectangle2D.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API