|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
public interface ContinuousCurve2D
Interface for all curves which can be drawn with one stroke. This includes closed curves (ellipses, polygon boundaries...), infinite curves (straight lines, parabolas, ...), and 'finite' curves, such as polylines, conic arcs, line segments, splines... Note that an hyperbola is compound of 2 continuous curves.
Such curves accept parametric representation, in the form :
p(t)={x(t),y(t)}
, with t
contained in
appropriate domain. Bounds of domain of definition can be obtained by methods
t0()
and t1()
.
Field Summary |
---|
Fields inherited from interface math.geom2d.Shape2D |
---|
ACCURACY |
Method Summary | |
---|---|
java.awt.geom.GeneralPath |
appendPath(java.awt.geom.GeneralPath path)
Append the path of the curve to the given path. |
LinearCurve2D |
asPolyline(int n)
Returns an approximation of the curve as a polyline with n
line segments. |
CurveSet2D<? extends ContinuousCurve2D> |
clip(Box2D box)
When a curve is clipped, the result is a set of curves. |
double |
curvature(double t)
Computes the curvature at the given position. |
boolean |
isClosed()
Returns true if the curve makes a loop, that is come back to starting point after covering the path. |
Vector2D |
leftTangent(double t)
Computes the left tangent at the given position. |
ContinuousCurve2D |
reverse()
Returns the curve with same trace on the plane with parameterization in reverse order. |
Vector2D |
rightTangent(double t)
Computes the right tangent at the given position. |
java.util.Collection<? extends SmoothCurve2D> |
smoothPieces()
Returns a set of smooth curves. |
ContinuousCurve2D |
subCurve(double t0,
double t1)
Returns a portion of the original curve, delimited by two positions on the curve. |
ContinuousCurve2D |
transform(AffineTransform2D trans)
Transforms the curve by an affine transform. |
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 |
---|
boolean isClosed()
Vector2D leftTangent(double t)
t
, the result is the
same as the tangent computed for the corresponding smooth curve, and
is equal to the result of rightTangent(double).
If the position t
corresponds to a singular point, the
tangent of the smooth portion before t
is computed.
t
- the position on the curve
Vector2D rightTangent(double t)
t
, the result is the
same as the tangent computed for the corresponding smooth curve, and
is equal to the result of leftTangent(double).
If the position t
corresponds to a singular point, the
tangent of the smooth portion after t
is computed.
t
- the position on the curve
double curvature(double t)
t
that correspond to smooth parts, and is
infinite for singular points.
t
- the position on the curve
java.util.Collection<? extends SmoothCurve2D> smoothPieces()
LinearCurve2D asPolyline(int n)
n
line segments. If the curve is closed, the method should return an
instance of LinearRing2D. Otherwise, it returns an instance of
Polyline2D.
n
- the number of line segments
n
line segments.java.awt.geom.GeneralPath appendPath(java.awt.geom.GeneralPath path)
path
- a path to modify
ContinuousCurve2D reverse()
Curve2D
reverse
in interface Curve2D
ContinuousCurve2D subCurve(double t0, double t1)
Curve2D
subCurve
in interface Curve2D
t0
- position of the start of the sub-curvet1
- position of the end of the sub-curve
CurveSet2D<? extends ContinuousCurve2D> clip(Box2D box)
Curve2D
clip
in interface Curve2D
clip
in interface Shape2D
box
- the clipping box
ContinuousCurve2D transform(AffineTransform2D trans)
Curve2D
transform
in interface Curve2D
transform
in interface Shape2D
trans
- an affine transform
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |