

PREV CLASS NEXT CLASS  FRAMES NO FRAMES  
SUMMARY: NESTED  FIELD  CONSTR  METHOD  DETAIL: FIELD  CONSTR  METHOD 
java.lang.Object math.geom2d.curve.AbstractContinuousCurve2D math.geom2d.curve.AbstractSmoothCurve2D math.geom2d.spline.QuadBezierCurve2D
public class QuadBezierCurve2D
A quadratic Bezier curve, defined by 3 control points. The curve starts at the first control point and finished at the third control point. The second point is used to defined the curvature of the curve. From javaGeom 0.8.0, this shape does not extends. java.awt.geom.QuadCurve2D.Double anymore
Field Summary 

Fields inherited from interface math.geom2d.Shape2D 

ACCURACY 
Constructor Summary  

QuadBezierCurve2D()
Creates an empty quadratic bezier curve. 

QuadBezierCurve2D(double[][] coefs)
Build a new Bezier curve from its array of coefficients. 

QuadBezierCurve2D(double x1,
double y1,
double xctrl,
double yctrl,
double x2,
double y2)
Build a new quadratic Bezier curve by specifying position of extreme points and position of control point. 

QuadBezierCurve2D(Point2D[] pts)


QuadBezierCurve2D(Point2D p1,
Point2D ctrl,
Point2D p2)
Build a new quadratic Bezier curve by specifying position of extreme points and position of control point. 
Method Summary  

boolean 
almostEquals(GeometricObject2D obj,
double eps)
Checks if the two objects are similar up to a given threshold value. 
java.awt.geom.GeneralPath 
appendPath(java.awt.geom.GeneralPath path)
Append the path of the curve to the given path. 
Polyline2D 
asPolyline(int n)
Converts this continuous curve to an instance of LinearCurve2D with the given number of edges. 
Box2D 
boundingBox()
Returns the approximate bounding box of this curve. 
CurveSet2D<? extends QuadBezierCurve2D> 
clip(Box2D box)
Clip the curve by a box. 
QuadBezierCurve2D 
clone()
Overrides Object declaration to ensure Curve2D implementation are cloned as Curve2D. 
boolean 
contains(double x,
double y)
Checks if the shape contains the planar point defined by (x,y). 
boolean 
contains(Point2D p)
Checks if the shape contains the given point. 
static QuadBezierCurve2D 
create(Point2D p1,
Point2D p2,
Point2D p3)
Deprecated. since 0.11.1 
double 
curvature(double t)
Returns the curvature of the Curve. 
double 
distance(double x,
double y)
Computes approximated distance, computed on a polyline. 
double 
distance(Point2D p)
Returns the distance of the shape to the given point, or the distance of point to the frontier of the shape in the case of a plain shape. 
boolean 
equals(java.lang.Object obj)

Point2D 
firstPoint()
Returns the first point of the curve, that corresponds to the first control point. 
Point2D 
getControl()

Point2D 
getCtrl()

java.awt.geom.GeneralPath 
getGeneralPath()

Point2D 
getP1()

Point2D 
getP2()

