public interface CirculinearCurve2D extends CirculinearShape2D, Curve2D
Circulinear curve are composed of linear and/or circular elements. Linear elements are line segments, straight lines, rays... Circular elements are circles and circle arcs.
Circulinear curves provide a convenient way to store result of geometric operation like buffer computation. Moreover, the set of circulinear curves is stable with respect to circle inversion.
| Modifier and Type | Method and Description |
|---|---|
CurveSet2D |
clip(Box2D box)
Clip the shape with the given box, and returns a new shape.
|
Collection<? extends CirculinearContinuousCurve2D> |
getContinuousCurves()
Returns the collection of continuous circulinear curves which
constitute this curve.
|
double |
getLength() |
double |
getLength(double pos) |
Curve2D |
getParallel(double d)
Creates a new curve, formed by the points with parameterization:
p(t) = c(t) + d*n(t)/|n(t)|, with p(t) being a point of
the original curve, n(t) the normal of the curve, and |n| being the
norm of n.In the case of a continuous curve formed by several smooth circulinear elements, the parallels of contiguous elements are joined by a circle arc. |
double |
getPosition(double length) |
Curve2D |
getReverseCurve()
Returns the curve with same trace on the plane with parametrization in
reverse order.
|
Curve2D |
getSubCurve(double t0,
double t1)
Returns a portion of the original curve, delimited by two positions on
the curve.
|
Curve2D |
transform(CircleInversion2D inv)
Transforms the shape by a circle inversion.
|
getBufferclone, draw, getAsAWTShape, getFirstPoint, getIntersections, getLastPoint, getPoint, getPosition, getSingularPoints, getT0, getT1, isSingular, project, transformcontains, contains, getBoundingBox, getDistance, getDistance, isBounded, isEmptydouble getLength()
double getLength(double pos)
double getPosition(double length)
Curve2D getParallel(double d)
p(t) = c(t) + d*n(t)/|n(t)|, with p(t) being a point of
the original curve, n(t) the normal of the curve, and |n| being the
norm of n.d - the distance between the original curve and he parallel curve.Curve2D transform(CircleInversion2D inv)
CirculinearShape2Dtransform in interface CirculinearShape2Dinv - the circle inversionCollection<? extends CirculinearContinuousCurve2D> getContinuousCurves()
getContinuousCurves in interface Curve2DCurveSet2D clip(Box2D box)
Shape2DCurve2D getSubCurve(double t0, double t1)
Curve2DgetSubCurve in interface Curve2Dt0 - position of the start of the sub-curvet1 - position of the end of the sub-curveCurve2D getReverseCurve()
Curve2DgetReverseCurve in interface Curve2DCopyright © 2012 AMIS research group, Faculty of Mathematics and Physics, Charles University in Prague, Czech Republic. All Rights Reserved.