math.geom2d.circulinear
Interface CirculinearElement2D

Package class diagram package CirculinearElement2D
All Superinterfaces:
CirculinearContinuousCurve2D, CirculinearCurve2D, CirculinearShape2D, Cloneable, ContinuousCirculinearCurve2D, ContinuousCurve2D, ContinuousOrientedCurve2D, Curve2D, OrientedCurve2D, Serializable, Shape2D, SmoothCurve2D, SmoothOrientedCurve2D
All Known Subinterfaces:
CircleLine2D, CircularShape2D
All Known Implementing Classes:
AbstractLine2D, Circle2D, CircleArc2D, InvertedRay2D, Line2D, LineArc2D, LineObject2D, LineSegment2D, Ray2D, StraightLine2D

public interface CirculinearElement2D
extends CirculinearContinuousCurve2D, SmoothOrientedCurve2D

Circulinear elements are lowest level of circulinear curve: each circulinear curve can be divided into a set of circulinear elements.

Circulinear elements can be either linear elements (implementations of LinearShape2D), or circular elements (circle or circle arcs).

Author:
dlegland

Field Summary
 
Fields inherited from interface math.geom2d.Shape2D
ACCURACY
 
Method Summary
 CurveSet2D clip(Box2D box)
          Clip the shape with the given box, and returns a new shape.
 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.
 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.
 
Methods inherited from interface math.geom2d.circulinear.CirculinearContinuousCurve2D
getSmoothPieces
 
Methods inherited from interface math.geom2d.circulinear.CirculinearCurve2D
getContinuousCurves, getLength, getLength, getPosition
 
Methods inherited from interface math.geom2d.circulinear.CirculinearShape2D
getBuffer
 
Methods inherited from interface math.geom2d.domain.ContinuousOrientedCurve2D
transform
 
Methods inherited from interface math.geom2d.curve.ContinuousCurve2D
appendPath, getAsPolyline, getLeftTangent, getRightTangent, isClosed
 
Methods inherited from interface math.geom2d.domain.OrientedCurve2D
getSignedDistance, getSignedDistance, getWindingAngle, isInside
 
Methods inherited from interface math.geom2d.curve.Curve2D
clone, draw, getAsAWTShape, getFirstPoint, getIntersections, getLastPoint, getPoint, getPosition, getSingularPoints, getT0, getT1, isSingular, project
 
Methods inherited from interface math.geom2d.Shape2D
contains, contains, getBoundingBox, getDistance, getDistance, isBounded, isEmpty
 
Methods inherited from interface math.geom2d.domain.SmoothOrientedCurve2D
transform
 
Methods inherited from interface math.geom2d.curve.SmoothCurve2D
getCurvature, getTangent
 

Method Detail

getParallel

Curve2D getParallel(double d)
Description copied from interface: CirculinearCurve2D
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.

Specified by:
getParallel in interface CirculinearContinuousCurve2D
Specified by:
getParallel in interface CirculinearCurve2D
Specified by:
getParallel in interface ContinuousCirculinearCurve2D
Parameters:
d - the distance between the original curve and he parallel curve.
Returns:
the parallel curve

transform

Curve2D transform(CircleInversion2D inv)
Description copied from interface: CirculinearShape2D
Transforms the shape by a circle inversion. The result is still an instance a CirculinearShape2D.

Specified by:
transform in interface CirculinearContinuousCurve2D
Specified by:
transform in interface CirculinearCurve2D
Specified by:
transform in interface CirculinearShape2D
Specified by:
transform in interface ContinuousCirculinearCurve2D
Parameters:
inv - the circle inversion
Returns:
the transformed shape

clip

CurveSet2D clip(Box2D box)
Description copied from interface: Shape2D
Clip the shape with the given box, and returns a new shape. The box must be bounded.

Specified by:
clip in interface CirculinearContinuousCurve2D
Specified by:
clip in interface CirculinearCurve2D
Specified by:
clip in interface ContinuousCirculinearCurve2D
Specified by:
clip in interface ContinuousCurve2D
Specified by:
clip in interface ContinuousOrientedCurve2D
Specified by:
clip in interface Curve2D
Specified by:
clip in interface OrientedCurve2D
Specified by:
clip in interface Shape2D
Specified by:
clip in interface SmoothCurve2D
Specified by:
clip in interface SmoothOrientedCurve2D
Parameters:
box - the clipping box
Returns:
the clipped shape

getSubCurve

Curve2D getSubCurve(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:
getSubCurve in interface CirculinearContinuousCurve2D
Specified by:
getSubCurve in interface CirculinearCurve2D
Specified by:
getSubCurve in interface ContinuousCirculinearCurve2D
Specified by:
getSubCurve in interface ContinuousCurve2D
Specified by:
getSubCurve in interface ContinuousOrientedCurve2D
Specified by:
getSubCurve in interface Curve2D
Specified by:
getSubCurve in interface SmoothCurve2D
Specified by:
getSubCurve in interface SmoothOrientedCurve2D
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.

getReverseCurve

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

Specified by:
getReverseCurve in interface CirculinearContinuousCurve2D
Specified by:
getReverseCurve in interface CirculinearCurve2D
Specified by:
getReverseCurve in interface ContinuousCirculinearCurve2D
Specified by:
getReverseCurve in interface ContinuousCurve2D
Specified by:
getReverseCurve in interface ContinuousOrientedCurve2D
Specified by:
getReverseCurve in interface Curve2D
Specified by:
getReverseCurve in interface OrientedCurve2D
Specified by:
getReverseCurve in interface SmoothCurve2D
Specified by:
getReverseCurve in interface SmoothOrientedCurve2D


Copyright © 2015 AMIS research group, Faculty of Mathematics and Physics, Charles University in Prague, Czech Republic. All Rights Reserved.