Spec-Zone.ru › OpenJDK 21

Класс CubicCurve2D

java.lang.Object
java.awt.geom.CubicCurve2D
Все реализованные интерфейсы:
Shape, Cloneable
Непосредственные известные подклассы:
CubicCurve2D.Double, CubicCurve2D.Float
public abstract class CubicCurve2D extends Object implements Shape, Cloneable
Класс CubicCurve2D определяет сегмент кубической параметрической кривой в (x,y) системе координат.

Этот класс является только абстрактным суперклассом для всех объектов, хранящих сегмент 2D кубической кривой. Фактическое представление координат остается за подклассом.

С тех пор:
1.2

Краткое описание вложенных классов

Модификатор и тип Класс Описание
static class  CubicCurve2D.Double
Сегмент кубической параметрической кривой, заданный с помощью double координат.
static class  CubicCurve2D.Float
Сегмент кубической параметрической кривой, заданный с помощью float координат.

Краткое описание конструкторов

CubicCurve2D()
Модификатор Конструктор Описание
protected
Это абстрактный класс, который нельзя создать напрямую.

Краткое описание методов

Модификатор и тип Метод Описание
Object clone()
Создаёт новый объект того же класса, что и этот объект.
boolean contains(double x, double y)
Проверяет, находятся ли указанные координаты внутри границы Shape, как описано в определении внутри области.
boolean contains(double x, double y, double w, double h)
Проверяет, полностью ли внутренняя область Shape содержит указанную прямоугольную область.
boolean contains(Point2D p)
Проверяет, находится ли указанная Point2D внутри границы Shape, как описано в определении внутри области.
boolean contains(Rectangle2D r)
Проверяет, полностью ли внутренняя область Shape содержит указанную Rectangle2D.
Rectangle getBounds()
Возвращает целочисленный Rectangle, который полностью охватывает Shape.
Rectangle2D getBounds2D()
Возвращает высокоточную и более точную ограничивающую рамку Shape, чем метод getBounds.
abstract Point2D getCtrlP1()
Возвращает первую контрольную точку.
abstract Point2D getCtrlP2()
Возвращает вторую контрольную точку.
abstract double getCtrlX1()
Возвращает координату X первой контрольной точки с двойной точностью.
abstract double getCtrlX2()
Возвращает координату X второй контрольной точки с двойной точностью.
abstract double getCtrlY1()
Возвращает координату Y первой контрольной точки с двойной точностью.
abstract double getCtrlY2()
Возвращает координату Y второй контрольной точки с двойной точностью.
double getFlatness()
Возвращает плавность этой кривой.
static double getFlatness(double[] coords, int offset)
Возвращает плавность кубической кривой, заданной контрольными точками, хранящимися в указанном массиве по указанному индексу.
static double getFlatness(double x1, double y1, double ctrlx1, double ctrly1, double ctrlx2, double ctrly2, double x2, double y2)
Возвращает плавность кубической кривой, заданной указанными контрольными точками.
double getFlatnessSq()
Возвращает квадрат плавности этой кривой.
static double getFlatnessSq(double[] coords, int offset)
Возвращает квадрат плавности кубической кривой, заданной контрольными точками, хранящимися в указанном массиве по указанному индексу.
static double getFlatnessSq(double x1, double y1, double ctrlx1, double ctrly1, double ctrlx2, double ctrly2, double x2, double y2)
Возвращает квадрат плавности кубической кривой, заданной указанными контрольными точками.
abstract Point2D getP1()
Возвращает начальную точку.
abstract Point2D getP2()
Возвращает конечную точку.
PathIterator getPathIterator(AffineTransform at)
Возвращает объект итерации, определяющий границу фигуры.
PathIterator getPathIterator(AffineTransform at, double flatness)
Возвращает объект итерации, определяющий границу сглаженной фигуры.
abstract double getX1()
Возвращает координату X начальной точки с двойной точностью.
abstract double getX2()
Возвращает координату X конечной точки с двойной точностью.
abstract double getY1()
Возвращает координату Y начальной точки с двойной точностью.
abstract double getY2()
Возвращает координату Y конечной точки с двойной точностью.
boolean intersects(double x, double y, double w, double h)
Проверяет, пересекается ли внутренняя область Shape с внутренней областью указанной прямоугольной области.
boolean intersects(Rectangle2D r)
Проверяет, пересекается ли внутренняя область Shape с внутренней областью указанной Rectangle2D.
void setCurve(double[] coords, int offset)
Устанавливает расположение конечных и контрольных точек этой кривой в соответствии с координатами с плавающей точкой по указанному смещению в указанном массиве.
abstract void setCurve(double x1, double y1, double ctrlx1, double ctrly1, double ctrlx2, double ctrly2, double x2, double y2)
Устанавливает расположение конечных и контрольных точек этой кривой в соответствии с указанными координатами с плавающей точкой.
void setCurve(CubicCurve2D c)
Устанавливает расположение конечных и контрольных точек этой кривой в соответствии с теми же, что и в указанной CubicCurve2D.
void setCurve(Point2D[] pts, int offset)
Устанавливает расположение конечных и контрольных точек этой кривой в соответствии с координатами объектов Point2D по указанному смещению в указанном массиве.
void setCurve(Point2D p1, Point2D cp1, Point2D cp2, Point2D p2)
Устанавливает расположение конечных и контрольных точек этой кривой в соответствии с указанными координатами Point2D.
static int solveCubic(double[] eqn)
Решает кубическое уравнение, коэффициенты которого находятся в массиве eqn, и возвращает количество корней, размещая действительные корни обратно в тот же массив.
static int solveCubic(double[] eqn, double[] res)
Решает кубическое уравнение, коэффициенты которого находятся в массиве eqn, и размещает действительные корни в массив res, возвращая количество корней.
static void subdivide(double[] src, int srcoff, double[] left, int leftoff, double[] right, int rightoff)
Делит кубическую кривую, заданную координатами, хранящимися в массиве src по индексам srcoff до (srcoff + 7), и сохраняет полученные две разделенные кривые в двух результатных массивах по соответствующим индексам.
void subdivide(CubicCurve2D left, CubicCurve2D right)
Делит эту кубическую кривую и сохраняет полученные две разделенные кривые в левой и правой кривых.
static void subdivide(CubicCurve2D src, CubicCurve2D left, CubicCurve2D right)
Делит кубическую кривую, заданную параметром src, и сохраняет полученные две разделенные кривые в параметрах кривых left и right.