double[][] 
getParametric()
Returns the matrix of parametric representation of the line. 
double 
getT0()
Deprecated. replaced by t0() (since 0.11.1). 
double 
getT1()
Deprecated. replaced by t1() (since 0.11.1). 
java.util.Collection<Point2D> 
intersections(LinearShape2D line)
Use approximation, by replacing Bezier curve with a polyline. 
boolean 
isBounded()
Returns true, a cubic Bezier Curve is always bounded. 
boolean 
isClosed()
Returns false, as a quadratic curve is never closed. 
boolean 
isEmpty()
Returns true if the shape does not contain any point. 
boolean 
isInside(Point2D pt)
Returns true if the point is 'inside' the domain bounded by the curve. 
Point2D 
lastPoint()
Returns the last point of the curve, that corresponds to the third control point. 
Point2D 
point(double t)
Returns the point located at the given position on the curve. 
double 
position(Point2D point)
Computes position by approximating cubic spline with a polyline. 
double 
project(Point2D point)
Computes position by approximating cubic spline with a polyline. 
QuadBezierCurve2D 
reverse()
Returns the bezier curve given by control points taken in reverse order. 
double 
signedDistance(double x,
double y)
The same as distanceSigned(Point2D), but by passing 2 double as arguments. 
double 
signedDistance(Point2D point)
Returns the signed distance of the curve to the given point. 
QuadBezierCurve2D 
subCurve(double t0,
double t1)
Computes portion of BezierCurve. 
double 
t0()
Returns 0, as Bezier curve is parameterized between 0 and 1. 
double 
t1()
Returns 1, as Bezier curve is parametrized between 0 and 1. 
Vector2D 
tangent(double t)
Returns the tangent of the curve at the given position. 
QuadBezierCurve2D 
transform(AffineTransform2D trans)
Returns the Bezier Curve transformed by the given AffineTransform2D. 
double 
windingAngle(Point2D point)
Use winding angle of approximated polyline 
Methods inherited from class math.geom2d.curve.AbstractSmoothCurve2D 

isSingular, leftTangent, normal, rightTangent, singularPoints, smoothPieces, vertices 
Methods inherited from class math.geom2d.curve.AbstractContinuousCurve2D 

asAwtShape, continuousCurves, draw 
Methods inherited from class java.lang.Object 

getClass, hashCode, notify, notifyAll, toString, wait, wait, wait 
Methods inherited from interface math.geom2d.curve.SmoothCurve2D 

normal 
Methods inherited from interface math.geom2d.curve.ContinuousCurve2D 

leftTangent, rightTangent, smoothPieces 
Methods inherited from interface math.geom2d.curve.Curve2D 

asAwtShape, continuousCurves, draw, isSingular, singularPoints, vertices 
Constructor Detail 

public QuadBezierCurve2D()
public QuadBezierCurve2D(double[][] coefs)
coefs
 the coefficients of the QuadBezierCurve2D.public QuadBezierCurve2D(Point2D p1, Point2D ctrl, Point2D p2)
p1
 first pointctrl
 control pointp2
 last pointpublic QuadBezierCurve2D(Point2D[] pts)
public QuadBezierCurve2D(double x1, double y1, double xctrl, double yctrl, double x2, double y2)
Method Detail 

@Deprecated public static QuadBezierCurve2D create(Point2D p1, Point2D p2, Point2D p3)
public Point2D getControl()
public Point2D getP1()
public Point2D getP2()
public Point2D getCtrl()
public double[][] getParametric()
[ cx0 cx1 cx2]
[ cy0 cy1 cy2]
Coefficients are from the parametric equation :
x(t) = cx0 + cx1*t + cx2*t^2
y(t) = cy0 + cy1*t + cy2*t^2
public double windingAngle(Point2D point)
windingAngle
in interface OrientedCurve2D
point
 a point of the plane
OrientedCurve2D.windingAngle(Point2D)
public boolean isInside(Point2D pt)
isInside
in interface OrientedCurve2D
pt
 a point in the plane
public double signedDistance(Point2D point)
OrientedCurve2D
signedDistance
in interface OrientedCurve2D
point
 a point of the plane
public double signedDistance(double x, double y)
OrientedCurve2D
signedDistance
in interface OrientedCurve2D
x
 xcoord of a pointy
 ycoord of a point
OrientedCurve2D.signedDistance(Point2D)
public Vector2D tangent(double t)
SmoothCurve2D
tangent
in interface SmoothCurve2D
t
 a position on the curve
SmoothCurve2D.normal(double)
public double curvature(double t)
curvature
in interface ContinuousCurve2D
t
 the position on the curve
public boolean isClosed()
isClosed
in interface ContinuousCurve2D
public Polyline2D asPolyline(int n)
AbstractContinuousCurve2D
asPolyline
in interface ContinuousCurve2D
asPolyline
in class AbstractContinuousCurve2D
n
 the number of line segments
