java.awt.geom
Class QuadCurve2D.Double

java.lang.Object
  extended by java.awt.geom.QuadCurve2D
      extended by java.awt.geom.QuadCurve2D.Double
All Implemented Interfaces:
Shape, Cloneable
Enclosing class:
QuadCurve2D

public static class QuadCurve2D.Double
extends QuadCurve2D

A two-dimensional curve that is parameterized with a quadratic function and stores coordinate values in double-precision floating-point format.

See Also:
QuadCurve2D.Float

Nested Class Summary
 
Nested classes/interfaces inherited from class java.awt.geom.QuadCurve2D
QuadCurve2D.Double, QuadCurve2D.Float
 
Field Summary
 double ctrlx
          The x coordinate of the curve’s control point.
 double ctrly
          The y coordinate of the curve’s control point.
 double x1
          The x coordinate of the curve’s start point.
 double x2
          The x coordinate of the curve’s end point.
 double y1
          The y coordinate of the curve’s start point.
 double y2
          The y coordinate of the curve’s end point.
 
Constructor Summary
QuadCurve2D.Double()
          Constructs a new QuadCurve2D that stores its coordinate values in double-precision floating-point format.
QuadCurve2D.Double(double x1, double y1, double cx, double cy, double x2, double y2)
          Constructs a new QuadCurve2D that stores its coordinate values in double-precision floating-point format, specifying the initial position of each point.
 
Method Summary
 Rectangle2D getBounds2D()
          Determines the smallest rectangle that encloses the curve’s start, end and control point.
 Point2D getCtrlPt()
          Returns the curve’s control point.
 double getCtrlX()
          Returns the x coordinate of the curve’s control point.
 double getCtrlY()
          Returns the y coordinate of the curve’s control point.
 Point2D getP1()
          Returns the curve’s start point.
 Point2D getP2()
          Returns the curve’s end point.
 double getX1()
          Returns the x coordinate of the curve’s start point.
 double getX2()
          Returns the x coordinate of the curve’s end point.
 double getY1()
          Returns the y coordinate of the curve’s start point.
 double getY2()
          Returns the y coordinate of the curve’s end point.
 void setCurve(double x1, double y1, double cx, double cy, double x2, double y2)
          Changes the geometry of the curve.
 
Methods inherited from class java.awt.geom.QuadCurve2D
clone, contains, contains, contains, contains, getBounds, getFlatness, getFlatness, getFlatness, getFlatnessSq, getFlatnessSq, getFlatnessSq, getPathIterator, getPathIterator, intersects, intersects, setCurve, setCurve, setCurve, setCurve, solveQuadratic, solveQuadratic, subdivide, subdivide, subdivide
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

x1

public double x1
The x coordinate of the curve’s start point.


y1

public double y1
The y coordinate of the curve’s start point.


ctrlx

public double ctrlx
The x coordinate of the curve’s control point.


ctrly

public double ctrly
The y coordinate of the curve’s control point.


x2

public double x2
The x coordinate of the curve’s end point.


y2

public double y2
The y coordinate of the curve’s end point.

Constructor Detail

QuadCurve2D.Double

public QuadCurve2D.Double()
Constructs a new QuadCurve2D that stores its coordinate values in double-precision floating-point format. All points are initially at position (0, 0).


QuadCurve2D.Double

public QuadCurve2D.Double(double x1,
                          double y1,
                          double cx,
                          double cy,
                          double x2,
                          double y2)
Constructs a new QuadCurve2D that stores its coordinate values in double-precision floating-point format, specifying the initial position of each point.

Parameters:
x1 - the x coordinate of the curve’s start point.
y1 - the y coordinate of the curve’s start point.
cx - the x coordinate of the curve’s control point.
cy - the y coordinate of the curve’s control point.
x2 - the x coordinate of the curve’s end point.
y2 - the y coordinate of the curve’s end point.
Method Detail

getX1

public double getX1()
Returns the x coordinate of the curve’s start point.

Specified by:
getX1 in class QuadCurve2D

getY1

public double getY1()
Returns the y coordinate of the curve’s start point.

Specified by:
getY1 in class QuadCurve2D

getP1

public Point2D getP1()
Returns the curve’s start point.

Specified by:
getP1 in class QuadCurve2D

getCtrlX

public double getCtrlX()
Returns the x coordinate of the curve’s control point.

Specified by:
getCtrlX in class QuadCurve2D

getCtrlY

public double getCtrlY()
Returns the y coordinate of the curve’s control point.

Specified by:
getCtrlY in class QuadCurve2D

getCtrlPt

public Point2D getCtrlPt()
Returns the curve’s control point.

Specified by:
getCtrlPt in class QuadCurve2D

getX2

public double getX2()
Returns the x coordinate of the curve’s end point.

Specified by:
getX2 in class QuadCurve2D

getY2

public double getY2()
Returns the y coordinate of the curve’s end point.

Specified by:
getY2 in class QuadCurve2D

getP2

public Point2D getP2()
Returns the curve’s end point.

Specified by:
getP2 in class QuadCurve2D

setCurve

public void setCurve(double x1,
                     double y1,
                     double cx,
                     double cy,
                     double x2,
                     double y2)
Changes the geometry of the curve.

Specified by:
setCurve in class QuadCurve2D
Parameters:
x1 - the x coordinate of the curve’s new start point.
y1 - the y coordinate of the curve’s new start point.
cx - the x coordinate of the curve’s new control point.
cy - the y coordinate of the curve’s new control point.
x2 - the x coordinate of the curve’s new end point.
y2 - the y coordinate of the curve’s new end point.

getBounds2D

public Rectangle2D getBounds2D()
Determines the smallest rectangle that encloses the curve’s start, end and control point. As the illustration below shows, the invisible control point may cause the bounds to be much larger than the area that is actually covered by the curve.

An illustration of the bounds of a QuadCurve2D

Returns:
the shape's bounding box
See Also:
Shape.getBounds()