Класс 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, который определяет общую форму этого объекта.- Возвращает:
- a
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, а вычисления containment являются слишком дорогостоящими. - С:
- 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, 2021, 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/17/docs/api/java.desktop/java/awt/geom/RectangularShape.html