public class BoundaryPolyCirculinearCurve2D<T extends CirculinearContinuousCurve2D> extends PolyCirculinearCurve2D<T> implements CirculinearContinuousCurve2D, CirculinearContour2D
closedcurves| Constructor and Description |
|---|
BoundaryPolyCirculinearCurve2D() |
BoundaryPolyCirculinearCurve2D(Collection<? extends T> curves) |
BoundaryPolyCirculinearCurve2D(Collection<? extends T> curves,
boolean closed) |
BoundaryPolyCirculinearCurve2D(int size) |
BoundaryPolyCirculinearCurve2D(T[] curves) |
BoundaryPolyCirculinearCurve2D(T[] curves,
boolean closed) |
| Modifier and Type | Method and Description |
|---|---|
CirculinearCurveSet2D<? extends CirculinearContinuousCurve2D> |
clip(Box2D box)
Clip the PolyCurve2D by a box.
|
static <T extends CirculinearContinuousCurve2D> |
create(Collection<T> curves)
Static factory for creating a new BoundaryPolyCirculinearCurve2D from a
collection of curves.
|
static <T extends CirculinearContinuousCurve2D> |
create(Collection<T> curves,
boolean closed)
Static factory for creating a new BoundaryPolyCirculinearCurve2D from a
collection of curves.
|
static <T extends CirculinearContour2D> |
create(T[] curves)
Static factory for creating a new BoundaryPolyCirculinearCurve2D from an
array of curves.
|
static <T extends CirculinearContour2D> |
create(T[] curves,
boolean closed)
Static factory for creating a new BoundaryPolyCirculinearCurve2D from an
array of curves.
|
void |
fill(Graphics2D g2) |
Collection<BoundaryPolyCirculinearCurve2D<T>> |
getBoundaryCurves()
Returns the different continuous curves composing the boundary
|
Collection<? extends BoundaryPolyCirculinearCurve2D<?>> |
getContinuousCurves()
Returns the collection of continuous curves which constitute this curve.
|
CirculinearDomain2D |
getDomain()
Returns the domain delimited by this boundary.
|
double |
getLength() |
double |
getLength(double pos) |
CirculinearRing2D |
getParallel(double dist)
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) |
BoundaryPolyCirculinearCurve2D<? extends CirculinearContinuousCurve2D> |
getReverseCurve()
Returns the curve with same trace on the plane with parametrization in
reverse order.
|
Collection<? extends CirculinearElement2D> |
getSmoothPieces()
Returns a collection containing only instances of SmoothCurve2D.
|
PolyCirculinearCurve2D<? extends CirculinearContinuousCurve2D> |
getSubCurve(double t0,
double t1)
Return an instance of PolyOrientedCurve2D.
|
BoundaryPolyCurve2D<? extends ContinuousOrientedCurve2D> |
transform(AffineTransform2D trans)
Transforms each curve, and build a new CurveArray2D with the set of
transformed curves.
|
BoundaryPolyCirculinearCurve2D<? extends CirculinearContinuousCurve2D> |
transform(CircleInversion2D inv)
Transforms the shape by a circle inversion.
|
getBuffergetSignedDistance, getSignedDistance, getWindingAngle, isInsideappendPath, draw, equals, getAsPolyline, getGeneralPath, getLeftTangent, getRightTangent, isClosed, setClosed, wrapCurveaddCurve, clearCurves, clone, contains, contains, containsCurve, getAsAWTShape, getBoundingBox, getChildCurve, getCurve, getCurveIndex, getCurveNumber, getCurves, getDistance, getDistance, getFirstCurve, getFirstPoint, getGlobalPosition, getIntersections, getLastCurve, getLastPoint, getLocalPosition, getPoint, getPosition, getSingularPoints, getT0, getT1, isBounded, isEmpty, isSingular, iterator, project, removeCurvefromUnitSegment, toUnitSegmentfinalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitgetBufferappendPath, getAsPolyline, getLeftTangent, getRightTangent, isClosedgetSignedDistance, getSignedDistance, getWindingAngleclone, draw, getAsAWTShape, getFirstPoint, getIntersections, getLastPoint, getPoint, getPosition, getSingularPoints, getT0, getT1, isSingular, projectcontains, contains, getBoundingBox, getDistance, getDistance, isBounded, isEmptyisInsidepublic BoundaryPolyCirculinearCurve2D()
public BoundaryPolyCirculinearCurve2D(int size)
public BoundaryPolyCirculinearCurve2D(T[] curves)
public BoundaryPolyCirculinearCurve2D(T[] curves, boolean closed)
public BoundaryPolyCirculinearCurve2D(Collection<? extends T> curves)
public BoundaryPolyCirculinearCurve2D(Collection<? extends T> curves, boolean closed)
public static <T extends CirculinearContinuousCurve2D> BoundaryPolyCirculinearCurve2D<T> create(Collection<T> curves)
public static <T extends CirculinearContinuousCurve2D> BoundaryPolyCirculinearCurve2D<T> create(Collection<T> curves, boolean closed)
public static <T extends CirculinearContour2D> BoundaryPolyCirculinearCurve2D<T> create(T[] curves)
public static <T extends CirculinearContour2D> BoundaryPolyCirculinearCurve2D<T> create(T[] curves, boolean closed)
public double getLength()
getLength in interface CirculinearCurve2DgetLength in class PolyCirculinearCurve2D<T extends CirculinearContinuousCurve2D>public double getLength(double pos)
getLength in interface CirculinearCurve2DgetLength in class PolyCirculinearCurve2D<T extends CirculinearContinuousCurve2D>public double getPosition(double length)
getPosition in interface CirculinearCurve2DgetPosition in class PolyCirculinearCurve2D<T extends CirculinearContinuousCurve2D>public CirculinearRing2D getParallel(double dist)
CirculinearCurve2D 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.getParallel in interface CirculinearContinuousCurve2DgetParallel in interface CirculinearContour2DgetParallel in interface CirculinearCurve2DgetParallel in interface ContinuousCirculinearCurve2DgetParallel in class PolyCirculinearCurve2D<T extends CirculinearContinuousCurve2D>dist - the distance between the original curve and he parallel curve.public BoundaryPolyCirculinearCurve2D<? extends CirculinearContinuousCurve2D> transform(CircleInversion2D inv)
CirculinearShape2Dtransform in interface CirculinearBoundary2Dtransform in interface CirculinearContinuousCurve2Dtransform in interface CirculinearContour2Dtransform in interface CirculinearCurve2Dtransform in interface CirculinearShape2Dtransform in interface ContinuousCirculinearCurve2Dtransform in class PolyCirculinearCurve2D<T extends CirculinearContinuousCurve2D>inv - the circle inversionpublic void fill(Graphics2D g2)
fill in interface Boundary2Dpublic Collection<BoundaryPolyCirculinearCurve2D<T>> getBoundaryCurves()
Boundary2DgetBoundaryCurves in interface Boundary2Dpublic CirculinearDomain2D getDomain()
Boundary2DgetDomain in interface Boundary2Dpublic Collection<? extends CirculinearElement2D> getSmoothPieces()
PolyCurve2DgetSmoothPieces in interface CirculinearContinuousCurve2DgetSmoothPieces in interface ContinuousCirculinearCurve2DgetSmoothPieces in interface ContinuousCurve2DgetSmoothPieces in class PolyCirculinearCurve2D<T extends CirculinearContinuousCurve2D>public Collection<? extends BoundaryPolyCirculinearCurve2D<?>> getContinuousCurves()
Curve2DgetContinuousCurves in interface CirculinearBoundary2DgetContinuousCurves in interface CirculinearCurve2DgetContinuousCurves in interface Curve2DgetContinuousCurves in class PolyCirculinearCurve2D<T extends CirculinearContinuousCurve2D>public BoundaryPolyCirculinearCurve2D<? extends CirculinearContinuousCurve2D> getReverseCurve()
Curve2DgetReverseCurve in interface CirculinearBoundary2DgetReverseCurve in interface CirculinearContinuousCurve2DgetReverseCurve in interface CirculinearContour2DgetReverseCurve in interface CirculinearCurve2DgetReverseCurve in interface ContinuousCirculinearCurve2DgetReverseCurve in interface ContinuousCurve2DgetReverseCurve in interface Curve2DgetReverseCurve in interface Boundary2DgetReverseCurve in interface ContinuousBoundary2DgetReverseCurve in interface ContinuousOrientedCurve2DgetReverseCurve in interface OrientedCurve2DgetReverseCurve in class PolyCirculinearCurve2D<T extends CirculinearContinuousCurve2D>public PolyCirculinearCurve2D<? extends CirculinearContinuousCurve2D> getSubCurve(double t0, double t1)
PolyOrientedCurve2DgetSubCurve in interface CirculinearContinuousCurve2DgetSubCurve in interface CirculinearCurve2DgetSubCurve in interface ContinuousCirculinearCurve2DgetSubCurve in interface ContinuousCurve2DgetSubCurve in interface Curve2DgetSubCurve in interface ContinuousOrientedCurve2DgetSubCurve in class PolyCirculinearCurve2D<T extends CirculinearContinuousCurve2D>t0 - position of the start of the sub-curvet1 - position of the end of the sub-curvepublic CirculinearCurveSet2D<? extends CirculinearContinuousCurve2D> clip(Box2D box)
PolyOrientedCurve2Dclip in interface CirculinearBoundary2Dclip in interface CirculinearContinuousCurve2Dclip in interface CirculinearCurve2Dclip in interface ContinuousCirculinearCurve2Dclip in interface ContinuousCurve2Dclip in interface Curve2Dclip in interface ContinuousOrientedCurve2Dclip in interface OrientedCurve2Dclip in interface Shape2Dclip in class PolyCirculinearCurve2D<T extends CirculinearContinuousCurve2D>box - the clipping boxpublic BoundaryPolyCurve2D<? extends ContinuousOrientedCurve2D> transform(AffineTransform2D trans)
CurveArray2Dtransform in interface ContinuousCurve2Dtransform in interface Curve2Dtransform in interface Boundary2Dtransform in interface ContinuousBoundary2Dtransform in interface ContinuousOrientedCurve2Dtransform in interface OrientedCurve2Dtransform in interface Shape2Dtransform in class PolyOrientedCurve2D<T extends CirculinearContinuousCurve2D>trans - an affine transformCopyright © 2012 AMIS research group, Faculty of Mathematics and Physics, Charles University in Prague, Czech Republic. All Rights Reserved.