Class CubicCurve2D.Float
- java.lang.Object
-
- java.awt.geom.CubicCurve2D
-
- java.awt.geom.CubicCurve2D.Float
-
- All Implemented Interfaces:
- Shape, Serializable, Cloneable
- Enclosing class:
- CubicCurve2D
public static class CubicCurve2D.Float extends CubicCurve2D implements Serializable
A cubic parametric curve segment specified withfloat
coordinates.- Since:
- 1.2
- See Also:
- Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class java.awt.geom.CubicCurve2D
CubicCurve2D.Double, CubicCurve2D.Float
-
-
Field Summary
Fields Modifier and Type Field and Description float
ctrlx1
The X coordinate of the first control point of the cubic curve segment.float
ctrlx2
The X coordinate of the second control point of the cubic curve segment.float
ctrly1
The Y coordinate of the first control point of the cubic curve segment.float
ctrly2
The Y coordinate of the second control point of the cubic curve segment.float
x1
The X coordinate of the start point of the cubic curve segment.float
x2
The X coordinate of the end point of the cubic curve segment.float
y1
The Y coordinate of the start point of the cubic curve segment.float
y2
The Y coordinate of the end point of the cubic curve segment.
-
Constructor Summary
Constructors Constructor and Description Float()
Constructs and initializes a CubicCurve with coordinates (0, 0, 0, 0, 0, 0, 0, 0).Float(float x1, float y1, float ctrlx1, float ctrly1, float ctrlx2, float ctrly2, float x2, float y2)
Constructs and initializes aCubicCurve2D
from the specifiedfloat
coordinates.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method and Description Rectangle2D
getBounds2D()
Returns a high precision and more accurate bounding box of theShape
than thegetBounds
method.Point2D
getCtrlP1()
Returns the first control point.Point2D
getCtrlP2()
Returns the second control point.double
getCtrlX1()
Returns the X coordinate of the first control point in double precision.double
getCtrlX2()
Returns the X coordinate of the second control point in double precision.double
getCtrlY1()
Returns the Y coordinate of the first control point in double precision.double
getCtrlY2()
Returns the Y coordinate of the second control point in double precision.Point2D
getP1()
Returns the start point.Point2D
getP2()
Returns the end point.double
getX1()
Returns the X coordinate of the start point in double precision.double
getX2()
Returns the X coordinate of the end point in double precision.double
getY1()
Returns the Y coordinate of the start point in double precision.double
getY2()
Returns the Y coordinate of the end point in double precision.void
setCurve(double x1, double y1, double ctrlx1, double ctrly1, double ctrlx2, double ctrly2, double x2, double y2)
Sets the location of the end points and control points of this curve to the specified double coordinates.void
setCurve(float x1, float y1, float ctrlx1, float ctrly1, float ctrlx2, float ctrly2, float x2, float y2)
Sets the location of the end points and control points of this curve to the specifiedfloat
coordinates.-
Methods inherited from class java.awt.geom.CubicCurve2D
clone, contains, contains, contains, contains, getBounds, getFlatness, getFlatness, getFlatness, getFlatnessSq, getFlatnessSq, getFlatnessSq, getPathIterator, getPathIterator, intersects, intersects, setCurve, setCurve, setCurve, setCurve, solveCubic, solveCubic, subdivide, subdivide, subdivide
-
-
-
-
Field Detail
x1
public float x1
The X coordinate of the start point of the cubic curve segment.- Since:
- 1.2
y1
public float y1
The Y coordinate of the start point of the cubic curve segment.- Since:
- 1.2
ctrlx1
public float ctrlx1
The X coordinate of the first control point of the cubic curve segment.- Since:
- 1.2
ctrly1
public float ctrly1
The Y coordinate of the first control point of the cubic curve segment.- Since:
- 1.2
ctrlx2
public float ctrlx2
The X coordinate of the second control point of the cubic curve segment.- Since:
- 1.2
ctrly2
public float ctrly2
The Y coordinate of the second control point of the cubic curve segment.- Since:
- 1.2
x2
public float x2
The X coordinate of the end point of the cubic curve segment.- Since:
- 1.2
y2
public float y2
The Y coordinate of the end point of the cubic curve segment.- Since:
- 1.2
-
Constructor Detail
Float
public Float()
Constructs and initializes a CubicCurve with coordinates (0, 0, 0, 0, 0, 0, 0, 0).- Since:
- 1.2
Float
public Float(float x1, float y1, float ctrlx1, float ctrly1, float ctrlx2, float ctrly2, float x2, float y2)
Constructs and initializes aCubicCurve2D
from the specifiedfloat
coordinates.- Parameters:
-
x1
- the X coordinate for the start point of the resultingCubicCurve2D
-
y1
- the Y coordinate for the start point of the resultingCubicCurve2D
-
ctrlx1
- the X coordinate for the first control point of the resultingCubicCurve2D
-
ctrly1
- the Y coordinate for the first control point of the resultingCubicCurve2D
-
ctrlx2
- the X coordinate for the second control point of the resultingCubicCurve2D
-
ctrly2
- the Y coordinate for the second control point of the resultingCubicCurve2D
-
x2
- the X coordinate for the end point of the resultingCubicCurve2D
-
y2
- the Y coordinate for the end point of the resultingCubicCurve2D
- Since:
- 1.2
-
Method Detail
getX1
public double getX1()
Returns the X coordinate of the start point in double precision.- Specified by:
-
getX1
in classCubicCurve2D
- Returns:
-
the X coordinate of the start point of the
CubicCurve2D
. - Since:
- 1.2
getY1
public double getY1()
Returns the Y coordinate of the start point in double precision.- Specified by:
-
getY1
in classCubicCurve2D
- Returns:
-
the Y coordinate of the start point of the
CubicCurve2D
. - Since:
- 1.2
getP1
public Point2D getP1()
Returns the start point.- Specified by:
-
getP1
in classCubicCurve2D
- Returns:
-
a
Point2D
that is the start point of theCubicCurve2D
. - Since:
- 1.2
getCtrlX1
public double getCtrlX1()
Returns the X coordinate of the first control point in double precision.- Specified by:
-
getCtrlX1
in classCubicCurve2D
- Returns:
-
the X coordinate of the first control point of the
CubicCurve2D
. - Since:
- 1.2
getCtrlY1
public double getCtrlY1()
Returns the Y coordinate of the first control point in double precision.- Specified by:
-
getCtrlY1
in classCubicCurve2D
- Returns:
-
the Y coordinate of the first control point of the
CubicCurve2D
. - Since:
- 1.2
getCtrlP1
public Point2D getCtrlP1()
Returns the first control point.- Specified by:
-
getCtrlP1
in classCubicCurve2D
- Returns:
-
a
Point2D
that is the first control point of theCubicCurve2D
. - Since:
- 1.2
getCtrlX2
public double getCtrlX2()
Returns the X coordinate of the second control point in double precision.- Specified by:
-
getCtrlX2
in classCubicCurve2D
- Returns:
-
the X coordinate of the second control point of the
CubicCurve2D
. - Since:
- 1.2
getCtrlY2
public double getCtrlY2()
Returns the Y coordinate of the second control point in double precision.- Specified by:
-
getCtrlY2
in classCubicCurve2D
- Returns:
-
the Y coordinate of the second control point of the
CubicCurve2D
. - Since:
- 1.2
getCtrlP2
public Point2D getCtrlP2()
Returns the second control point.- Specified by:
-
getCtrlP2
in classCubicCurve2D
- Returns:
-
a
Point2D
that is the second control point of theCubicCurve2D
. - Since:
- 1.2
getX2
public double getX2()
Returns the X coordinate of the end point in double precision.- Specified by:
-
getX2
in classCubicCurve2D
- Returns:
-
the X coordinate of the end point of the
CubicCurve2D
. - Since:
- 1.2
getY2
public double getY2()
Returns the Y coordinate of the end point in double precision.- Specified by:
-
getY2
in classCubicCurve2D
- Returns:
-
the Y coordinate of the end point of the
CubicCurve2D
. - Since:
- 1.2
getP2
public Point2D getP2()
Returns the end point.- Specified by:
-
getP2
in classCubicCurve2D
- Returns:
-
a
Point2D
that is the end point of theCubicCurve2D
. - Since:
- 1.2
setCurve
public void setCurve(double x1, double y1, double ctrlx1, double ctrly1, double ctrlx2, double ctrly2, double x2, double y2)
Sets the location of the end points and control points of this curve to the specified double coordinates.- Specified by:
-
setCurve
in classCubicCurve2D
- Parameters:
-
x1
- the X coordinate used to set the start point of thisCubicCurve2D
-
y1
- the Y coordinate used to set the start point of thisCubicCurve2D
-
ctrlx1
- the X coordinate used to set the first control point of thisCubicCurve2D
-
ctrly1
- the Y coordinate used to set the first control point of thisCubicCurve2D
-
ctrlx2
- the X coordinate used to set the second control point of thisCubicCurve2D
-
ctrly2
- the Y coordinate used to set the second control point of thisCubicCurve2D
-
x2
- the X coordinate used to set the end point of thisCubicCurve2D
-
y2
- the Y coordinate used to set the end point of thisCubicCurve2D
- Since:
- 1.2
setCurve
public void setCurve(float x1, float y1, float ctrlx1, float ctrly1, float ctrlx2, float ctrly2, float x2, float y2)
Sets the location of the end points and control points of this curve to the specifiedfloat
coordinates.- Parameters:
-
x1
- the X coordinate used to set the start point of thisCubicCurve2D
-
y1
- the Y coordinate used to set the start point of thisCubicCurve2D
-
ctrlx1
- the X coordinate used to set the first control point of thisCubicCurve2D
-
ctrly1
- the Y coordinate used to set the first control point of thisCubicCurve2D
-
ctrlx2
- the X coordinate used to set the second control point of thisCubicCurve2D
-
ctrly2
- the Y coordinate used to set the second control point of thisCubicCurve2D
-
x2
- the X coordinate used to set the end point of thisCubicCurve2D
-
y2
- the Y coordinate used to set the end point of thisCubicCurve2D
- Since:
- 1.2
getBounds2D
public Rectangle2D getBounds2D()
Returns a high precision and more accurate bounding box of theShape
than thegetBounds
method. Note that there is no guarantee that the returnedRectangle2D
is the smallest bounding box that encloses theShape
, only that theShape
lies entirely within the indicatedRectangle2D
. The bounding box returned by this method is usually tighter than that returned by thegetBounds
method and never fails due to overflow problems since the return value can be an instance of theRectangle2D
that uses double precision values to store the dimensions.Note that the definition of insideness can lead to situations where points on the defining outline of the
shape
may not be considered contained in the returnedbounds
object, but only in cases where those points are also not considered contained in the originalshape
.If a
point
is inside theshape
according to thecontains(point)
method, then it must be inside the returnedRectangle2D
bounds object according to thecontains(point)
method of thebounds
. Specifically:shape.contains(p)
requiresbounds.contains(p)
If a
point
is not inside theshape
, then it might still be contained in thebounds
object:bounds.contains(p)
does not implyshape.contains(p)
- Specified by:
-
getBounds2D
in interfaceShape
- Returns:
-
an instance of
Rectangle2D
that is a high-precision bounding box of theShape
. - Since:
- 1.2
- See Also:
-
Shape.getBounds()
-
Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2022, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.