Класс Arc2D
- Все реализованные интерфейсы:
-
Shape,Cloneable
- Прямые известные подклассы:
-
Arc2D.Double,Arc2D.Float
public abstract class Arc2D extends RectangularShape
Arc2D — это абстрактный базовый класс для всех объектов, хранящих 2D дугу, определяемую прямоугольной рамкой, начальным углом, угловым протяжением (длиной дуги) и типом замкнутости (OPEN, CHORD или PIE). Дуга представляет собой частичный сегмент полной эллипсы, которая вписана в прямоугольную рамку родителя RectangularShape. Углы задаются относительно прямоугольной рамки, которая не является квадратной, таким образом, что 45 градусов всегда располагаются на линии от центра эллипса до правого верхнего угла прямоугольной рамки. В результате, если прямоугольная рамка заметно длиннее по одной оси, чем по другой, углы начала и конца сегмента дуги будут смещены дальше по более длинной оси рамки.
Фактическое представление координат остается за подклассом.
- С:
- 1.2
Краткое описание вложенных классов
| Модификатор и тип | Класс | Описание |
|---|---|---|
static class |
Arc2D.Double |
Этот класс определяет дугу, заданную с точностью double. |
static class |
Arc2D.Float |
Этот класс определяет дугу, заданную с точностью float. |
Краткое описание полей
| Модификатор и тип | Поле | Описание |
|---|---|---|
static final int |
CHORD |
Тип замкнутости для дуги, замкнутой путем рисования отрезка прямой от начала сегмента дуги до конца сегмента дуги. |
static final int |
OPEN |
Тип замкнутости для открытой дуги без отрезков пути, соединяющих два конца сегмента дуги. |
static final int |
PIE |
Тип замкнутости для дуги, замкнутой путем рисования отрезков прямых от начала сегмента дуги до центра полной эллипсы и от этой точки до конца сегмента дуги. |
Краткое описание конструкторов
| Модификатор | Конструктор | Описание |
|---|---|---|
protected |
Это абстрактный класс, который нельзя создать напрямую. |
|
protected |
Это абстрактный класс, который нельзя создать напрямую. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
boolean |
contains |
Определяет, находится ли заданная точка внутри границы дуги. |
boolean |
contains |
Определяет, полностью ли внутренняя область дуги содержит указанный прямоугольник. |
boolean |
contains |
Определяет, полностью ли внутренняя область дуги содержит указанный прямоугольник. |
boolean |
containsAngle |
Определяет, находится ли указанный угол в пределах угловых протяжений дуги. |
boolean |
equals |
Определяет, равен ли указанный Object этому Arc2D. |
abstract double |
getAngleExtent() |
Возвращает угловое протяжение дуги. |
abstract double |
getAngleStart() |
Возвращает начальный угол дуги. |
int |
getArcType() |
|
Rectangle2D |
getBounds2D() |
Возвращает прямоугольник с высокой точностью, обрамляющий дугу. |
Point2D |
getEndPoint() |
Возвращает конечную точку дуги. |
PathIterator |
getPathIterator |
Возвращает объект итерации, определяющий границу дуги. |
Point2D |
getStartPoint() |
Возвращает начальную точку дуги. |
int |
hashCode() |
Возвращает хэш-код для этого Arc2D. |
boolean |
intersects |
Определяет, пересекается ли внутренняя область дуги с внутренней областью указанного прямоугольника. |
protected abstract Rectangle2D |
makeBounds |
Создает Rectangle2D соответствующей точности для хранения параметров, вычисленных как прямоугольная рамка этой дуги. |
abstract void |
setAngleExtent |
Устанавливает угловое протяжение этой дуги в указанное значение типа double. |
void |
setAngles |
Устанавливает начальный угол и угловое протяжение этой дуги с помощью двух наборов координат. |
void |
setAngles |
Устанавливает начальный угол и угловое протяжение этой дуги с помощью двух точек. |
abstract void |
setAngleStart |
Устанавливает начальный угол этой дуги в указанное значение типа double. |
void |
setAngleStart |
Устанавливает начальный угол этой дуги в угол, который определяет указанная точка относительно центра этой дуги. |
abstract void |
setArc |
Устанавливает расположение, размер, угловые протяжения и тип замкнутости этой дуги в указанных значениях типа double. |
void |
setArc |
Устанавливает эту дугу равной указанной дуге. |
void |
setArc |
Устанавливает расположение, размер, угловые протяжения и тип замкнутости этой дуги в указанных значениях. |
void |
setArc |
Устанавливает расположение, размер, угловые протяжения и тип замкнутости этой дуги в указанных значениях. |
void |
setArcByCenter |
Устанавливает положение, границы, угловые протяжения и тип замкнутости этой дуги в указанных значениях. |
void |
setArcByTangent |
Устанавливает положение, границы и угловые протяжения этой дуги в указанном значении. |
void |
setArcType |
Устанавливает тип замкнутости этой дуги в указанном значении: OPEN, CHORD или PIE. |
void |
setFrame |
Устанавливает расположение и размер прямоугольной рамки этой Shape в указанных прямоугольных значениях. |
Методы, объявленные в классе java.awt.geom.RectangularShape
clone, contains, getBounds, getCenterX, getCenterY, getFrame, getHeight, getMaxX, getMaxY, getMinX, getMinY, getPathIterator, getWidth, getX, getY, intersects, isEmpty, setFrame, setFrame, setFrameFromCenter, setFrameFromCenter, setFrameFromDiagonal, setFrameFromDiagonal
Подробное описание полей
OPEN
public static final int OPEN
- Since:
- 1.2
- См. также:
CHORD
public static final int CHORD
- Since:
- 1.2
- См. также:
PIE
public static final int PIE
- Since:
- 1.2
- См. также:
Подробное описание конструкторов
Arc2D
protected Arc2D()
Этот конструктор создаёт объект с типом закрытия по умолчанию OPEN. Он предоставляется только для обеспечения сериализации подклассов.
- См. также:
Arc2D
protected Arc2D(int type)
Подробное описание методов
getAngleStart
public abstract double getAngleStart()
- Возвращает:
- Значение типа double, представляющее начальный угол дуги в градусах.
- Since:
- 1.2
- См. также:
getAngleExtent
public abstract double getAngleExtent()
- Возвращает:
- Значение типа double, представляющее угловое расширение дуги в градусах.
- Since:
- 1.2
- См. также:
getArcType
getStartPoint
public Point2D getStartPoint()
- Возвращает:
- Объект
Point2D, представляющий координаты x, y начальной точки дуги. - Since:
- 1.2
getEndPoint
public Point2D getEndPoint()
- Возвращает:
- Объект
Point2D, представляющий координаты x, y конечной точки дуги. - Since:
- 1.2
setArc
public abstract void setArc(double x, double y, double w, double h, double angSt, double angExt, int closure)
- Параметры:
-
x- Координата X левого верхнего угла дуги. -
y- Координата Y левого верхнего угла дуги. -
w- Общая ширина полного эллипса, частью которого является эта дуга. -
h- Общая высота полного эллипса, частью которого является эта дуга. -
angSt- Начальный угол дуги в градусах. -
angExt- Угловое расширение дуги в градусах. -
closure- Тип закрытия дуги:OPEN,CHORDилиPIE. - Since:
- 1.2
setArc
public void setArc(Point2D loc, Dimension2D size, double angSt, double angExt, int closure)
- Параметры:
-
loc-Point2D, представляющий координаты левого верхнего угла дуги. -
size-Dimension2D, представляющий ширину и высоту полного эллипса, частью которого является эта дуга. -
angSt- Начальный угол дуги в градусах. -
angExt- Угловое расширение дуги в градусах. -
closure- Тип закрытия дуги:OPEN,CHORDилиPIE. - Since:
- 1.2
setArc
public void setArc(Rectangle2D rect, double angSt, double angExt, int closure)
setArc
public void setArc(Arc2D a)
- Параметры:
-
a-Arc2Dдля установки значений дуги. - Since:
- 1.2
setArcByCenter
public void setArcByCenter(double x, double y, double radius, double angSt, double angExt, int closure)
setArcByTangent
public void setArcByTangent(Point2D p1, Point2D p2, Point2D p3, double radius)
- Parameters:
-
p1- Первая точка, определяющая дугу. Угол начала дуги является касательной к линии, заданной точками (p1, p2). -
p2- Вторая точка, определяющая дугу. Угол начала дуги является касательной к линии, заданной точками (p1, p2). Угол окончания дуги является касательной к линии, заданной точками (p2, p3). -
p3- Третья точка, определяющая дугу. Угол окончания дуги является касательной к линии, заданной точками (p2, p3). -
radius- Радиус дуги. - Since:
- 1.2
setAngleStart
public abstract void setAngleStart(double angSt)
- Parameters:
-
angSt- Начальный угол дуги в градусах. - Since:
- 1.2
- See Also:
setAngleExtent
public abstract void setAngleExtent(double angExt)
- Parameters:
-
angExt- Угловое расстояние дуги в градусах. - Since:
- 1.2
- See Also:
setAngleStart
public void setAngleStart(Point2D p)
- Parameters:
-
p-Point2D, определяющая начальный угол. - Since:
- 1.2
- See Also:
setAngles
public void setAngles(double x1, double y1, double x2, double y2)
- Parameters:
-
x1- Координата X начальной точки дуги. -
y1- Координата Y начальной точки дуги. -
x2- Координата X конечной точки дуги. -
y2- Координата Y конечной точки дуги. - Since:
- 1.2
setAngles
public void setAngles(Point2D p1, Point2D p2)
- Parameters:
-
p1-Point2D, определяющая начальную точку дуги. -
p2-Point2D, определяющая конечную точку дуги. - Since:
- 1.2
setArcType
public void setArcType(int type)
OPEN, CHORD или PIE.- Parameters:
-
type- Целочисленная константа, представляющая тип замкнутости этой дуги:OPEN,CHORDилиPIE. - Throws:
-
IllegalArgumentException- еслиtypeне равно 0, 1 или 2. - Since:
- 1.2
- See Also:
setFrame
public void setFrame(double x, double y, double w, double h)
- Specified by:
-
setFramein classRectangularShape - Parameters:
-
x- координата X левого верхнего угла указанной прямоугольной фигуры -
y- координата Y левого верхнего угла указанной прямоугольной фигуры -
w- ширина указанной прямоугольной фигуры -
h- высота указанной прямоугольной фигуры - Since:
- 1.2
- See Also:
getBounds2D
public Rectangle2D getBounds2D()
PIE. Этот метод отличается от getBounds тем, что метод getBounds возвращает только границы охватывающего эллипса этой дуги без учета начального и конечного углов этой дуги.
- Returns:
Rectangle2D, представляющая прямоугольник рамки дуги.- Since:
- 1.2
- See Also:
makeBounds
protected abstract Rectangle2D makeBounds(double x, double y, double w, double h)
Rectangle2D соответствующей точности для хранения параметров, рассчитанных как прямоугольник рамки этой дуги.- Parameters:
-
x- Координата X левого верхнего угла рамки прямоугольника. -
y- Координата Y левого верхнего угла рамки прямоугольника. -
w- Ширина рамки прямоугольника. -
h- Высота рамки прямоугольника. - Returns:
Rectangle2D, представляющий прямоугольник рамки этой дуги.- Since:
- 1.2
containsAngle
public boolean containsAngle(double angle)
- Parameters:
-
angle- Угол для проверки. - Returns:
-
true, если дуга содержит угол,false, если дуга не содержит угол. - Since:
- 1.2
contains
public boolean contains(double x, double y)
- Parameters:
-
x- Координата X точки для проверки. -
y- Координата Y точки для проверки. - Returns:
-
true, если точка находится внутри границ дуги,false, если точка находится вне границ дуги. - Since:
- 1.2
intersects
public boolean intersects(double x, double y, double w, double h)
- Parameters:
-
x- Координата X левого верхнего угла прямоугольника. -
y- Координата Y левого верхнего угла прямоугольника. -
w- Ширина прямоугольника. -
h- Высота прямоугольника. - Returns:
-
true, если дуга пересекает прямоугольник,false, если дуга не пересекает прямоугольник. - Since:
- 1.2
- See Also:
contains
public boolean contains(double x, double y, double w, double h)
- Параметры:
-
x- Координата X верхнего левого угла прямоугольника. -
y- Координата Y верхнего левого угла прямоугольника. -
w- Ширина прямоугольника. -
h- Высота прямоугольника. - Возвращает:
-
true, если дуга содержит прямоугольник,false, если дуга не содержит прямоугольник. - С:
- 1.2
- См. также:
contains
public boolean contains(Rectangle2D r)
- Задано:
-
containsв интерфейсеShape - Переопределяет:
-
containsв классеRectangularShape - Параметры:
-
r- ПрямоугольникRectangle2Dдля проверки. - Возвращает:
-
true, если дуга содержит прямоугольник,false, если дуга не содержит прямоугольник. - С:
- 1.2
- См. также:
getPathIterator
public PathIterator getPathIterator(AffineTransform at)
Arc2D гарантирует, что изменения в геометрии дуги не повлияют на любые уже выполняющиеся итерации этой геометрии.- Параметры:
-
at- необязательноеAffineTransform, которое будет применено к координатам по мере их возвращения в итерации, или null, если требуются не преобразованные координаты. - Возвращает:
- Объект
PathIterator, который определяет границу дуги. - С:
- 1.2
hashCode
equals
public boolean equals(Object obj)
Object этому Arc2D. Указанный Object равен этому Arc2D, если он является экземпляром Arc2D и если его расположение, размер, углы дуги и тип совпадают с этим Arc2D.
© 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://download.java.net/java/early_access/jdk24/docs/api/java.desktop/java/awt/geom/Arc2D.html