Package com.luciad.shape
Interface ILcdCompositeCurve
- All Superinterfaces:
Cloneable
,ILcdBounded
,ILcdCloneable
,ILcdCurve
,ILcdShape
,Serializable
- All Known Subinterfaces:
ILcdEditableCompositeCurve
- All Known Implementing Classes:
TLcdAIXM51Curve
,TLcdAIXM51ElevatedCurve
,TLcdCompositeCurve
,TLcdDWGCompositeCurve
,TLcdDWGCompositeRing
,TLcdGML31Arc
,TLcdGML31ArcByBulge
,TLcdGML31ArcString
,TLcdGML31ArcStringByBulge
,TLcdGML31Circle
,TLcdGML31CompositeCurve
,TLcdGML31Curve
,TLcdGML31Ring
,TLcdGML32Arc
,TLcdGML32ArcByBulge
,TLcdGML32ArcString
,TLcdGML32ArcStringByBulge
,TLcdGML32Circle
,TLcdGML32CompositeCurve
,TLcdGML32Curve
,TLcdGML32Ring
,TLcdLonLatCompositeRing
,TLcdRoundedPolygon
,TLcdRoundedPolyline
,TLcdXYCompositeRing
A curve that is a connected sequence of other curves.
Note that this interface does not enforce the continuity of the composite curve it defines.
Rather, it is the responsibility of the instance (e.g.
ILcdGXYEditor
)
that creates or manipulates the composite curves, to ensure that all curves are properly connected
to one another.- Since:
- 9.0
-
Field Summary
Fields inherited from interface com.luciad.shape.ILcdCurve
INTERPOLATION_CIRCLE_BY_3POINTS, INTERPOLATION_CIRCLE_BY_CENTERPOINT, INTERPOLATION_CIRCULARARC_BY_3POINTS, INTERPOLATION_CIRCULARARC_BY_BULGE, INTERPOLATION_CIRCULARARC_BY_CENTERPOINT, INTERPOLATION_ELLIPTICAL, INTERPOLATION_GEODESIC, INTERPOLATION_LINEAR, INTERPOLATION_MIXED, INTERPOLATION_RHUMB
-
Method Summary
Modifier and TypeMethodDescriptionReturns a list with the curve's elements.Retrieves the end point of the curve.Returns the interpolation method used by this curve, which isILcdCurve.INTERPOLATION_MIXED
.Retrieves the start point of the curve.Methods inherited from interface com.luciad.shape.ILcdBounded
getBounds
Methods inherited from interface com.luciad.util.ILcdCloneable
clone
Methods inherited from interface com.luciad.shape.ILcdCurve
computePointSFCT, getEndTangent2D, getLength2D, getLineSegmentIntersectionCount, getStartTangent2D, getTangent2D
Methods inherited from interface com.luciad.shape.ILcdShape
contains2D, contains2D, contains3D, contains3D, getFocusPoint
-
Method Details
-
getStartPoint
ILcdPoint getStartPoint()Retrieves the start point of the curve. This is equivalent with callingILcdCurve.computePointSFCT(double, com.luciad.shape.shape3D.ILcd3DEditablePoint)
with parameter value 0.In case of an empty composite curve,
null
is returned.- Specified by:
getStartPoint
in interfaceILcdCurve
- Returns:
- the start point of the curve
-
getEndPoint
ILcdPoint getEndPoint()Retrieves the end point of the curve. This is equivalent with callingILcdCurve.computePointSFCT(double, com.luciad.shape.shape3D.ILcd3DEditablePoint)
with parameter value 1.In case of an empty composite curve,
null
is returned.- Specified by:
getEndPoint
in interfaceILcdCurve
- Returns:
- the end point of the curve
-
getCurves
Returns a list with the curve's elements. Each sub-curve's end point, except for the last sub-curve, must coincide with the next sub-curve's start point.The returned list is not guaranteed to be editable. See
ILcdEditableCompositeCurve
for an editable variant of this interface.Note that this adding curves to the result of calling this method may throw a
ClassCastException
orIllegalArgumentException
in case the class of the curve(s) to add is not compatible with the implementation of the composite curve. Implementations should specify in their documentation all restrictions that apply in this context.- Returns:
- a list with the curve's elements
-
getInterpolation
String getInterpolation()Returns the interpolation method used by this curve, which isILcdCurve.INTERPOLATION_MIXED
.- Specified by:
getInterpolation
in interfaceILcdCurve
- Returns:
- the interpolation method used by this curve,
which is
INTERPOLATION_MIXED
.
-