Методы, объявленные в классе java.lang.Object

equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

Подробное описание конструкторов

CubicCurve2D

protected CubicCurve2D()
Это абстрактный класс, который нельзя создать напрямую. Существуют подклассы конкретных типов, которые можно создать и предоставляют множество форматов для хранения информации, необходимой для удовлетворения различных методов доступа ниже.
С тех пор:
1.2
См. также:
  • CubicCurve2D.Float
  • CubicCurve2D.Double

Подробное описание методов

getX1

public abstract double getX1()
Возвращает координату X начальной точки с двойной точностью.
Возвращает:
координату X начальной точки CubicCurve2D.
С тех пор:
1.2

getY1

public abstract double getY1()
Возвращает координату Y начальной точки с двойной точностью.
Возвращает:
координату Y начальной точки CubicCurve2D.
С тех пор:
1.2

getP1

public abstract Point2D getP1()
Возвращает начальную точку.
Возвращает:
объект Point2D, представляющий начальную точку CubicCurve2D.
С тех пор:
1.2

getCtrlX1

public abstract double getCtrlX1()
Возвращает координату X первой контрольной точки с двойной точностью.
Возвращает:
координату X первой контрольной точки CubicCurve2D.
С тех пор:
1.2

getCtrlY1

public abstract double getCtrlY1()
Возвращает координату Y первой контрольной точки с двойной точностью.
Возвращает:
координату Y первой контрольной точки CubicCurve2D.
С тех пор:
1.2

getCtrlP1

public abstract Point2D getCtrlP1()
Возвращает первую контрольную точку.
Возвращает:
объект Point2D, представляющий первую контрольную точку CubicCurve2D.
С тех пор:
1.2

getCtrlX2

public abstract double getCtrlX2()
Возвращает координату X второй контрольной точки с двойной точностью.
Возвращает:
координату X второй контрольной точки CubicCurve2D.
С тех пор:
1.2

getCtrlY2

public abstract double getCtrlY2()
Возвращает координату Y второй контрольной точки с двойной точностью.
Возвращает:
координату Y второй контрольной точки CubicCurve2D.
С тех пор:
1.2

getCtrlP2

