math.geom2d.curve
Interface SmoothCurve2D

All Superinterfaces:
java.lang.Cloneable, ContinuousCurve2D, Curve2D, GeometricObject2D, Shape2D
All Known Subinterfaces:
CircleLine2D, CircularShape2D, CirculinearElement2D, EllipseArcShape2D, EllipseShape2D, LinearElement2D, SmoothContour2D, SmoothOrientedCurve2D
All Known Implementing Classes:
AbstractLine2D, AbstractSmoothCurve2D, Circle2D, CircleArc2D, CubicBezierCurve2D, Ellipse2D, EllipseArc2D, HyperbolaBranch2D, HyperbolaBranchArc2D, InvertedRay2D, Line2D, LineArc2D, LineSegment2D, Parabola2D, ParabolaArc2D, QuadBezierCurve2D, Ray2D, StraightLine2D

public interface SmoothCurve2D
extends ContinuousCurve2D

Interface for smooth and continuous curves. Such curves accept first and second derivatives at every point, and can be drawn with a parametric representation for every values of t comprised between T0 and T1. Every instance of Curve2D is a compound of several SmoothCurve2D.


Field Summary
 
Fields inherited from interface math.geom2d.Shape2D
ACCURACY
 
Method Summary
 CurveSet2D<? extends SmoothCurve2D> clip(Box2D box)
          When a curve is clipped, the result is a set of curves.
 Vector2D normal(double t)
          Returns the normal vector of the curve at the given position.
 SmoothCurve2D reverse()
          Returns the curve with same trace on the plane with parameterization in reverse order.
 SmoothCurve2D subCurve(double t0, double t1)
          Returns a portion of the original curve, delimited by two positions on the curve.
 Vector2D tangent(double t)
          Returns the tangent of the curve at the given position.
 SmoothCurve2D transform(AffineTransform2D trans)
          Transforms the curve by an affine transform.
 
Methods inherited from interface math.geom2d.curve.ContinuousCurve2D
appendPath, asPolyline, curvature, isClosed, leftTangent, rightTangent, smoothPieces
 
Methods inherited from interface math.geom2d.curve.Curve2D
asAwtShape, clone, continuousCurves, draw, firstPoint, getT0, getT1, intersections, isSingular, lastPoint, point, position, project, singularPoints, t0, t1, vertices
 
Methods inherited from interface math.geom2d.Shape2D
boundingBox, contains, contains, distance, distance, isBounded, isEmpty
 
Methods inherited from interface math.geom2d.GeometricObject2D
almostEquals
 

Method Detail

tangent

Vector2D tangent(double t)
Returns the tangent of the curve at the given position.

Parameters:
t - a position on the curve
Returns:
the tangent vector computed for position t
See Also:
normal(double)

normal

Vector2D normal(double t)
Returns the normal vector of the curve at the given position.

Parameters:
t - a position on the curve
Returns:
the normal vector computed for position t
See Also:
tangent(double)

reverse

SmoothCurve2D reverse()
Description copied from interface: Curve2D
Returns the curve with same trace on the plane with parameterization in reverse order.

Specified by:
reverse in interface ContinuousCurve2D
Specified by:
reverse in interface Curve2D

subCurve

SmoothCurve2D subCurve(double t0,
                       double t1)
Description copied from interface: Curve2D
Returns a portion of the original curve, delimited by two positions on the curve.

Specified by:
subCurve in interface ContinuousCurve2D
Specified by:
subCurve in interface Curve2D
Parameters:
t0 - position of the start of the sub-curve
t1 - position of the end of the sub-curve
Returns:
the portion of original curve comprised between t0 and t1.

clip

CurveSet2D<? extends SmoothCurve2D> clip(Box2D box)
Description copied from interface: Curve2D
When a curve is clipped, the result is a set of curves.

Specified by:
clip in interface ContinuousCurve2D
Specified by:
clip in interface Curve2D
Specified by:
clip in interface Shape2D
Parameters:
box - the clipping box
Returns:
the clipped shape

transform

SmoothCurve2D transform(AffineTransform2D trans)
Description copied from interface: Curve2D
Transforms the curve by an affine transform. The result is an instance of Curve2D.

Specified by:
transform in interface ContinuousCurve2D
Specified by:
transform in interface Curve2D
Specified by:
transform in interface Shape2D
Parameters:
trans - an affine transform
Returns:
the transformed shape