|
Spec-Zone .ru
спецификации, руководства, описания, API
|
public abstract class QuadCurve2D extends Object implements Shape, Cloneable
QuadCurve2D class определяет квадратный параметрический сегмент кривой в (x,y) координатное пространство. Этот class является только абстрактным суперклассом для всех объектов, которые хранят 2-D квадратный сегмент кривой. Фактическое представление хранения координат оставляют подклассу.
| Модификатор и Тип | Класс и Описание |
|---|---|
static class |
QuadCurve2D.Double
Квадратный параметрический сегмент кривой, определенный с
double координаты. |
static class |
QuadCurve2D.Float
Квадратный параметрический сегмент кривой, определенный с
float координаты. |
| Модификатор | Конструктор и Описание |
|---|---|
protected |
QuadCurve2D()
Это - абстрактный class, который нельзя инстанцировать непосредственно.
|
| Модификатор и Тип | Метод и Описание |
|---|---|
Объект |
clone()
Создает новый объект того же самого class и с тем же самым содержанием как этот объект.
|
boolean |
contains(double x, double y)
Тесты, если указанные координаты в границе
Shape, как описано определением внутренних. |
boolean |
contains(double x, double y, double w, double h)
Тесты, если внутренняя часть
Shape полностью содержит указанную прямоугольную область. |
boolean |
contains(Point2D p)
|
boolean |
contains(Rectangle2D r)
Тесты, если внутренняя часть
Shape полностью содержит указанное Rectangle2D. |
Прямоугольник |
getBounds()
Возвращает целое число
Rectangle это полностью включает Shape. |
abstract Point2D |
getCtrlPt()
Возвращает контрольную точку.
|
abstract double |
getCtrlX()
Возвращает X координат контрольной точки в
double точность. |
abstract double |
getCtrlY()
Возвращает координату Y контрольной точки в
double точность. |
double |
getFlatness()
Возвращает плоскость, или максимальное расстояние контрольной точки от строки, соединяющей конечные точки, этого
QuadCurve2D. |
static double |
getFlatness(double[] coords, int offset)
Возвращает плоскость, или максимальное расстояние контрольной точки от строки, соединяющей конечные точки, квадратной кривой, определенной контрольными точками, сохраненными в обозначенном массиве в обозначенном, индексирует.
|
static double |
getFlatness(double x1, double y1, double ctrlx, double ctrly, double x2, double y2)
Возвращает плоскость, или максимальное расстояние контрольной точки от строки, соединяющей конечные точки, квадратной кривой, определенной обозначенными контрольными точками.
|
double |
getFlatnessSq()
Возвращает квадрат плоскости, или максимальное расстояние контрольной точки от строки, соединяющей конечные точки, этого
QuadCurve2D. |
static double |
getFlatnessSq(double[] coords, int offset)
Возвращает квадрат плоскости, или максимальное расстояние контрольной точки от строки, соединяющей конечные точки, квадратной кривой, определенной контрольными точками, сохраненными в обозначенном массиве в обозначенном, индексирует.
|
static double |
getFlatnessSq(double x1, double y1, double ctrlx, double ctrly, double x2, double y2)
Возвращает квадрат плоскости, или максимальное расстояние контрольной точки от строки, соединяющей конечные точки, квадратной кривой, определенной обозначенными контрольными точками.
|
abstract Point2D |
getP1()
Возвращает стартовую точку.
|
abstract Point2D |
getP2()
Возвращает конечную точку.
|
PathIterator |
getPathIterator(AffineTransform at)
Возвращает итеративный объект, который определяет границу формы этого
QuadCurve2D. |
PathIterator |
getPathIterator(AffineTransform at, double flatness)
Возвращает итеративный объект, который определяет границу сглаженной формы этого
QuadCurve2D. |
abstract double |
getX1()
Возвращает X координат стартовой точки в
double в точности. |
abstract double |
getX2()
Возвращает X координат конечной точки в
double точность. |
abstract double |
getY1()
Возвращает координату Y стартовой точки в
double точность. |
abstract double |
getY2()
Возвращает координату Y конечной точки в
double точность. |
boolean |
intersects(double x, double y, double w, double h)
Тесты, если внутренняя часть
Shape пересекает внутреннюю часть указанной прямоугольной области. |
boolean |
intersects(Rectangle2D r)
Тесты, если внутренняя часть
Shape пересекает внутреннюю часть указанного Rectangle2D. |
void |
setCurve(double[] coords, int offset)
Устанавливает расположение конечных точек и контрольные точки этого
QuadCurve2D к double координаты при указанном смещении в указанном массиве. |
abstract void |
setCurve(double x1, double y1, double ctrlx, double ctrly, double x2, double y2)
Устанавливает расположение конечных точек и контрольную точку этой кривой к указанному
double координаты. |
void |
setCurve(Point2D[] pts, int offset)
Устанавливает расположение конечных точек и контрольные точки этого
QuadCurve2D к координатам Point2D объекты при указанном смещении в указанном массиве. |
void |
setCurve(Point2D p1, Point2D cp, Point2D p2)
Устанавливает расположение конечных точек и контрольную точку этого
QuadCurve2D к указанному Point2D координаты. |
void |
setCurve(QuadCurve2D c)
Устанавливает расположение конечных точек и контрольную точку этого
QuadCurve2D к тому же самому как те в указанном QuadCurve2D. |
static int |
solveQuadratic(double[] eqn)
Решает квадратное, коэффициенты которого находятся в
eqn массив и места некомплекс базируются назад в тот же самый массив, возвращая число корней. |
static int |
solveQuadratic(double[] eqn, double[] res)
Решает квадратное, коэффициенты которого находятся в
eqn массив и места некомплекс базируются в res массив, возвращая число корней. |
static void |
subdivide(double[] src, int srcoff, double[] left, int leftoff, double[] right, int rightoff)
Подразделяет квадратную кривую, определенную координатами, сохраненными в
src массив в индексах srcoff через srcoff + 5 и хранилища получающиеся две подразделенных кривые в два массива результата в соответствующих индексах. |
void |
subdivide(QuadCurve2D left, QuadCurve2D right)
Подразделяет это
QuadCurve2D и хранит получающиеся две подразделенных кривые в left и right параметры кривой. |
static void |
subdivide(QuadCurve2D src, QuadCurve2D left, QuadCurve2D right)
Подразделяет квадратную кривую, определенную
src параметр и хранилища получающиеся две подразделенных кривые в left и right параметры кривой. |
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitgetBounds2Dprotected QuadCurve2D()
QuadCurve2D.Float, QuadCurve2D.Doublepublic abstract double getX1()
double в точности.public abstract double getY1()
double точность.public abstract Point2D getP1()
Point2D это - стартовая точка этого QuadCurve2D.public abstract double getCtrlX()
double точность.public abstract double getCtrlY()
double точность.public abstract Point2D getCtrlPt()
Point2D это - контрольная точка этого Point2D.public abstract double getX2()
double точность.public abstract double getY2()
double точность.public abstract Point2D getP2()
Point объект, который является конечной точкой этого Point2D.public abstract void setCurve(double x1,
double y1,
double ctrlx,
double ctrly,
double x2,
double y2)
double координаты.x1 - X координат стартовой точкиy1 - координата Y стартовой точкиctrlx - X координат контрольной точкиctrly - координата Y контрольной точкиx2 - X координат конечной точкиy2 - координата Y конечной точкиpublic void setCurve(double[] coords,
int offset)
QuadCurve2D к double координаты при указанном смещении в указанном массиве.coords - массив, содержащий координатные значенияoffset - индексирование в массив, от которого можно начать получать координатные значения и присваивать их этому QuadCurve2Dpublic void setCurve(Point2D p1, Point2D cp, Point2D p2)
QuadCurve2D к указанному Point2D координаты.p1 - стартовая точкаcp - контрольная точкаp2 - конечная точкаpublic void setCurve(Point2D[] pts, int offset)
QuadCurve2D к координатам Point2D объекты при указанном смещении в указанном массиве.pts - массив, содержащий Point2D это определяет координатные значенияoffset - индексирование в pts от которого можно начать получать координатные значения и присваивать их этому QuadCurve2Dpublic void setCurve(QuadCurve2D c)
QuadCurve2D к тому же самому как те в указанном QuadCurve2D.c - указанное QuadCurve2Dpublic static double getFlatnessSq(double x1,
double y1,
double ctrlx,
double ctrly,
double x2,
double y2)
x1 - X координат стартовой точкиy1 - координата Y стартовой точкиctrlx - X координат контрольной точкиctrly - координата Y контрольной точкиx2 - X координат конечной точкиy2 - координата Y конечной точкиpublic static double getFlatness(double x1,
double y1,
double ctrlx,
double ctrly,
double x2,
double y2)
x1 - X координат стартовой точкиy1 - координата Y стартовой точкиctrlx - X координат контрольной точкиctrly - координата Y контрольной точкиx2 - X координат конечной точкиy2 - координата Y конечной точкиpublic static double getFlatnessSq(double[] coords,
int offset)
coords - массив, содержащий координатные значенияoffset - индексирование в coords от которого до начать получать значения от массиваpublic static double getFlatness(double[] coords,
int offset)
coords - массив, содержащий координатные значенияoffset - индексирование в coords от которого можно начать получать координатные значенияpublic double getFlatnessSq()
QuadCurve2D.QuadCurve2D.public double getFlatness()
QuadCurve2D.QuadCurve2D.public void subdivide(QuadCurve2D left, QuadCurve2D right)
QuadCurve2D и хранит получающиеся две подразделенных кривые в left и right параметры кривой. Или или оба из left и right объекты могут быть тем же самым как этим QuadCurve2D или null.left - QuadCurve2D объект для того, чтобы сохранить покинутых или первую половину подразделенной кривойright - QuadCurve2D объект для того, чтобы сохранить правильную или вторую половину подразделенной кривойpublic static void subdivide(QuadCurve2D src, QuadCurve2D left, QuadCurve2D right)
src параметр и хранилища получающиеся две подразделенных кривые в left и right параметры кривой. Или или оба из left и right объекты могут быть тем же самым как src объект или null.src - квадратная кривая, которая будет подразделенаleft - QuadCurve2D объект для того, чтобы сохранить покинутых или первую половину подразделенной кривойright - QuadCurve2D объект для того, чтобы сохранить правильную или вторую половину подразделенной кривойpublic static void subdivide(double[] src,
int srcoff,
double[] left,
int leftoff,
double[] right,
int rightoff)
src массив в индексах srcoff через srcoff + 5 и хранилища получающиеся две подразделенных кривые в два массива результата в соответствующих индексах. Или или оба из left и right массивы могут быть null или ссылка на тот же самый массив и смещение как src массив. Отметьте, что последняя точка в первой подразделенной кривой является тем же самым как первой точкой во второй подразделенной кривой. Таким образом возможно передать тот же самый массив для left и right и использовать смещения так, что rightoff равняется leftoff + 4, чтобы избежать выделять дополнительное хранение для этой общей точки.src - массив, содержащий координаты для исходной кривойsrcoff - смещение в массив начала 6 исходных координатleft - массив для того, чтобы сохранить координаты для первой половины подразделенной кривойleftoff - смещение в массив начала 6 левых координатright - массив для того, чтобы сохранить координаты для второй половины подразделенной кривойrightoff - смещение в массив начала 6 правильных координатpublic static int solveQuadratic(double[] eqn)
eqn массив и места некомплекс базируются назад в тот же самый массив, возвращая число корней. Решенное квадратное представляется уравнением:
eqn = {C, B, A};
ax^2 + bx + c = 0
Возвращаемое значение -1 используется, чтобы отличить постоянное уравнение, которое могло бы всегда быть 0 или никогда 0 от уравнения, которое имеет, не обнуляет.eqn - массив, который содержит квадратные коэффициенты-1 если уравнение является константойpublic static int solveQuadratic(double[] eqn,
double[] res)
eqn массив и места некомплекс базируются в res массив, возвращая число корней. Решенное квадратное представляется уравнением:
eqn = {C, B, A};
ax^2 + bx + c = 0
Возвращаемое значение -1 используется, чтобы отличить постоянное уравнение, которое могло бы всегда быть 0 или никогда 0 от уравнения, которое имеет, не обнуляет.eqn - указанный массив коэффициентов, чтобы использовать, чтобы решить квадратное уравнениеres - массив, который содержит несложные корни, следующие из решения квадратного уравнения-1 если уравнение является константой.public boolean contains(double x,
double y)
Shape, как описано определением внутренних.public boolean contains(Point2D p)
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 объекты и поэтому могут использоваться, если более точный ответ требуется.intersects в интерфейсе Shapex - X координат верхнего левого угла указанной прямоугольной областиy - координата Y верхнего левого угла указанной прямоугольной областиw - width указанной прямоугольной областиh - height указанной прямоугольной областиtrue если внутренняя часть Shape и внутренняя часть прямоугольной области пересекается, или, и, очень вероятно, пересечется и перекрестные вычисления, было бы слишком дорого, чтобы выполнить; false иначе.Areapublic boolean intersects(Rectangle2D r)
Shape пересекает внутреннюю часть указанного Rectangle2D. Shape.intersects() метод позволяет a Shape реализация, чтобы консервативно возвратиться true когда: Rectangle2D и Shape пересекитесь, но Shapes этот метод мог бы возвратиться true даже при том, что Rectangle2D не пересекается Shape. Area class выполняет более точные вычисления геометрического пересечения чем больше всего Shape объекты и поэтому могут использоваться, если более точный ответ требуется.intersects в интерфейсе Shaper - указанное Rectangle2Dtrue если внутренняя часть Shape и внутренняя часть указанного Rectangle2D пересекитесь, или, и, очень вероятно, пересекутся и перекрестные вычисления, было бы слишком дорого, чтобы выполнить; false иначе.Shape.intersects(double, double, double, double)public 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 объекты и поэтому могут использоваться, если более точный ответ требуется.contains в интерфейсе Shapex - X координат верхнего левого угла указанной прямоугольной областиy - координата Y верхнего левого угла указанной прямоугольной областиw - width указанной прямоугольной областиh - height указанной прямоугольной областиtrue если внутренняя часть Shape полностью содержит указанную прямоугольную область; false иначе или, если Shape содержит прямоугольную область и intersects возвраты метода true и вычисления включения были бы слишком дороги, чтобы выполнить.Area, Shape.intersects(double, double, double, double)public boolean contains(Rectangle2D r)
Shape полностью содержит указанное Rectangle2D. Shape.contains() метод позволяет a Shape реализация, чтобы консервативно возвратиться false когда: intersect возвраты метода true и Shape полностью содержит Rectangle2D предельно дороги. Shapes этот метод мог бы возвратиться false даже при том, что Shape содержит Rectangle2D. Area class выполняет более точные геометрические вычисления чем больше всего Shape объекты и поэтому могут использоваться, если более точный ответ требуется.contains в интерфейсе Shaper - Указанное Rectangle2Dtrue если внутренняя часть Shape полностью содержит Rectangle2D; false иначе или, если Shape содержит Rectangle2D и intersects возвраты метода true и вычисления включения были бы слишком дороги, чтобы выполнить.Shape.contains(double, double, double, double)public Rectangle getBounds()
Rectangle это полностью включает Shape. Отметьте, что нет никакой гарантии что возвращенный Rectangle самый маленький ограничивающий прямоугольник, который включает Shape, только то, что Shape находится полностью в пределах обозначенного Rectangle. Возвращенный Rectangle мог бы также быть не в состоянии полностью включить Shape если Shape переполняет ограниченного диапазона целочисленного типа данных. getBounds2D метод обычно возвращает более трудный ограничивающий прямоугольник из-за его большей гибкости в представлении. Отметьте, что определение внутренних может привести к ситуациям где точки на схеме определения shape возможно, не считается содержавшимся в возвращенном bounds объект, но только в случаях, где те вопросы также не рассматриваются содержавшиеся в оригинале shape.
Если a point в shape согласно contains(point) метод, тогда это должно быть в возвращенном Rectangle границы возражают согласно contains(point) метод bounds. Определенно:
shape.contains(x,y) требует bounds.contains(x,y)
Если a point не в shape, тогда это могло бы все еще содержаться в bounds объект:
bounds.contains(x,y) не подразумевает shape.contains(x,y)
getBounds в интерфейсе ShapeRectangle это полностью включает Shape.Shape.getBounds2D()public PathIterator getPathIterator(AffineTransform at)
QuadCurve2D. iterator для этого class не является многопоточным сейфом, что означает что это QuadCurve2D class не гарантирует что модификации геометрии этого QuadCurve2D объект не влияет ни на какие итерации той геометрии, которые уже находятся в процессе.getPathIterator в интерфейсе Shapeat - дополнительное AffineTransform применяться к границе формыPathIterator объект, который определяет границу формы.public PathIterator getPathIterator(AffineTransform at, double flatness)
QuadCurve2D. iterator для этого class не является многопоточным сейфом, что означает что это QuadCurve2D class не гарантирует что модификации геометрии этого QuadCurve2D объект не влияет ни на какие итерации той геометрии, которые уже находятся в процессе.getPathIterator в интерфейсе Shapeat - дополнительное AffineTransform применяться к границе формыflatness - максимальное расстояние, что контрольные точки для подразделенной кривой могут быть относительно строки, соединяющей конечные точки этой кривой перед этой кривой, заменяется прямой линией, соединяющей конечные точки.PathIterator объект, который определяет сглаженную границу формы.public Object clone()
clone в class ObjectOutOfMemoryError - если есть недостаточно памяти.Cloneable
Для дальнейшей ссылки API и документации разработчика, см. Java Документация SE. Та документация содержит более подробные, предназначенные разработчиком описания, с концептуальными краткими обзорами, определениями сроков, обходных решений, и рабочих примеров кода.
Авторское право © 1993, 2013, Oracle и/или его филиалы. Все права защищены.
Проект сборка-b92