public abstract Point2D getCtrlP2()
Возвращает вторую контрольную точку.
Возвращает:
объект Point2D, представляющий вторую контрольную точку CubicCurve2D.
С тех пор:
1.2

getX2

public abstract double getX2()
Возвращает координату X конечной точки с двойной точностью.
Возвращает:
координату X конечной точки CubicCurve2D.
С тех пор:
1.2

getY2

public abstract double getY2()
Возвращает координату Y конечной точки с двойной точностью.
Возвращает:
координату Y конечной точки CubicCurve2D.
С тех пор:
1.2

getP2

public abstract Point2D getP2()
Возвращает конечную точку.
Возвращает:
объект Point2D, представляющий конечную точку CubicCurve2D.
С тех пор:
1.2

setCurve

public abstract void setCurve(double x1, double y1, double ctrlx1, double ctrly1, double ctrlx2, double ctrly2, double x2, double y2)
Устанавливает положение конечных точек и контрольных точек этой кривой на указанные координаты с плавающей запятой.
Параметры:
x1 - координата X, используемая для установки начальной точки этой CubicCurve2D
y1 - координата Y, используемая для установки начальной точки этой CubicCurve2D
ctrlx1 - координата X, используемая для установки первой контрольной точки этой CubicCurve2D
ctrly1 - координата Y, используемая для установки первой контрольной точки этой CubicCurve2D
ctrlx2 - координата X, используемая для установки второй контрольной точки этой CubicCurve2D
ctrly2 - координата Y, используемая для установки второй контрольной точки этой CubicCurve2D
x2 - координата X, используемая для установки конечной точки этой CubicCurve2D
y2 - координата Y, используемая для установки конечной точки этой CubicCurve2D
С тех пор:
1.2

setCurve

public void setCurve(double[] coords, int offset)
Устанавливает положение конечных точек и контрольных точек этой кривой на координаты в указанном массиве по указанному смещению.
Параметры:
coords - массив координат с типом double
offset - индекс, с которого начинается установка конечных точек и контрольных точек этой кривой на координаты, содержащиеся в coords
С тех пор:
1.2

setCurve

public void setCurve(Point2D p1, Point2D cp1, Point2D cp2, Point2D p2)
Устанавливает положение конечных точек и контрольных точек этой кривой на указанные координаты объектов Point2D.
Параметры:
p1 - первый указанный объект Point2D, используемый для установки начальной точки этой кривой
cp1 - второй указанный объект Point2D, используемый для установки первой контрольной точки этой кривой
cp2 - третий указанный объект Point2D, используемый для установки второй контрольной точки этой кривой
p2 - четвёртый указанный объект Point2D, используемый для установки конечной точки этой кривой
С тех пор:
1.2

setCurve

public void setCurve(Point2D[] pts, int offset)
Устанавливает положение конечных точек и контрольных точек этой кривой на координаты объектов Point2D по указанному смещению в указанном массиве.
Параметры:
pts - массив объектов Point2D
offset - индекс, с которого начинается установка конечных точек и контрольных точек этой кривой на точки, содержащиеся в pts
С тех пор:
1.2

setCurve

public void setCurve(CubicCurve2D c)
Устанавливает положение конечных точек и контрольных точек этой кривой на те же значения, что и в указанной кривой.
Параметры:
c - указанная кривая
С тех пор:
1.2

getFlatnessSq

public static double getFlatnessSq(double x1, double y1, double ctrlx1, double ctrly1, double ctrlx2, double ctrly2, double x2, double y2)
Возвращает квадрат отклонения кубической кривой, заданной указанными контрольными точками. Отклонение — это максимальное расстояние от контрольной точки до линии, соединяющей конечные точки.
Параметры:
x1 - координата X, определяющая начальную точку CubicCurve2D
y1 - координата Y, определяющая начальную точку CubicCurve2D
ctrlx1 - координата X, определяющая первую контрольную точку CubicCurve2D
ctrly1 - координата Y, определяющая первую контрольную точку CubicCurve2D
ctrlx2 - координата X, определяющая вторую контрольную точку CubicCurve2D
ctrly2 - координата Y, определяющая вторую контрольную точку CubicCurve2D
x2 - координата X, определяющая конечную точку CubicCurve2D
y2 - координата Y, определяющая конечную точку CubicCurve2D
Возвращает:
квадрат отклонения CubicCurve2D, представленной указанными координатами.
С тех пор:
1.2

