Class QuadCurve2D.Float
java.lang.Object
java.awt.geom.QuadCurve2D
java.awt.geom.QuadCurve2D.Float
- All Implemented Interfaces:
Shape, Serializable, Cloneable
- Enclosing class:
QuadCurve2D
A quadratic parametric curve segment specified with
float
coordinates.- Since:
- 1.2
- See Also:
-
Nested Class Summary
Nested classes/interfaces declared in class QuadCurve2D
QuadCurve2D.Double, QuadCurve2D.Float
Modifier and TypeClassDescriptionstatic class
A quadratic parametric curve segment specified withdouble
coordinates.static class
A quadratic parametric curve segment specified withfloat
coordinates. -
Field Summary
FieldsModifier and TypeFieldDescriptionfloat
The X coordinate of the control point of the quadratic curve segment.float
The Y coordinate of the control point of the quadratic curve segment.float
The X coordinate of the start point of the quadratic curve segment.float
The X coordinate of the end point of the quadratic curve segment.float
The Y coordinate of the start point of the quadratic curve segment.float
The Y coordinate of the end point of the quadratic curve segment. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionReturns the control point.double
getCtrlX()
Returns the X coordinate of the control point indouble
precision.double
getCtrlY()
Returns the Y coordinate of the control point indouble
precision.getP1()
Returns the start point.getP2()
Returns the end point.double
getX1()
Returns the X coordinate of the start point indouble
in precision.double
getX2()
Returns the X coordinate of the end point indouble
precision.double
getY1()
Returns the Y coordinate of the start point indouble
precision.double
getY2()
Returns the Y coordinate of the end point indouble
precision.void
setCurve
(double x1, double y1, double ctrlx, double ctrly, double x2, double y2) Sets the location of the end points and control point of this curve to the specifieddouble
coordinates.void
setCurve
(float x1, float y1, float ctrlx, float ctrly, float x2, float y2) Sets the location of the end points and control point of this curve to the specifiedfloat
coordinates.Methods declared in class QuadCurve2D
clone, contains, contains, contains, contains, getBounds, getBounds2D, getFlatness, getFlatness, getFlatness, getFlatnessSq, getFlatnessSq, getFlatnessSq, getPathIterator, getPathIterator, intersects, intersects, setCurve, setCurve, setCurve, setCurve, solveQuadratic, solveQuadratic, subdivide, subdivide, subdivide
Modifier and TypeMethodDescriptionclone()
Creates a new object of the same class and with the same contents as this object.boolean
contains
(double x, double y) Tests if the specified coordinates are inside the boundary of theShape
, as described by the definition of insideness.boolean
contains
(double x, double y, double w, double h) Tests if the interior of theShape
entirely contains the specified rectangular area.boolean
Tests if a specifiedPoint2D
is inside the boundary of theShape
, as described by the definition of insideness.boolean
Tests if the interior of theShape
entirely contains the specifiedRectangle2D
.Returns an integerRectangle
that completely encloses theShape
.Returns a high precision and more accurate bounding box of theShape
than thegetBounds
method.double
Returns the flatness, or maximum distance of a control point from the line connecting the end points, of thisQuadCurve2D
.static double
getFlatness
(double[] coords, int offset) Returns the flatness, or maximum distance of a control point from the line connecting the end points, of the quadratic curve specified by the control points stored in the indicated array at the indicated index.static double
getFlatness
(double x1, double y1, double ctrlx, double ctrly, double x2, double y2) Returns the flatness, or maximum distance of a control point from the line connecting the end points, of the quadratic curve specified by the indicated control points.double
Returns the square of the flatness, or maximum distance of a control point from the line connecting the end points, of thisQuadCurve2D
.static double
getFlatnessSq
(double[] coords, int offset) Returns the square of the flatness, or maximum distance of a control point from the line connecting the end points, of the quadratic curve specified by the control points stored in the indicated array at the indicated index.static double
getFlatnessSq
(double x1, double y1, double ctrlx, double ctrly, double x2, double y2) Returns the square of the flatness, or maximum distance of a control point from the line connecting the end points, of the quadratic curve specified by the indicated control points.Returns an iteration object that defines the boundary of the shape of thisQuadCurve2D
.getPathIterator
(AffineTransform at, double flatness) Returns an iteration object that defines the boundary of the flattened shape of thisQuadCurve2D
.boolean
intersects
(double x, double y, double w, double h) Tests if the interior of theShape
intersects the interior of a specified rectangular area.boolean
Tests if the interior of theShape
intersects the interior of a specifiedRectangle2D
.void
setCurve
(double[] coords, int offset) Sets the location of the end points and control points of thisQuadCurve2D
to thedouble
coordinates at the specified offset in the specified array.void
Sets the location of the end points and control points of thisQuadCurve2D
to the coordinates of thePoint2D
objects at the specified offset in the specified array.void
Sets the location of the end points and control point of thisQuadCurve2D
to the specifiedPoint2D
coordinates.void
Sets the location of the end points and control point of thisQuadCurve2D
to the same as those in the specifiedQuadCurve2D
.static int
solveQuadratic
(double[] eqn) Solves the quadratic whose coefficients are in theeqn
array and places the non-complex roots back into the same array, returning the number of roots.static int
solveQuadratic
(double[] eqn, double[] res) Solves the quadratic whose coefficients are in theeqn
array and places the non-complex roots into theres
array, returning the number of roots.static void
subdivide
(double[] src, int srcoff, double[] left, int leftoff, double[] right, int rightoff) Subdivides the quadratic curve specified by the coordinates stored in thesrc
array at indicessrcoff
throughsrcoff
+ 5 and stores the resulting two subdivided curves into the two result arrays at the corresponding indices.void
subdivide
(QuadCurve2D left, QuadCurve2D right) Subdivides thisQuadCurve2D
and stores the resulting two subdivided curves into theleft
andright
curve parameters.static void
subdivide
(QuadCurve2D src, QuadCurve2D left, QuadCurve2D right) Subdivides the quadratic curve specified by thesrc
parameter and stores the resulting two subdivided curves into theleft
andright
curve parameters.Methods declared in class Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Modifier and TypeMethodDescriptionboolean
Indicates whether some other object is "equal to" this one.protected void
finalize()
Deprecated, for removal: This API element is subject to removal in a future version.Finalization is deprecated and subject to removal in a future release.final Class
<?> getClass()
Returns the runtime class of thisObject
.int
hashCode()
Returns a hash code value for this object.final void
notify()
Wakes up a single thread that is waiting on this object's monitor.final void
Wakes up all threads that are waiting on this object's monitor.toString()
Returns a string representation of the object.final void
wait()
Causes the current thread to wait until it is awakened, typically by being notified or interrupted.final void
wait
(long timeoutMillis) Causes the current thread to wait until it is awakened, typically by being notified or interrupted, or until a certain amount of real time has elapsed.final void
wait
(long timeoutMillis, int nanos) Causes the current thread to wait until it is awakened, typically by being notified or interrupted, or until a certain amount of real time has elapsed.
-
Field Details
-
x1
public float x1The X coordinate of the start point of the quadratic curve segment.- Since:
- 1.2
-
y1
public float y1The Y coordinate of the start point of the quadratic curve segment.- Since:
- 1.2
-
ctrlx
public float ctrlxThe X coordinate of the control point of the quadratic curve segment.- Since:
- 1.2
-
ctrly
public float ctrlyThe Y coordinate of the control point of the quadratic curve segment.- Since:
- 1.2
-
x2
public float x2The X coordinate of the end point of the quadratic curve segment.- Since:
- 1.2
-
y2
public float y2The Y coordinate of the end point of the quadratic curve segment.- Since:
- 1.2
-
-
Constructor Details
-
Float
public Float()Constructs and initializes aQuadCurve2D
with coordinates (0, 0, 0, 0, 0, 0).- Since:
- 1.2
-
Float
public Float(float x1, float y1, float ctrlx, float ctrly, float x2, float y2) Constructs and initializes aQuadCurve2D
from the specifiedfloat
coordinates.- Parameters:
x1
- the X coordinate of the start pointy1
- the Y coordinate of the start pointctrlx
- the X coordinate of the control pointctrly
- the Y coordinate of the control pointx2
- the X coordinate of the end pointy2
- the Y coordinate of the end point- Since:
- 1.2
-
-
Method Details
-
getX1
public double getX1()Returns the X coordinate of the start point indouble
in precision.- Specified by:
getX1
in classQuadCurve2D
- Returns:
- the X coordinate of the start point.
- Since:
- 1.2
-
getY1
public double getY1()Returns the Y coordinate of the start point indouble
precision.- Specified by:
getY1
in classQuadCurve2D
- Returns:
- the Y coordinate of the start point.
- Since:
- 1.2
-
getP1
Returns the start point.- Specified by:
getP1
in classQuadCurve2D
- Returns:
- a
Point2D
that is the start point of thisQuadCurve2D
. - Since:
- 1.2
-
getCtrlX
public double getCtrlX()Returns the X coordinate of the control point indouble
precision.- Specified by:
getCtrlX
in classQuadCurve2D
- Returns:
- X coordinate the control point
- Since:
- 1.2
-
getCtrlY
public double getCtrlY()Returns the Y coordinate of the control point indouble
precision.- Specified by:
getCtrlY
in classQuadCurve2D
- Returns:
- the Y coordinate of the control point.
- Since:
- 1.2
-
getCtrlPt
Returns the control point.- Specified by:
getCtrlPt
in classQuadCurve2D
- Returns:
- a
Point2D
that is the control point of thisPoint2D
. - Since:
- 1.2
-
getX2
public double getX2()Returns the X coordinate of the end point indouble
precision.- Specified by:
getX2
in classQuadCurve2D
- Returns:
- the x coordinate of the end point.
- Since:
- 1.2
-
getY2
public double getY2()Returns the Y coordinate of the end point indouble
precision.- Specified by:
getY2
in classQuadCurve2D
- Returns:
- the Y coordinate of the end point.
- Since:
- 1.2
-
getP2
Returns the end point.- Specified by:
getP2
in classQuadCurve2D
- Returns:
- a
Point
object that is the end point of thisPoint2D
. - Since:
- 1.2
-
setCurve
public void setCurve(double x1, double y1, double ctrlx, double ctrly, double x2, double y2) Sets the location of the end points and control point of this curve to the specifieddouble
coordinates.- Specified by:
setCurve
in classQuadCurve2D
- Parameters:
x1
- the X coordinate of the start pointy1
- the Y coordinate of the start pointctrlx
- the X coordinate of the control pointctrly
- the Y coordinate of the control pointx2
- the X coordinate of the end pointy2
- the Y coordinate of the end point- Since:
- 1.2
-
setCurve
public void setCurve(float x1, float y1, float ctrlx, float ctrly, float x2, float y2) Sets the location of the end points and control point of this curve to the specifiedfloat
coordinates.- Parameters:
x1
- the X coordinate of the start pointy1
- the Y coordinate of the start pointctrlx
- the X coordinate of the control pointctrly
- the Y coordinate of the control pointx2
- the X coordinate of the end pointy2
- the Y coordinate of the end point- Since:
- 1.2
-