CubicCurve2D.Float (Java Platform SE 8 ) (original) (raw)
- 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](../../../java/awt/geom/CubicCurve2D.html "class in java.awt.geom") `[CubicCurve2D.Double](../../../java/awt/geom/CubicCurve2D.Double.html "class in java.awt.geom"), [CubicCurve2D.Float](../../../java/awt/geom/CubicCurve2D.Float.html "class in java.awt.geom")`
Field Summary
Fields
Modifier and Type Field 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 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 a CubicCurve2D from the specified float coordinates. Method Summary
All Methods Instance Methods Concrete Methods
Modifier and Type Method Description Rectangle2D getBounds2D() Returns a high precision and more accurate bounding box of the Shape than the getBounds 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 specified float coordinates. * ### Methods inherited from class java.awt.geom.[CubicCurve2D](../../../java/awt/geom/CubicCurve2D.html "class in java.awt.geom") `[clone](../../../java/awt/geom/CubicCurve2D.html#clone--), [contains](../../../java/awt/geom/CubicCurve2D.html#contains-double-double-), [contains](../../../java/awt/geom/CubicCurve2D.html#contains-double-double-double-double-), [contains](../../../java/awt/geom/CubicCurve2D.html#contains-java.awt.geom.Point2D-), [contains](../../../java/awt/geom/CubicCurve2D.html#contains-java.awt.geom.Rectangle2D-), [getBounds](../../../java/awt/geom/CubicCurve2D.html#getBounds--), [getFlatness](../../../java/awt/geom/CubicCurve2D.html#getFlatness--), [getFlatness](../../../java/awt/geom/CubicCurve2D.html#getFlatness-double:A-int-), [getFlatness](../../../java/awt/geom/CubicCurve2D.html#getFlatness-double-double-double-double-double-double-double-double-), [getFlatnessSq](../../../java/awt/geom/CubicCurve2D.html#getFlatnessSq--), [getFlatnessSq](../../../java/awt/geom/CubicCurve2D.html#getFlatnessSq-double:A-int-), [getFlatnessSq](../../../java/awt/geom/CubicCurve2D.html#getFlatnessSq-double-double-double-double-double-double-double-double-), [getPathIterator](../../../java/awt/geom/CubicCurve2D.html#getPathIterator-java.awt.geom.AffineTransform-), [getPathIterator](../../../java/awt/geom/CubicCurve2D.html#getPathIterator-java.awt.geom.AffineTransform-double-), [intersects](../../../java/awt/geom/CubicCurve2D.html#intersects-double-double-double-double-), [intersects](../../../java/awt/geom/CubicCurve2D.html#intersects-java.awt.geom.Rectangle2D-), [setCurve](../../../java/awt/geom/CubicCurve2D.html#setCurve-java.awt.geom.CubicCurve2D-), [setCurve](../../../java/awt/geom/CubicCurve2D.html#setCurve-double:A-int-), [setCurve](../../../java/awt/geom/CubicCurve2D.html#setCurve-java.awt.geom.Point2D:A-int-), [setCurve](../../../java/awt/geom/CubicCurve2D.html#setCurve-java.awt.geom.Point2D-java.awt.geom.Point2D-java.awt.geom.Point2D-java.awt.geom.Point2D-), [solveCubic](../../../java/awt/geom/CubicCurve2D.html#solveCubic-double:A-), [solveCubic](../../../java/awt/geom/CubicCurve2D.html#solveCubic-double:A-double:A-), [subdivide](../../../java/awt/geom/CubicCurve2D.html#subdivide-java.awt.geom.CubicCurve2D-java.awt.geom.CubicCurve2D-), [subdivide](../../../java/awt/geom/CubicCurve2D.html#subdivide-java.awt.geom.CubicCurve2D-java.awt.geom.CubicCurve2D-java.awt.geom.CubicCurve2D-), [subdivide](../../../java/awt/geom/CubicCurve2D.html#subdivide-double:A-int-double:A-int-double:A-int-)` * ### Methods inherited from class java.lang.[Object](../../../java/lang/Object.html "class in java.lang") `[equals](../../../java/lang/Object.html#equals-java.lang.Object-), [finalize](../../../java/lang/Object.html#finalize--), [getClass](../../../java/lang/Object.html#getClass--), [hashCode](../../../java/lang/Object.html#hashCode--), [notify](../../../java/lang/Object.html#notify--), [notifyAll](../../../java/lang/Object.html#notifyAll--), [toString](../../../java/lang/Object.html#toString--), [wait](../../../java/lang/Object.html#wait--), [wait](../../../java/lang/Object.html#wait-long-), [wait](../../../java/lang/Object.html#wait-long-int-)`
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 a `CubicCurve2D` from the specified `float` coordinates. 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 Detail
* #### getX1 public double getX1() Returns the X coordinate of the start point in double precision. Specified by: `[getX1](../../../java/awt/geom/CubicCurve2D.html#getX1--)` in class `[CubicCurve2D](../../../java/awt/geom/CubicCurve2D.html "class in java.awt.geom")` 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](../../../java/awt/geom/CubicCurve2D.html#getY1--)` in class `[CubicCurve2D](../../../java/awt/geom/CubicCurve2D.html "class in java.awt.geom")` Returns: the Y coordinate of the start point of the`CubicCurve2D`. Since: 1.2 * #### getP1 public [Point2D](../../../java/awt/geom/Point2D.html "class in java.awt.geom") getP1() Returns the start point. Specified by: `[getP1](../../../java/awt/geom/CubicCurve2D.html#getP1--)` in class `[CubicCurve2D](../../../java/awt/geom/CubicCurve2D.html "class in java.awt.geom")` Returns: a `Point2D` that is the start point of the `CubicCurve2D`. Since: 1.2 * #### getCtrlX1 public double getCtrlX1() Returns the X coordinate of the first control point in double precision. Specified by: `[getCtrlX1](../../../java/awt/geom/CubicCurve2D.html#getCtrlX1--)` in class `[CubicCurve2D](../../../java/awt/geom/CubicCurve2D.html "class in java.awt.geom")` 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](../../../java/awt/geom/CubicCurve2D.html#getCtrlY1--)` in class `[CubicCurve2D](../../../java/awt/geom/CubicCurve2D.html "class in java.awt.geom")` Returns: the Y coordinate of the first control point of the`CubicCurve2D`. Since: 1.2 * #### getCtrlP1 public [Point2D](../../../java/awt/geom/Point2D.html "class in java.awt.geom") getCtrlP1() Returns the first control point. Specified by: `[getCtrlP1](../../../java/awt/geom/CubicCurve2D.html#getCtrlP1--)` in class `[CubicCurve2D](../../../java/awt/geom/CubicCurve2D.html "class in java.awt.geom")` Returns: a `Point2D` that is the first control point of the `CubicCurve2D`. Since: 1.2 * #### getCtrlX2 public double getCtrlX2() Returns the X coordinate of the second control point in double precision. Specified by: `[getCtrlX2](../../../java/awt/geom/CubicCurve2D.html#getCtrlX2--)` in class `[CubicCurve2D](../../../java/awt/geom/CubicCurve2D.html "class in java.awt.geom")` 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](../../../java/awt/geom/CubicCurve2D.html#getCtrlY2--)` in class `[CubicCurve2D](../../../java/awt/geom/CubicCurve2D.html "class in java.awt.geom")` Returns: the Y coordinate of the second control point of the`CubicCurve2D`. Since: 1.2 * #### getCtrlP2 public [Point2D](../../../java/awt/geom/Point2D.html "class in java.awt.geom") getCtrlP2() Returns the second control point. Specified by: `[getCtrlP2](../../../java/awt/geom/CubicCurve2D.html#getCtrlP2--)` in class `[CubicCurve2D](../../../java/awt/geom/CubicCurve2D.html "class in java.awt.geom")` Returns: a `Point2D` that is the second control point of the `CubicCurve2D`. Since: 1.2 * #### getX2 public double getX2() Returns the X coordinate of the end point in double precision. Specified by: `[getX2](../../../java/awt/geom/CubicCurve2D.html#getX2--)` in class `[CubicCurve2D](../../../java/awt/geom/CubicCurve2D.html "class in java.awt.geom")` 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](../../../java/awt/geom/CubicCurve2D.html#getY2--)` in class `[CubicCurve2D](../../../java/awt/geom/CubicCurve2D.html "class in java.awt.geom")` Returns: the Y coordinate of the end point of the`CubicCurve2D`. Since: 1.2 * #### getP2 public [Point2D](../../../java/awt/geom/Point2D.html "class in java.awt.geom") getP2() Returns the end point. Specified by: `[getP2](../../../java/awt/geom/CubicCurve2D.html#getP2--)` in class `[CubicCurve2D](../../../java/awt/geom/CubicCurve2D.html "class in java.awt.geom")` Returns: a `Point2D` that is the end point of the `CubicCurve2D`. 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](../../../java/awt/geom/CubicCurve2D.html#setCurve-double-double-double-double-double-double-double-double-)` in class `[CubicCurve2D](../../../java/awt/geom/CubicCurve2D.html "class in java.awt.geom")` 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 * #### 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 specified `float` coordinates. 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 * #### getBounds2D public [Rectangle2D](../../../java/awt/geom/Rectangle2D.html "class in java.awt.geom") getBounds2D() Returns a high precision and more accurate bounding box of the `Shape` than the `getBounds` method. Note that there is no guarantee that the returned[Rectangle2D](../../../java/awt/geom/Rectangle2D.html "class in java.awt.geom") is the smallest bounding box that encloses the `Shape`, only that the `Shape` lies entirely within the indicated `Rectangle2D`. The bounding box returned by this method is usually tighter than that returned by the `getBounds` method and never fails due to overflow problems since the return value can be an instance of the `Rectangle2D` that uses double precision values to store the dimensions. Note that the [ definition of insideness](../../../java/awt/Shape.html#def%5Finsideness) can lead to situations where points on the defining outline of the `shape` may not be considered contained in the returned `bounds` object, but only in cases where those points are also not considered contained in the original`shape`. If a `point` is inside the `shape` according to the[contains(point)](../../../java/awt/Shape.html#contains-java.awt.geom.Point2D-) method, then it must be inside the returned `Rectangle2D` bounds object according to the [contains(point)](../../../java/awt/Shape.html#contains-java.awt.geom.Point2D-) method of the`bounds`. Specifically: `shape.contains(p)` requires `bounds.contains(p)` If a `point` is not inside the `shape`, then it might still be contained in the `bounds` object: `bounds.contains(p)` does not imply `shape.contains(p)` Specified by: `[getBounds2D](../../../java/awt/Shape.html#getBounds2D--)` in interface `[Shape](../../../java/awt/Shape.html "interface in java.awt")` Returns: an instance of `Rectangle2D` that is a high-precision bounding box of the `Shape`. Since: 1.2 See Also: [Shape.getBounds()](../../../java/awt/Shape.html#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, 2025, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.