|
Spec-Zone .ru
спецификации, руководства, описания, API
|
public abstract class Rectangle2D extends RectangularShape
Rectangle2D class описывает прямоугольник, определенный расположением (x,y) и размерность (w x h). Этот class является только абстрактным суперклассом для всех объектов, которые хранят 2-D прямоугольник. Фактическое представление хранения координат оставляют подклассу.
| Модификатор и Тип | Класс и Описание |
|---|---|
static class |
Rectangle2D.Double
Double class определяет прямоугольник, определенный в двойных координатах. |
static class |
Rectangle2D.Float
Float class определяет прямоугольник, определенный в координатах плавающих. |
| Модификатор и Тип | Поле и Описание |
|---|---|
static int |
OUT_BOTTOM
Битовая маска, которая указывает, что точка находится ниже этого
Rectangle2D. |
static int |
OUT_LEFT
Битовая маска, которая указывает, что точка находится налево от этого
Rectangle2D. |
static int |
OUT_RIGHT
Битовая маска, которая указывает, что точка находится направо от этого
Rectangle2D. |
static int |
OUT_TOP
Битовая маска, которая указывает, что точка находится выше этого
Rectangle2D. |
| Модификатор | Конструктор и Описание |
|---|---|
protected |
Rectangle2D()
Это - абстрактный class, который нельзя инстанцировать непосредственно.
|
| Модификатор и Тип | Метод и Описание |
|---|---|
void |
add(double newx, double newy)
Добавляет точка, определенная параметрами двойной точности
newx и newy, к этому Rectangle2D. |
void |
add(Point2D pt)
Добавляет
Point2D объект pt к этому Rectangle2D. |
void |
add(Rectangle2D r)
Добавляет a
Rectangle2D возразите против этого Rectangle2D. |
boolean |
contains(double x, double y)
Тесты, если указанные координаты в границе
Shape, как описано определением внутренних. |
boolean |
contains(double x, double y, double w, double h)
Тесты, если внутренняя часть
Shape полностью содержит указанную прямоугольную область. |
abstract Rectangle2D |
createIntersection(Rectangle2D r)
Возвращает новое
Rectangle2D объект, представляющий пересечение этого Rectangle2D с указанным Rectangle2D. |
abstract Rectangle2D |
createUnion(Rectangle2D r)
Возвращает новое
Rectangle2D объект, представляющий объединение этого Rectangle2D с указанным Rectangle2D. |
boolean |
equals(Object obj)
Определяет действительно ли указанное
Object равно этому Rectangle2D. |
Rectangle2D |
getBounds2D()
Возвращает высокую точность и более точный ограничивающий прямоугольник
Shape чем getBounds метод. |
PathIterator |
getPathIterator(AffineTransform at)
Возвращает итеративный объект, который определяет границу этого
Rectangle2D. |
PathIterator |
getPathIterator(AffineTransform at, double flatness)
Возвращает итеративный объект, который определяет границу сглаженного
Rectangle2D. |
int |
hashCode()
Возвращает хэш-код для этого
Rectangle2D. |
static void |
intersect(Rectangle2D src1, Rectangle2D src2, Rectangle2D dest)
Пересекает пару указанного источника
Rectangle2D объекты и помещают результат в указанное место назначения Rectangle2D объект. |
boolean |
intersects(double x, double y, double w, double h)
Тесты, если внутренняя часть
Shape пересекает внутреннюю часть указанной прямоугольной области. |
boolean |
intersectsLine(double x1, double y1, double x2, double y2)
Тесты, если указанный линейный сегмент пересекает внутреннюю часть этого
Rectangle2D. |
boolean |
intersectsLine(Line2D l)
Тесты, если указанный линейный сегмент пересекает внутреннюю часть этого
Rectangle2D. |
abstract int |
outcode(double x, double y)
Определяет, где указанные координаты лежат относительно этого
Rectangle2D. |
int |
outcode(Point2D p)
Определяет где указанное
Point2D находится относительно этого Rectangle2D. |
void |
setFrame(double x, double y, double w, double h)
Устанавливает расположение и размер внешних границ этого
Rectangle2D к указанным прямоугольным значениям. |
abstract void |
setRect(double x, double y, double w, double h)
Устанавливает расположение и размер этого
Rectangle2D к указанному double значения. |
void |
setRect(Rectangle2D r)
Наборы это
Rectangle2D быть тем же самым как указанным Rectangle2D. |
static void |
union(Rectangle2D src1, Rectangle2D src2, Rectangle2D dest)
Объединения пара источника
Rectangle2D объекты и помещают результат в указанное место назначения Rectangle2D объект. |
clone, contains, contains, getBounds, getCenterX, getCenterY, getFrame, getHeight, getMaxX, getMaxY, getMinX, getMinY, getWidth, getX, getY, intersects, isEmpty, setFrame, setFrame, setFrameFromCenter, setFrameFromCenter, setFrameFromDiagonal, setFrameFromDiagonalpublic static final int OUT_LEFT
Rectangle2D.public static final int OUT_TOP
Rectangle2D.public static final int OUT_RIGHT
Rectangle2D.public static final int OUT_BOTTOM
Rectangle2D.protected Rectangle2D()
Rectangle2D.Float, Rectangle2D.Double, Rectanglepublic abstract void setRect(double x,
double y,
double w,
double h)
Rectangle2D к указанному double значения.x - X координат верхнего левого угла этого Rectangle2Dy - координата Y верхнего левого угла этого Rectangle2Dw - width этого Rectangle2Dh - height этого Rectangle2Dpublic void setRect(Rectangle2D r)
Rectangle2D быть тем же самым как указанным Rectangle2D.r - указанное Rectangle2Dpublic boolean intersectsLine(double x1,
double y1,
double x2,
double y2)
Rectangle2D.x1 - X координат стартовой точки указанного линейного сегментаy1 - координата Y стартовой точки указанного линейного сегментаx2 - X координат конечной точки указанного линейного сегментаy2 - координата Y конечной точки указанного линейного сегментаtrue если указанный линейный сегмент пересекает внутреннюю часть этого Rectangle2D; false иначе.public boolean intersectsLine(Line2D l)
Rectangle2D.l - указанное Line2D протестировать на пересечение с внутренней частью этого Rectangle2Dtrue если указанное Line2D пересекает внутреннюю часть этого Rectangle2D; false иначе.public abstract int outcode(double x,
double y)
Rectangle2D. Этот метод вычисляет двоичный файл, ИЛИ соответствующей маски оценивает указание, для каждой стороны этого Rectangle2D, являются ли указанные координаты на той же самой стороне края как остальная часть этого Rectangle2D.x - указанное X координатy - указанная координата YOUT_LEFT, OUT_TOP, OUT_RIGHT, OUT_BOTTOMpublic int outcode(Point2D p)
Point2D находится относительно этого Rectangle2D. Этот метод вычисляет двоичный файл, ИЛИ соответствующей маски оценивает указание, для каждой стороны этого Rectangle2D, действительно ли указанное Point2D находится на той же самой стороне края как остальная часть этого Rectangle2D.p - указанное Point2DOUT_LEFT, OUT_TOP, OUT_RIGHT, OUT_BOTTOMpublic void setFrame(double x,
double y,
double w,
double h)
Rectangle2D к указанным прямоугольным значениям.setFrame в class RectangularShapex - X координат верхнего левого угла этого Rectangle2Dy - координата Y верхнего левого угла этого Rectangle2Dw - width этого Rectangle2Dh - height этого Rectangle2DRectangularShape.getFrame()public Rectangle2D getBounds2D()
Shape чем getBounds метод. Отметьте, что нет никакой гарантии что возвращенный Rectangle2D самый маленький ограничивающий прямоугольник, который включает Shape, только то, что Shape находится полностью в пределах обозначенного Rectangle2D. Ограничивающий прямоугольник, возвращенный этим методом, обычно более труден чем возвращенное getBounds метод и никогда не перестал работать должный переполнить проблем, так как возвращаемое значение может быть экземпляром Rectangle2D это использует значения двойной точности, чтобы сохранить размерности. Отметьте, что определение внутренних может привести к ситуациям где точки на схеме определения shape возможно, не считается содержавшимся в возвращенном bounds объект, но только в случаях, где те вопросы также не рассматриваются содержавшиеся в оригинале shape.
Если a point в shape согласно contains(point) метод, тогда это должно быть в возвращенном Rectangle2D границы возражают согласно contains(point) метод bounds. Определенно:
shape.contains(p) требует bounds.contains(p)
Если a point не в shape, тогда это могло бы все еще содержаться в bounds объект:
bounds.contains(p) не подразумевает shape.contains(p)
Rectangle2D это - ограничивающий прямоугольник высокой точности Shape.Shape.getBounds()public boolean contains(double x,
double y)
Shape, как описано определением внутренних.x - указанное X координат, которые будут протестированыy - указанные Y координируют, чтобы быть протестированнымиtrue если указанные координаты в Shape граница; false иначе.public boolean intersects(double x,
double y,
double w,
double h)
Shape пересекает внутреннюю часть указанной прямоугольной области. Прямоугольная область, как полагают, пересекается Shape если какая-либо точка содержится в обоих внутренняя часть Shape и указанная прямоугольная область. Shape.intersects() метод позволяет a Shape реализация, чтобы консервативно возвратиться true когда:
Shape пересекитесь, но Shapes этот метод мог бы возвратиться true даже при том, что прямоугольная область не пересекается Shape. Area class выполняет более точные вычисления геометрического пересечения чем больше всего Shape объекты и поэтому могут использоваться, если более точный ответ требуется.x - X координат верхнего левого угла указанной прямоугольной областиy - координата Y верхнего левого угла указанной прямоугольной областиw - width указанной прямоугольной областиh - height указанной прямоугольной областиtrue если внутренняя часть Shape и внутренняя часть прямоугольной области пересекается, или, и, очень вероятно, пересечется и перекрестные вычисления, было бы слишком дорого, чтобы выполнить; false иначе.Areapublic boolean contains(double x,
double y,
double w,
double h)
Shape полностью содержит указанную прямоугольную область. Все координаты, которые лежат в прямоугольной области, должны лечь в пределах Shape для всей rectanglar области, которую рассмотрят содержавший в пределах Shape. Shape.contains() метод позволяет a Shape реализация, чтобы консервативно возвратиться false когда:
intersect возвраты метода true и Shape полностью содержит прямоугольную область, предельно дороги. Shapes этот метод мог бы возвратиться false даже при том, что Shape содержит прямоугольную область. Area class выполняет более точные геометрические вычисления чем больше всего Shape объекты и поэтому могут использоваться, если более точный ответ требуется.x - X координат верхнего левого угла указанной прямоугольной областиy - координата Y верхнего левого угла указанной прямоугольной областиw - width указанной прямоугольной областиh - height указанной прямоугольной областиtrue если внутренняя часть Shape полностью содержит указанную прямоугольную область; false иначе или, если Shape содержит прямоугольную область и intersects возвраты метода true и вычисления включения были бы слишком дороги, чтобы выполнить.Area, Shape.intersects(double, double, double, double)public abstract Rectangle2D createIntersection(Rectangle2D r)
Rectangle2D объект, представляющий пересечение этого Rectangle2D с указанным Rectangle2D.r - Rectangle2D быть пересеченным с этим Rectangle2DRectangle2D содержавшийся в обоих указанное Rectangle2D и в этом Rectangle2D.public static void intersect(Rectangle2D src1, Rectangle2D src2, Rectangle2D dest)
Rectangle2D объекты и помещают результат в указанное место назначения Rectangle2D объект. Один из исходных прямоугольников может также быть местом назначения, чтобы избежать создавать третий объект Rectangle2D, но в этом случае исходные точки этого исходного прямоугольника будут перезаписаны этим методом.src1 - первая из пары Rectangle2D объекты, которые будут пересечены друг с другомsrc2 - вторая из пары Rectangle2D объекты, которые будут пересечены друг с другомdest - Rectangle2D это содержит результаты пересечения src1 и src2public abstract Rectangle2D createUnion(Rectangle2D r)
Rectangle2D объект, представляющий объединение этого Rectangle2D с указанным Rectangle2D.r - Rectangle2D быть объединенным с этим Rectangle2DRectangle2D содержа обоих указанное Rectangle2D и это Rectangle2D.public static void union(Rectangle2D src1, Rectangle2D src2, Rectangle2D dest)
Rectangle2D объекты и помещают результат в указанное место назначения Rectangle2D объект. Один из исходных прямоугольников может также быть местом назначения, чтобы избежать создавать третий объект Rectangle2D, но в этом случае исходные точки этого исходного прямоугольника будут перезаписаны этим методом.src1 - первая из пары Rectangle2D объекты, которые будут объединены друг с другомsrc2 - вторая из пары Rectangle2D объекты, которые будут объединены друг с другомdest - Rectangle2D это содержит результаты объединения src1 и src2public void add(double newx,
double newy)
newx и newy, к этому Rectangle2D. Получающееся Rectangle2D является самым маленьким Rectangle2D это содержит обоих оригинал Rectangle2D и указанная точка. После добавления точки, звонка contains с добавленной точкой, поскольку не обязательно возвращается параметр true. contains метод не возвращается true для точек на правых или базовых краях прямоугольника. Поэтому, если добавленная точка падает на левый или базовый край увеличенного прямоугольника, contains возвраты false для той точки.
newx - X координат новой точкиnewy - координата Y новой точкиpublic void add(Point2D pt)
Point2D объект pt к этому Rectangle2D. Получающееся Rectangle2D является самым маленьким Rectangle2D это содержит обоих оригинал Rectangle2D и указанное Point2D. После добавления точки, звонка contains с добавленной точкой, поскольку не обязательно возвращается параметр true. contains метод не возвращается true для точек на правых или базовых краях прямоугольника. Поэтому, если добавленная точка падает на левый или базовый край увеличенного прямоугольника, contains возвраты false для той точки.
pt - новое Point2D добавить к этому Rectangle2D.public void add(Rectangle2D r)
Rectangle2D возразите против этого Rectangle2D. Получающееся Rectangle2D объединение двух Rectangle2D объекты.r - Rectangle2D добавить к этому Rectangle2D.public PathIterator getPathIterator(AffineTransform at)
Rectangle2D. iterator для этого class является многопоточным сейфом, что означает что это Rectangle2D class гарантирует что модификации геометрии этого Rectangle2D объект не влияет ни на какие итерации той геометрии, которые уже находятся в процессе.at - дополнительное AffineTransform быть примененным к координатам, поскольку они возвращаются в итерации, или null если непреобразованные координаты требуютсяPathIterator возразите, что возвращает геометрию схемы этого Rectangle2D, один сегмент за один раз.public PathIterator getPathIterator(AffineTransform at, double flatness)
Rectangle2D. Так как прямоугольники являются уже плоскими, flatness параметр игнорируется. iterator для этого class является многопоточным сейфом, что означает что это Rectangle2D class гарантирует что модификации геометрии этого Rectangle2D объект не влияет ни на какие итерации той геометрии, которые уже находятся в процессе.getPathIterator в интерфейсе ShapegetPathIterator в class RectangularShapeat - дополнительное AffineTransform быть примененным к координатам, поскольку они возвращаются в итерации, или null если непреобразованные координаты требуютсяflatness - максимальное расстояние, которое линейным сегментам, используемым, чтобы приблизить кривые сегменты, позволяют отклонить от любой точки на исходной кривой. Так как прямоугольники являются уже плоскими, flatness параметр игнорируется.PathIterator возразите, что возвращает геометрию схемы этого Rectangle2D, один сегмент за один раз.public int hashCode()
Rectangle2D.hashCode в class ObjectRectangle2D.Object.equals(java.lang.Object), System.identityHashCode(java.lang.Object)public boolean equals(Object obj)
Object равно этому Rectangle2D. Указанное Object равно этому Rectangle2D если это - экземпляр Rectangle2D и если его расположение и размер являются тем же самым как этим Rectangle2D.equals в class Objectobj - Object быть по сравнению с этим Rectangle2D.true если obj экземпляр Rectangle2D и имеет те же самые значения; false иначе.Object.hashCode(), HashMap
Для дальнейшей ссылки API и документации разработчика, см. Java Документация SE. Та документация содержит более подробные, предназначенные разработчиком описания, с концептуальными краткими обзорами, определениями сроков, обходных решений, и рабочих примеров кода.
Авторское право © 1993, 2013, Oracle и/или его филиалы. Все права защищены.
Проект сборка-b92