n
line segments.ContinuousCurve2D.asPolyline(int)
public double t0()
t0
in interface Curve2D
@Deprecated public double getT0()
getT0
in interface Curve2D
public double t1()
t1
in interface Curve2D
@Deprecated public double getT1()
getT1
in interface Curve2D
public java.util.Collection<Point2D> intersections(LinearShape2D line)
intersections
in interface Curve2D
Curve2D.intersections(math.geom2d.line.LinearShape2D)
public Point2D point(double t)
Curve2D
point
in interface Curve2D
Curve2D.point(double)
public Point2D firstPoint()
firstPoint
in interface Curve2D
firstPoint
in class AbstractContinuousCurve2D
Curve2D.t0()
,
Curve2D.point(double)
public Point2D lastPoint()
lastPoint
in interface Curve2D
lastPoint
in class AbstractContinuousCurve2D
Curve2D.t1()
,
Curve2D.point(double)
public double position(Point2D point)
position
in interface Curve2D
point
 a point belonging to the curve
Curve2D.point(double)
public double project(Point2D point)
project
in interface Curve2D
point
 a point to project
public QuadBezierCurve2D reverse()
reverse
in interface ContinuousCurve2D
reverse
in interface Curve2D
reverse
in interface SmoothCurve2D
reverse
in interface ContinuousOrientedCurve2D
reverse
in interface OrientedCurve2D
public QuadBezierCurve2D subCurve(double t0, double t1)
subCurve
in interface ContinuousCurve2D
subCurve
in interface Curve2D
subCurve
in interface SmoothCurve2D
subCurve
in interface ContinuousOrientedCurve2D
t0
 position of the start of the subcurvet1
 position of the end of the subcurve
public boolean contains(double x, double y)
Shape2D
contains
in interface Shape2D
public boolean contains(Point2D p)
Shape2D
contains
in interface Shape2D
public double distance(Point2D p)
Shape2D
distance
in interface Shape2D
Shape2D.distance(Point2D)
public double distance(double x, double y)
distance
in interface Shape2D
Shape2D.distance(double, double)
public boolean isBounded()
isBounded
in interface Shape2D
public boolean isEmpty()
Shape2D
isEmpty
in interface Shape2D
public CurveSet2D<? extends QuadBezierCurve2D> clip(Box2D box)
clip
in interface ContinuousCurve2D
clip
in interface Curve2D
clip
in interface SmoothCurve2D
clip
in interface ContinuousOrientedCurve2D
clip
in interface OrientedCurve2D
clip
in interface Shape2D
box
 the clipping box
public Box2D boundingBox()
boundingBox
in interface Shape2D
public QuadBezierCurve2D transform(AffineTransform2D trans)
transform
in interface ContinuousCurve2D
transform
in interface Curve2D
transform
in interface SmoothCurve2D
transform
in interface ContinuousOrientedCurve2D
transform
in interface OrientedCurve2D
transform
in interface Shape2D
trans
 an affine transform
public java.awt.geom.GeneralPath appendPath(java.awt.geom.GeneralPath path)
ContinuousCurve2D
appendPath
in interface ContinuousCurve2D
path
 a path to modify
public java.awt.geom.GeneralPath getGeneralPath()
public boolean almostEquals(GeometricObject2D obj, double eps)
GeometricObject2D
almostEquals
in interface GeometricObject2D
obj
 the object to compareeps
 a threshold value, for example the minimal coordinate difference
public boolean equals(java.lang.Object obj)
equals
in class java.lang.Object
public QuadBezierCurve2D clone()
Curve2D
clone
in interface Curve2D
clone
in class AbstractSmoothCurve2D


PREV CLASS NEXT CLASS  FRAMES NO FRAMES  
SUMMARY: NESTED  FIELD  CONSTR  METHOD  DETAIL: FIELD  CONSTR  METHOD 