java.lang.Object
java.awt.geom.CubicCurve2D
java.awt.geom.CubicCurve2D.Double
- All Implemented Interfaces:
- Shape,- Serializable,- Cloneable
- Enclosing class:
- CubicCurve2D
public static class CubicCurve2D.Double extends CubicCurve2D implements Serializable
A cubic parametric curve segment specified with
 
double coordinates.- Since:
- 1.2
- See Also:
- Serialized Form
- 
Nested Class SummaryNested classes/interfaces declared in class java.awt.geom.CubicCurve2DCubicCurve2D.Double, CubicCurve2D.Float
- 
Field SummaryFields Modifier and Type Field Description doublectrlx1The X coordinate of the first control point of the cubic curve segment.doublectrlx2The X coordinate of the second control point of the cubic curve segment.doublectrly1The Y coordinate of the first control point of the cubic curve segment.doublectrly2The Y coordinate of the second control point of the cubic curve segment.doublex1The X coordinate of the start point of the cubic curve segment.doublex2The X coordinate of the end point of the cubic curve segment.doubley1The Y coordinate of the start point of the cubic curve segment.doubley2The Y coordinate of the end point of the cubic curve segment.
- 
Constructor SummaryConstructors Constructor Description Double()Constructs and initializes a CubicCurve with coordinates (0, 0, 0, 0, 0, 0, 0, 0).Double(double x1, double y1, double ctrlx1, double ctrly1, double ctrlx2, double ctrly2, double x2, double y2)Constructs and initializes aCubicCurve2Dfrom the specifieddoublecoordinates.
- 
Method SummaryModifier and Type Method Description Rectangle2DgetBounds2D()Returns a high precision and more accurate bounding box of theShapethan thegetBoundsmethod.Point2DgetCtrlP1()Returns the first control point.Point2DgetCtrlP2()Returns the second control point.doublegetCtrlX1()Returns the X coordinate of the first control point in double precision.doublegetCtrlX2()Returns the X coordinate of the second control point in double precision.doublegetCtrlY1()Returns the Y coordinate of the first control point in double precision.doublegetCtrlY2()Returns the Y coordinate of the second control point in double precision.Point2DgetP1()Returns the start point.Point2DgetP2()Returns the end point.doublegetX1()Returns the X coordinate of the start point in double precision.doublegetX2()Returns the X coordinate of the end point in double precision.doublegetY1()Returns the Y coordinate of the start point in double precision.doublegetY2()Returns the Y coordinate of the end point in double precision.voidsetCurve(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.Methods declared in class java.awt.geom.CubicCurve2Dclone, 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 Details- 
x1public double x1The X coordinate of the start point of the cubic curve segment.- Since:
- 1.2
 
- 
y1public double y1The Y coordinate of the start point of the cubic curve segment.- Since:
- 1.2
 
- 
ctrlx1public double ctrlx1The X coordinate of the first control point of the cubic curve segment.- Since:
- 1.2
 
- 
ctrly1public double ctrly1The Y coordinate of the first control point of the cubic curve segment.- Since:
- 1.2
 
- 
ctrlx2public double ctrlx2The X coordinate of the second control point of the cubic curve segment.- Since:
- 1.2
 
- 
ctrly2public double ctrly2The Y coordinate of the second control point of the cubic curve segment.- Since:
- 1.2
 
- 
x2public double x2The X coordinate of the end point of the cubic curve segment.- Since:
- 1.2
 
- 
y2public double y2The Y coordinate of the end point of the cubic curve segment.- Since:
- 1.2
 
 
- 
- 
Constructor Details- 
Doublepublic Double()Constructs and initializes a CubicCurve with coordinates (0, 0, 0, 0, 0, 0, 0, 0).- Since:
- 1.2
 
- 
Doublepublic Double(double x1, double y1, double ctrlx1, double ctrly1, double ctrlx2, double ctrly2, double x2, double y2)Constructs and initializes aCubicCurve2Dfrom the specifieddoublecoordinates.- Parameters:
- x1- the X coordinate for the start point of the resulting- CubicCurve2D
- y1- the Y coordinate for the start point of the resulting- CubicCurve2D
- ctrlx1- the X coordinate for the first control point of the resulting- CubicCurve2D
- ctrly1- the Y coordinate for the first control point of the resulting- CubicCurve2D
- ctrlx2- the X coordinate for the second control point of the resulting- CubicCurve2D
- ctrly2- the Y coordinate for the second control point of the resulting- CubicCurve2D
- x2- the X coordinate for the end point of the resulting- CubicCurve2D
- y2- the Y coordinate for the end point of the resulting- CubicCurve2D
- Since:
- 1.2
 
 
- 
- 
Method Details- 
getX1public double getX1()Returns the X coordinate of the start point in double precision.- Specified by:
- getX1in class- CubicCurve2D
- Returns:
- the X coordinate of the start point of the
         CubicCurve2D.
- Since:
- 1.2
 
- 
getY1public double getY1()Returns the Y coordinate of the start point in double precision.- Specified by:
- getY1in class- CubicCurve2D
- Returns:
- the Y coordinate of the start point of the
         CubicCurve2D.
- Since:
- 1.2
 
- 
getP1Returns the start point.- Specified by:
- getP1in class- CubicCurve2D
- Returns:
- a Point2Dthat is the start point of theCubicCurve2D.
- Since:
- 1.2
 
- 
getCtrlX1public double getCtrlX1()Returns the X coordinate of the first control point in double precision.- Specified by:
- getCtrlX1in class- CubicCurve2D
- Returns:
- the X coordinate of the first control point of the
         CubicCurve2D.
- Since:
- 1.2
 
- 
getCtrlY1public double getCtrlY1()Returns the Y coordinate of the first control point in double precision.- Specified by:
- getCtrlY1in class- CubicCurve2D
- Returns:
- the Y coordinate of the first control point of the
         CubicCurve2D.
- Since:
- 1.2
 
- 
getCtrlP1Returns the first control point.- Specified by:
- getCtrlP1in class- CubicCurve2D
- Returns:
- a Point2Dthat is the first control point of theCubicCurve2D.
- Since:
- 1.2
 
- 
getCtrlX2public double getCtrlX2()Returns the X coordinate of the second control point in double precision.- Specified by:
- getCtrlX2in class- CubicCurve2D
- Returns:
- the X coordinate of the second control point of the
         CubicCurve2D.
- Since:
- 1.2
 
- 
getCtrlY2public double getCtrlY2()Returns the Y coordinate of the second control point in double precision.- Specified by:
- getCtrlY2in class- CubicCurve2D
- Returns:
- the Y coordinate of the second control point of the
         CubicCurve2D.
- Since:
- 1.2
 
- 
getCtrlP2Returns the second control point.- Specified by:
- getCtrlP2in class- CubicCurve2D
- Returns:
- a Point2Dthat is the second control point of theCubicCurve2D.
- Since:
- 1.2
 
- 
getX2public double getX2()Returns the X coordinate of the end point in double precision.- Specified by:
- getX2in class- CubicCurve2D
- Returns:
- the X coordinate of the end point of the
         CubicCurve2D.
- Since:
- 1.2
 
- 
getY2public double getY2()Returns the Y coordinate of the end point in double precision.- Specified by:
- getY2in class- CubicCurve2D
- Returns:
- the Y coordinate of the end point of the
         CubicCurve2D.
- Since:
- 1.2
 
- 
getP2Returns the end point.- Specified by:
- getP2in class- CubicCurve2D
- Returns:
- a Point2Dthat is the end point of theCubicCurve2D.
- Since:
- 1.2
 
- 
setCurvepublic 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:
- setCurvein class- CubicCurve2D
- Parameters:
- x1- the X coordinate used to set the start point of this- CubicCurve2D
- y1- the Y coordinate used to set the start point of this- CubicCurve2D
- ctrlx1- the X coordinate used to set the first control point of this- CubicCurve2D
- ctrly1- the Y coordinate used to set the first control point of this- CubicCurve2D
- ctrlx2- the X coordinate used to set the second control point of this- CubicCurve2D
- ctrly2- the Y coordinate used to set the second control point of this- CubicCurve2D
- x2- the X coordinate used to set the end point of this- CubicCurve2D
- y2- the Y coordinate used to set the end point of this- CubicCurve2D
- Since:
- 1.2
 
- 
getBounds2DReturns a high precision and more accurate bounding box of theShapethan thegetBoundsmethod. Note that there is no guarantee that the returnedRectangle2Dis the smallest bounding box that encloses theShape, only that theShapelies entirely within the indicatedRectangle2D. The bounding box returned by this method is usually tighter than that returned by thegetBoundsmethod and never fails due to overflow problems since the return value can be an instance of theRectangle2Dthat 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 shapemay not be considered contained in the returnedboundsobject, but only in cases where those points are also not considered contained in the originalshape.If a pointis inside theshapeaccording to thecontains(point)method, then it must be inside the returnedRectangle2Dbounds object according to thecontains(point)method of thebounds. Specifically:shape.contains(p)requiresbounds.contains(p)If a pointis not inside theshape, then it might still be contained in theboundsobject:bounds.contains(p)does not implyshape.contains(p)- Specified by:
- getBounds2Din interface- Shape
- Returns:
- an instance of Rectangle2Dthat is a high-precision bounding box of theShape.
- Since:
- 1.2
- See Also:
- Shape.getBounds()
 
 
-