getFlatness

public static double getFlatness(double x1, double y1, double ctrlx1, double ctrly1, double ctrlx2, double ctrly2, double x2, double y2)
Возвращает степень кривизны кубической кривой, заданной указанными опорными точками. Степень кривизны — это максимальное расстояние опорной точки от прямой, соединяющей конечные точки.
Parameters:
x1 - координата X, определяющая начальную точку CubicCurve2D
y1 - координата Y, определяющая начальную точку CubicCurve2D
ctrlx1 - координата X, определяющая первую опорную точку CubicCurve2D
ctrly1 - координата Y, определяющая первую опорную точку CubicCurve2D
ctrlx2 - координата X, определяющая вторую опорную точку CubicCurve2D
ctrly2 - координата Y, определяющая вторую опорную точку CubicCurve2D
x2 - координата X, определяющая конечную точку CubicCurve2D
y2 - координата Y, определяющая конечную точку CubicCurve2D
Returns:
степень кривизны CubicCurve2D , представленной указанными координатами.
Since:
1.2

getFlatnessSq

public static double getFlatnessSq(double[] coords, int offset)
Возвращает квадрат степени кривизны кубической кривой, заданной опорными точками, хранящимися в указанном массиве по указанному индексу. Степень кривизны — это максимальное расстояние опорной точки от прямой, соединяющей конечные точки.
Parameters:
coords - массив, содержащий координаты
offset - индекс coords , с которого начинать получение конечных точек и опорных точек кривой
Returns:
квадрат степени кривизны CubicCurve2D , заданной координатами в coords по указанному смещению.
Since:
1.2

getFlatness

public static double getFlatness(double[] coords, int offset)
Возвращает степень кривизны кубической кривой, заданной опорными точками, хранящимися в указанном массиве по указанному индексу. Степень кривизны — это максимальное расстояние опорной точки от прямой, соединяющей конечные точки.
Parameters:
coords - массив, содержащий координаты
offset - индекс coords , с которого начинать получение конечных точек и опорных точек кривой
Returns:
степень кривизны CubicCurve2D , заданной координатами в coords по указанному смещению.
Since:
1.2

getFlatnessSq

public double getFlatnessSq()
Возвращает квадрат степени кривизны этой кривой. Степень кривизны — это максимальное расстояние опорной точки от прямой, соединяющей конечные точки.
Returns:
квадрат степени кривизны этой кривой.
Since:
1.2

getFlatness

public double getFlatness()
Возвращает степень кривизны этой кривой. Степень кривизны — это максимальное расстояние опорной точки от прямой, соединяющей конечные точки.
Returns:
степень кривизны этой кривой.
Since:
1.2

subdivide

public void subdivide(CubicCurve2D left, CubicCurve2D right)
Разделяет эту кубическую кривую и сохраняет полученные две разделенные кривые в параметрах левой и правой кривой. Левый и/или правый объекты могут быть такими же, как этот объект, или null.
Parameters:
left - объект кубической кривой для хранения левой или первой половины разделенной кривой
right - объект кубической кривой для хранения правой или второй половины разделенной кривой
Since:
1.2

subdivide

public static void subdivide(CubicCurve2D src, CubicCurve2D left, CubicCurve2D right)
Разделяет кубическую кривую, заданную параметром src, и сохраняет полученные две разделенные кривые в параметрах кривых left и right. Левый и/или правый объекты могут быть такими же, как объект src, или null.
Parameters:
src - кубическая кривая, подлежащая разделению
left - объект кубической кривой для хранения левой или первой половины разделенной кривой
right - объект кубической кривой для хранения правой или второй половины разделенной кривой
Since:
1.2

subdivide

public static void subdivide(double[] src, int srcoff, double[] left, int leftoff, double[] right, int rightoff)
Разделяет кубическую кривую, заданную координатами, хранящимися в массиве src по индексам srcoff через (srcoff + 7), и сохраняет полученные две разделенные кривые в двух массивах результатов по соответствующим индексам. Массивы left и right могут быть null или ссылаться на тот же массив, что и массив src. Обратите внимание, что последняя точка первой разделенной кривой совпадает с первой точкой второй разделенной кривой. Поэтому можно передать один и тот же массив для left и right и использовать смещения, такие как rightoff равно (leftoff + 6), чтобы избежать выделения дополнительного места для этой общей точки.
Parameters:
src - массив, содержащий координаты исходной кривой
srcoff - смещение в массиве начала 6 исходных координат
left - массив для хранения координат первой половины разделенной кривой
leftoff - смещение в массиве начала 6 левых координат
right - массив для хранения координат второй половины разделенной кривой
rightoff - смещение в массиве начала 6 правых координат
Since:
1.2

