math.geom2d.circulinear
Interface CirculinearCurve2D
-
- All Superinterfaces:
- CirculinearShape2D, java.lang.Cloneable, Curve2D, GeometricObject2D, Shape2D
- All Known Subinterfaces:
- CircleLine2D, CircularShape2D, CirculinearBoundary2D, CirculinearContinuousCurve2D, CirculinearContour2D, CirculinearCurveSet2D<T>, CirculinearElement2D, CirculinearRing2D, LinearElement2D, LinearShape2D
- All Known Implementing Classes:
- AbstractLine2D, BoundaryPolyCirculinearCurve2D, Circle2D, CircleArc2D, CirculinearContourArray2D, CirculinearCurveArray2D, GenericCirculinearRing2D, InvertedRay2D, Line2D, LineArc2D, LinearCurve2D, LinearRing2D, LineSegment2D, PolyCirculinearCurve2D, Polyline2D, Ray2D, StraightLine2D
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.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method and Description CurveSet2D<? extends CirculinearCurve2D>clip(Box2D box)Clip the shape with the given box, and returns a new shape.java.util.Collection<? extends CirculinearContinuousCurve2D>continuousCurves()Returns the collection of continuous circulinear curves which constitute this curve.doublelength()doublelength(double pos)CirculinearCurve2Dparallel(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.doubleposition(double distance)CirculinearCurve2Dreverse()Returns the curve with same trace on the plane with parameterization in reverse order.CirculinearCurve2DsubCurve(double t0, double t1)Returns a portion of the original curve, delimited by two positions on the curve.CirculinearCurve2Dtransform(CircleInversion2D inv)Transforms the shape by a circle inversion.-
Methods inherited from interface math.geom2d.circulinear.CirculinearShape2D
buffer
-
Methods inherited from interface math.geom2d.curve.Curve2D
asAwtShape, clone, draw, firstPoint, getT0, getT1, intersections, isSingular, lastPoint, point, position, project, singularPoints, t0, t1, transform, 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
-
length
double length()
- Returns:
- the length of the curve
-
length
double length(double pos)
- Returns:
- the length from the beginning to the position given by pos
-
position
double position(double distance)
- Returns:
- the position located at a given geodesic distance from the origin
-
parallel
CirculinearCurve2D parallel(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.- Parameters:
d- the distance between the original curve and he parallel curve.- Returns:
- the parallel curve
-
transform
CirculinearCurve2D transform(CircleInversion2D inv)
Description copied from interface:CirculinearShape2DTransforms the shape by a circle inversion. The result is still an instance a CirculinearShape2D.- Specified by:
transformin interfaceCirculinearShape2D- Parameters:
inv- the circle inversion- Returns:
- the transformed shape
-
continuousCurves
java.util.Collection<? extends CirculinearContinuousCurve2D> continuousCurves()
Returns the collection of continuous circulinear curves which constitute this curve.- Specified by:
continuousCurvesin interfaceCurve2D- Returns:
- a collection of continuous circulinear curves.
-
clip
CurveSet2D<? extends CirculinearCurve2D> clip(Box2D box)
Description copied from interface:Shape2DClip the shape with the given box, and returns a new shape. The box must be bounded.
-
subCurve
CirculinearCurve2D subCurve(double t0, double t1)
Description copied from interface:Curve2DReturns a portion of the original curve, delimited by two positions on the curve.
-
reverse
CirculinearCurve2D reverse()
Description copied from interface:Curve2DReturns the curve with same trace on the plane with parameterization in reverse order.
-
-
DMelt 3.0 © DataMelt by jWork.ORG