Класс RectangularShape
- Все реализованные интерфейсы:
-
Shape,Cloneable
- Прямые известные подклассы:
-
Arc2D,Ellipse2D,Rectangle2D,RoundRectangle2D
public abstract class RectangularShape extends Object implements Shape, Cloneable
RectangularShape — базовый класс для ряда объектов Shape, чья геометрия определяется прямоугольной рамкой. Сам по себе этот класс не определяет конкретной геометрии, а лишь предоставляет методы управления, унаследованные целым классом объектов Shape. Предоставленные этим классом методы могут использоваться для запроса и изменения прямоугольной рамки, которая служит ссылкой для подклассов, чтобы определить свою геометрию.- С тех пор:
- 1.2
Краткое описание конструкторов
| Модификатор | Конструктор | Описание |
|---|---|---|
protected |
Этот абстрактный класс не может быть напрямую инстанцирован. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
Object |
clone() |
Создаёт новый объект того же класса с тем же содержимым, что и этот объект. |
boolean |
contains |
Проверяет, находится ли указанная Point2D внутри границ Shape, как описано в определении попадания внутри. |
boolean |
contains |
Проверяет, полностью ли внутренняя часть Shape содержит указанный Rectangle2D. |
Rectangle |
getBounds() |
Возвращает целое число Rectangle, которое полностью охватывает Shape. |
double |
getCenterX() |
Возвращает координату X центра прямоугольной рамки Shape с точностью double. |
double |
getCenterY() |
Возвращает координату Y центра прямоугольной рамки Shape с точностью double. |
Rectangle2D |
getFrame() |
Возвращает прямоугольную Rectangle2D рамку, определяющую общую форму этого объекта. |
abstract double |
getHeight() |
Возвращает высоту прямоугольной рамки с точностью double. |
double |
getMaxX() |
Возвращает максимальную координату X прямоугольной рамки Shape с точностью double. |
double |
getMaxY() |
Возвращает максимальную координату Y прямоугольной рамки Shape с точностью double. |
double |
getMinX() |
Возвращает минимальную координату X прямоугольной рамки Shape с точностью double. |
double |
getMinY() |
Возвращает минимальную координату Y прямоугольной рамки Shape с точностью double. |
PathIterator |
getPathIterator |
Возвращает объект-итератор, который итерирует по границе объекта Shape и предоставляет доступ к уплощенному представлению контура геометрии объекта Shape. |
abstract double |
getWidth() |
Возвращает ширину прямоугольной рамки с точностью double. |
abstract double |
getX() |
Возвращает координату X верхнего левого угла прямоугольной рамки с точностью double. |
abstract double |
getY() |
Возвращает координату Y верхнего левого угла прямоугольной рамки с точностью double. |
boolean |
intersects |
Проверяет, пересекается ли внутренняя часть Shape с внутренней частью указанного Rectangle2D. |
abstract boolean |
isEmpty() |
Определяет, пуста ли RectangularShape. |
abstract void |
setFrame |
Устанавливает положение и размер прямоугольной рамки этого Shape до указанных прямоугольных значений. |
void |
setFrame |
Устанавливает положение и размер прямоугольной рамки этого Shape до указанных Point2D и Dimension2D, соответственно. |
void |
setFrame |
Устанавливает прямоугольную рамку этого Shape на указанную Rectangle2D. |
void |
setFrameFromCenter |
Устанавливает прямоугольную рамку этого Shape на основе указанных координат центра и углов. |
void |
setFrameFromCenter |
Устанавливает прямоугольную рамку этого Shape на основе заданного центра Point2D и координат углов Point2D. |
void |
setFrameFromDiagonal |
Устанавливает диагональ прямоугольной рамки этого Shape на основе двух заданных координат. |
void |
setFrameFromDiagonal |
Устанавливает диагональ прямоугольной рамки этого Shape на основе двух заданных объектов Point2D. |
Методы, объявленные в классе java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Методы, объявленные в интерфейсе java.awt.Shape
contains, contains, getBounds2D, getPathIterator, intersects
Подробное описание конструкторов
RectangularShape
protected RectangularShape()
- С момента:
- 1.2
- См. также:
Подробное описание методов
getX
public abstract double getX()
double точности.- Возвращает:
- координату X левого верхнего угла рамки.
- С момента:
- 1.2
getY
public abstract double getY()
double точности.- Возвращает:
- координату Y левого верхнего угла рамки.
- С момента:
- 1.2
getWidth
public abstract double getWidth()
double точности.- Возвращает:
- ширину рамки.
- С момента:
- 1.2
getHeight
public abstract double getHeight()
double точности.- Возвращает:
- высоту рамки.
- С момента:
- 1.2
getMinX
public double getMinX()
Shape в double точности.- Возвращает:
- наименьшую координату X рамки
Shape. - С момента:
- 1.2
getMinY
public double getMinY()
Shape в double точности.- Возвращает:
- наименьшую координату Y рамки
Shape. - С момента:
- 1.2
getMaxX
public double getMaxX()
Shape в double точности.- Возвращает:
- наибольшую координату X рамки
Shape. - С момента:
- 1.2
getMaxY
public double getMaxY()
Shape в double точности.- Возвращает:
- наибольшую координату Y рамки
Shape. - С момента:
- 1.2
getCenterX
public double getCenterX()
Shape в double точности.- Возвращает:
- координату X центра рамки
Shape. - С момента:
- 1.2
getCenterY
public double getCenterY()
Shape в double точности.- Возвращает:
- координату Y центра рамки
Shape. - С момента:
- 1.2
getFrame
public Rectangle2D getFrame()
Rectangle2D, которая определяет общую форму этого объекта.- Возвращает:
- объект
Rectangle2D, заданный вdoubleкоординатах. - С момента:
- 1.2
- См. также:
isEmpty
public abstract boolean isEmpty()
RectangularShape пустым. Когда RectangularShape пустой, он не охватывает никакой области.- Возвращает:
-
trueеслиRectangularShapeпустой;falseв противном случае. - С момента:
- 1.2
setFrame
public abstract void setFrame(double x, double y, double w, double h)
Shape на заданные прямоугольные значения.- Параметры:
-
x- координата X левого верхнего угла заданной прямоугольной фигуры -
y- координата Y левого верхнего угла заданной прямоугольной фигуры -
w- ширина заданной прямоугольной фигуры -
h- высота заданной прямоугольной фигуры - С момента:
- 1.2
- См. также:
setFrame
public void setFrame(Point2D loc, Dimension2D size)
Shape на заданные Point2D и Dimension2D соответственно. Рамка используется подклассами RectangularShape для определения своей геометрии.- Параметры:
-
loc- заданнаяPoint2D -
size- заданнаяDimension2D - С момента:
- 1.2
- См. также:
setFrame
public void setFrame(Rectangle2D r)
Shape на заданную Rectangle2D. Рамка используется подклассами RectangularShape для определения своей геометрии.- Параметры:
-
r- заданнаяRectangle2D - С момента:
- 1.2
- См. также:
setFrameFromDiagonal
public void setFrameFromDiagonal(double x1, double y1, double x2, double y2)
Shape на основе двух заданных координат. Рамка используется подклассами RectangularShape для определения своей геометрии.- Параметры:
-
x1- координата X начальной точки заданной диагонали -
y1- координата Y начальной точки заданной диагонали -
x2- координата X конечной точки заданной диагонали -
y2- координата Y конечной точки заданной диагонали - С момента:
- 1.2
setFrameFromDiagonal
public void setFrameFromDiagonal(Point2D p1, Point2D p2)
Shape на основе двух заданных объектов Point2D. Рамка используется подклассами RectangularShape для определения своей геометрии.- Параметры:
-
p1- начальнаяPoint2Dзаданной диагонали -
p2- конечнаяPoint2Dзаданной диагонали - С момента:
- 1.2
setFrameFromCenter
public void setFrameFromCenter(double centerX, double centerY, double cornerX, double cornerY)
Shape на основе заданной центральной точки и координаты угла. Рамка используется подклассами RectangularShape для определения своей геометрии.- Параметры:
-
centerX- координата X заданной центральной точки -
centerY- координата Y заданной центральной точки -
cornerX- координата X заданной угловой точки -
cornerY- координата Y заданной угловой точки - С момента:
- 1.2
setFrameFromCenter
public void setFrameFromCenter(Point2D center, Point2D corner)
Shape на основе заданной центральной Point2D и угловой Point2D. Рамка используется подклассами RectangularShape для определения своей геометрии.- Параметры:
-
center- заданная центральнаяPoint2D -
corner- заданная угловаяPoint2D - С момента:
- 1.2
contains
public boolean contains(Point2D p)
Point2D внутри границ Shape, как описано в определении принадлежности.- Определено в:
-
containsв интерфейсеShape - Параметры:
-
p- указаннаяPoint2Dдля проверки - Возвращает:
-
true, если указаннаяPoint2Dнаходится внутри границShape;falseв противном случае. - С:
- 1.2
intersects
public boolean intersects(Rectangle2D r)
Shape с внутренней областью указанного Rectangle2D. Метод Shape.intersects() позволяет реализации Shape консервативно возвращать true в следующих случаях: - существует высокая вероятность пересечения
Rectangle2DиShape, но - вычисления для точного определения этого пересечения слишком дорогостоящие.
Shapes этот метод может возвращать true, даже если Rectangle2D не пересекается с Shape. Класс Area выполняет более точные вычисления геометрических пересечений, чем большинство объектов Shape и, следовательно, может быть использован, если требуется более точный ответ.- Определено в:
-
intersectsв интерфейсеShape - Параметры:
-
r- указанныйRectangle2D - Возвращает:
-
true, если внутренняя областьShapeи внутренняя область указанногоRectangle2Dпересекаются или с высокой вероятностью пересекаются, но вычисления пересечения слишком дорогостоящи;falseв противном случае. - С:
- 1.2
- См. также:
contains
public boolean contains(Rectangle2D r)
Shape содержит указанный Rectangle2D. Метод Shape.contains() позволяет реализации Shape консервативно возвращать false в следующих случаях: - метод
intersectвозвращаетtrueи - вычисления для определения того, полностью ли
ShapeсодержитRectangle2D, слишком дорогостоящие.
Shapes этот метод может возвращать false, даже если Shape содержит Rectangle2D. Класс Area выполняет более точные геометрические вычисления, чем большинство объектов Shape и, следовательно, может быть использован, если требуется более точный ответ.- Определено в:
-
containsв интерфейсеShape - Параметры:
-
r- УказанныйRectangle2D - Возвращает:
-
true, если внутренняя областьShapeполностью содержитRectangle2D;falseв противном случае, или еслиShapeсодержитRectangle2Dи методintersectsвозвращаетtrue, а вычисления принадлежности слишком дорогостоящие. - С:
- 1.2
- См. также:
getBounds
public Rectangle getBounds()
Rectangle, полностью охватывающие Shape. Обратите внимание, что нет гарантии, что возвращаемый Rectangle является наименьшей ограничивающей прямоугольником, охватывающей Shape, только что Shape полностью лежит внутри указанного Rectangle. Возвращаемый Rectangle также может не полностью охватить Shape, если Shape выходит за пределы ограниченного диапазона целочисленного типа данных. Метод getBounds2D обычно возвращает более узкий ограничивающий прямоугольник из-за большей гибкости в представлении. Обратите внимание, что определение принадлежности может привести к ситуациям, когда точки на определяющей контуре shape могут не считаться содержащимися в возвращаемом bounds объекте, но только в тех случаях, когда эти точки также не считаются содержащимися в исходном shape.
Если point находится внутри shape согласно методу contains(point), то он должен находиться внутри границ возвращаемого Rectangle объекта согласно методу contains(point) bounds.
shape.contains(x,y) требует bounds.contains(x,y)
Если point не находится внутри shape, то он все еще может быть заключен в bounds объект:
bounds.contains(x,y) не подразумевает shape.contains(x,y)
- Определено в:
-
getBoundsв интерфейсеShape - Возвращает:
- целые координаты
Rectangle, полностью охватывающиеShape. - С:
- 1.2
- См. также:
getPathIterator
public PathIterator getPathIterator(AffineTransform at, double flatness)
Shape и обеспечивает доступ к сплющенному представлению контура геометрии объекта Shape. Итератор будет возвращать только типы точек SEG_MOVETO, SEG_LINETO и SEG_CLOSE.
Степень разбиения криволинейных отрезков контролируется параметром flatness, который задает максимальное расстояние, на которое любая точка на несплющенной преобразованной кривой может отклоняться от возвращаемых сплющенных отрезков пути. Можно указать необязательное AffineTransform, чтобы координаты, возвращаемые при итерации, преобразовывались соответствующим образом.
- Определено в:
-
getPathIteratorв интерфейсеShape - Параметры:
-
at- необязательноеAffineTransformдля применения к координатам по мере их возврата в процессе итерации, илиnullдля получения не преобразованных координат. -
flatness- максимальное расстояние, на которое отрезки прямых, используемые для аппроксимации криволинейных отрезков, могут отклоняться от любой точки исходной кривой - Возвращает:
- объект
PathIterator, который предоставляет доступ к сплющенной геометрии объектаShape. - С:
- 1.2
clone
public Object clone()
- Переопределяет:
-
cloneв классеObject - Возвращает:
- клонированный экземпляр.
- Исключения:
-
OutOfMemoryError- если памяти недостаточно. - С:
- 1.2
- См. также:
© 1993, 2023, 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/21/docs/api/java.desktop/java/awt/geom/RectangularShape.html