solveCubic

public static int solveCubic(double[] eqn)
Решает кубическое уравнение, коэффициенты которого находятся в массиве eqn, и помещает действительные корни в тот же массив, возвращая количество корней. Решаемое кубическое уравнение представлено уравнением:
     eqn = {c, b, a, d}
     dx^3 + ax^2 + bx + c = 0
 
. Значение -1 используется для различения константного уравнения, которое может быть всегда 0 или никогда не 0, от уравнения, у которого нет нулей.
Parameters:
eqn - массив, содержащий коэффициенты кубического уравнения
Returns:
количество корней или -1, если уравнение является константным.
Since:
1.2

solveCubic

public static int solveCubic(double[] eqn, double[] res)
Решает кубическое уравнение, коэффициенты которого находятся в массиве eqn, и помещает действительные корни в массив res, возвращая количество корней. Решаемое кубическое уравнение представлено уравнением: eqn = {c, b, a, d} dx^3 + ax^2 + bx + c = 0. Значение -1 используется для различения константного уравнения, которое может быть всегда 0 или никогда не 0, от уравнения, у которого нет нулей.
Parameters:
eqn - указанный массив коэффициентов, используемых для решения кубического уравнения
res - массив, содержащий действительные корни, полученные в результате решения кубического уравнения
Returns:
количество корней или -1, если уравнение является константным
Since:
1.3

contains

public boolean contains(double x, double y)
Проверяет, находятся ли указанные координаты внутри границ Shape, как описано в определении внутри.
Specified by:
contains в интерфейсе Shape
Parameters:
x - указанная координата X для проверки
y - указанная координата Y для проверки
Returns:
true , если указанные координаты находятся внутри границ Shape; false в противном случае.
Since:
1.2

contains

public boolean contains(Point2D p)
Проверяет, находится ли указанная точка Point2D внутри границ Shape, как описано в определении внутри.
Specified by:
contains в интерфейсе Shape
Parameters:
p - указанная точка для проверки
Returns:
true , если указанная точка находится внутри границ Shape; false в противном случае.
Since:
1.2

intersects

public boolean intersects(double x, double y, double w, double h)
Проверяет, пересекается ли внутренняя область Shape с внутренней областью заданной прямоугольной области. Прямоугольная область считается пересекающейся с Shape , если хотя бы одна точка содержится как во внутренней области Shape, так и в заданной прямоугольной области.

Метод Shape.intersects() позволяет реализации Shape консервативно возвращать true в случаях:

  • с высокой вероятностью пересечения прямоугольной области и Shape, но
  • вычисления точного определения этого пересечения слишком затратны.
Это означает, что для некоторых Shapes этот метод может возвращать true даже если прямоугольная область не пересекает Shape. Класс Area выполняет более точные вычисления геометрического пересечения, чем большинство объектов Shape и поэтому может использоваться, если требуется более точный ответ.
Определено в:
intersects в интерфейсе Shape
Параметры:
x - координата X левого верхнего угла заданной прямоугольной области
y - координата Y левого верхнего угла заданной прямоугольной области
w - ширина заданной прямоугольной области
h - высота заданной прямоугольной области
Возвращает:
true если внутренняя область Shape и внутренняя область прямоугольной области пересекаются или с высокой вероятностью пересекаются, а вычисления пересечения слишком сложны; false в противном случае.
С:
1.2
См. также:
  • Area

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
См. также:
  • Shape.intersects(double, double, double, double)

contains

public boolean contains(double x, double y, double w, double h)
Проверяет, полностью ли внутренняя область Shape содержит заданную прямоугольную область. Все координаты, лежащие внутри прямоугольной области, должны лежать внутри Shape для того, чтобы вся прямоугольная область считалась содержащейся внутри Shape.

Метод Shape.contains() позволяет реализации Shape консервативно возвращать false в случаях:

  • метод intersect возвращает true и
  • вычисления того, содержит ли Shape полностью прямоугольную область, слишком затратны.
