Класс Ellipse2D
- Все реализуемые интерфейсы:
Shape, Cloneable
- Прямые известные подклассы:
Ellipse2D.Double, Ellipse2D.Float
public abstract class Ellipse2D extends RectangularShape
Ellipse2D описывает эллипс, заданный ограничивающим прямоугольником. Этот класс является только абстрактным суперклассом для всех объектов, хранящих двумерный эллипс. Фактическое представление координат в хранилище определяется подклассом.
- Начиная с версии:
- 1.2
Краткое описание вложенных классов
| Модификатор и тип | Класс | Описание |
|---|---|---|
static class |
Ellipse2D.Double |
Класс Double определяет эллипс, заданный с точностью double. |
static class |
Ellipse2D.Float |
Класс Float определяет эллипс, заданный с точностью float. |
Краткое описание конструкторов
| Модификатор | Конструктор | Описание |
|---|---|---|
protected |
Это абстрактный класс, который нельзя создать напрямую. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
boolean |
contains |
Проверяет, находятся ли указанные координаты внутри границы Shape, как описано в определении внутренней области. |
boolean |
contains |
Проверяет, полностью ли внутренняя область Shape содержит указанную прямоугольную область. |
boolean |
equals |
Определяет, равен ли указанный Object этому Ellipse2D. |
PathIterator |
getPathIterator |
Возвращает объект итерации, задающий границу этого Ellipse2D. |
int |
hashCode() |
Возвращает хеш-код этого Ellipse2D. |
boolean |
intersects |
Проверяет, пересекается ли внутренняя область Shape с внутренней областью указанной прямоугольной области. |
Методы, объявленные в классе RectangularShape
clone, contains, contains, getBounds, getCenterX, getCenterY, getFrame, getHeight, getMaxX, getMaxY, getMinX, getMinY, getPathIterator, getWidth, getX, getY, intersects, isEmpty, setFrame, setFrame, setFrame, setFrameFromCenter, setFrameFromCenter, setFrameFromDiagonal, setFrameFromDiagonal
Методы, объявленные в классе Object
finalize, getClass, notify, notifyAll, toString, wait, wait, wait
Методы, объявленные в интерфейсе Shape
getBounds2D
Подробное описание конструкторов
Ellipse2D
protected Ellipse2D()
- Начиная с версии:
- 1.2
- См. также:
Подробное описание методов
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
- См. также:
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
- См. также:
getPathIterator
public PathIterator getPathIterator(AffineTransform at)
Ellipse2D. Итератор этого класса является потокобезопасным: класс Ellipse2D гарантирует, что изменения геометрии этого объекта Ellipse2D не влияют на уже выполняющиеся итерации по этой геометрии.- Параметры:
-
at— необязательное преобразованиеAffineTransform, применяемое к координатам при их возврате в ходе итерации, либоnull, если требуются непреобразованные координаты - Возвращает:
- объект
PathIterator, который возвращает геометрию контура этогоEllipse2Dпо одному сегменту за раз. - Начиная с версии:
- 1.2
hashCode
equals
public boolean equals(Object obj)
Object этому Ellipse2D. Указанный Object равен этому Ellipse2D, если он является экземпляром Ellipse2D и его положение и размер совпадают с положением и размером этого Ellipse2D.
© 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/Ellipse2D.html