Это означает, что для некоторых Shapes этот метод может возвращать false даже если Shape содержит прямоугольную область. Класс Area выполняет более точные геометрические вычисления, чем большинство объектов Shape и поэтому может использоваться, если требуется более точный ответ.
Определено в:
contains в интерфейсе Shape
Параметры:
x - координата X левого верхнего угла заданной прямоугольной области
y - координата Y левого верхнего угла заданной прямоугольной области
w - ширина заданной прямоугольной области
h - высота заданной прямоугольной области
Возвращает:
true если внутренняя область Shape полностью содержит заданную прямоугольную область; false в противном случае или если Shape содержит прямоугольную область, и метод intersects возвращает true и вычисления содержательности слишком затратны.
С:
1.2
См. также:
  • Area
  • Shape.intersects(double, double, double, double)

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
См. также:
  • Shape.contains(double, double, double, double)

getBounds2D

public Rectangle2D getBounds2D()
Возвращает высокоточную и более точную ограничивающую прямоугольную область Shape по сравнению с методом getBounds. Обратите внимание, что нет гарантии, что возвращаемый Rectangle2D является наименьшей ограничивающей прямоугольной областью, охватывающей Shape, только что Shape полностью лежит внутри указанной Rectangle2D. Ограничивающая прямоугольная область, возвращаемая этим методом, обычно уже, чем возвращаемая методом getBounds, и никогда не выходит из строя из-за переполнения, так как значение возврата может быть экземпляром Rectangle2D, который использует значения с двойной точностью для хранения размеров.

Обратите внимание, что определение вложенности может привести к ситуациям, когда точки на определяющей контуре shape могут не считаться содержащимися в возвращенном объекте bounds, но только в тех случаях, когда эти точки также не считаются содержащимися в исходном shape.

Если point находится внутри shape в соответствии с методом contains(point), то она должна находиться внутри возвращаемой Rectangle2D ограничивающей прямоугольной области в соответствии с методом contains(point) объекта bounds. Конкретно:

shape.contains(p) требует bounds.contains(p)

Если point не находится внутри shape, то она может все еще находиться внутри объекта bounds:

bounds.contains(p) не подразумевает shape.contains(p)

Определено в:
getBounds2D в интерфейсе Shape
Возвращает:
экземпляр Rectangle2D, являющийся высокоточной ограничивающей прямоугольной областью Shape.
С:
1.2
См. также:
  • Shape.getBounds()

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
См. также:
  • Shape.getBounds2D()

getPathIterator

public PathIterator getPathIterator(AffineTransform at)
Возвращает объект итерации, который определяет границу фигуры. Итератор для этого класса не потокобезопасен, что означает, что этот CubicCurve2D класс не гарантирует, что изменения геометрии этого CubicCurve2D объекта не повлияют на какие-либо итерации этой геометрии, которые уже находятся в процессе.
Указано в:
getPathIterator в интерфейсе Shape
Параметры:
at - необязательное AffineTransform для применения к координатам по мере их возвращения в итерации или null, если желаемы не преобразованные координаты
Возвращает:
объект PathIterator , который возвращает геометрию контура этого CubicCurve2D, по одному сегменту за раз.
С:
1.2

getPathIterator

public PathIterator getPathIterator(AffineTransform at, double flatness)
Возвращает объект итерации, определяющий границу сглаженной фигуры. Итератор для этого класса не потокобезопасен, что означает, что этот CubicCurve2D класс не гарантирует, что изменения геометрии этого CubicCurve2D объекта не повлияют на любые итерации этой геометрии, которые уже находятся в процессе.
Указано в:
getPathIterator в интерфейсе Shape
Параметры:
at - необязательное AffineTransform для применения к координатам по мере их возвращения в итерации, или null, если желаемы не преобразованные координаты
flatness - максимальное отклонение от коллинеарности контрольных точек кривой, после которого кривая заменяется отрезком прямой, соединяющим конечные точки.
Возвращает:
объект PathIterator , который возвращает геометрию контура этой CubicCurve2D, по одному сегменту за раз.
С:
1.2

clone

public Object clone()
Создает новый объект того же класса, что и этот объект.
Переопределяет:
clone в классе Object
Возвращает:
клон этого экземпляра.
Используется:
OutOfMemoryError - если памяти недостаточно.
С:
1.2
См. также:
  • Cloneable

© 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/CubicCurve2D.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API