public interface ILcdEditableAirspaceCorridor extends ILcdAirspaceCorridor
ILcdAirspaceCorridor
.
The geometry of the airspace corridor is defined by a set of airspace segments and a width.
Please refer to the documentation of ILcdAirspaceCorridor
for more information about
defining and adding airspace segments.
CAP_BUTT, CAP_ROUND, JOIN_ROUND
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
Modifier and Type | Method and Description |
---|---|
void |
addSegment(ILcdAirspaceSegment aSegment)
Adds a
ILcdAirspaceSegment object to the end of the
ILcdEditableAirspaceCorridor . |
void |
insertSegmentAt(ILcdAirspaceSegment aSegment,
int aIndex)
Adds a
ILcdAirspaceSegment object to the ILcdEditableAirspaceCorridor
at the specified index. |
void |
removeSegment(ILcdAirspaceSegment aSegment)
Removes a
ILcdAirspaceSegment object from the ILcdEditableAirspaceCorridor . |
void |
removeSegmentAt(int anIndex)
Removes the
ILcdAirspaceSegment object at the specified index from the
ILcdEditableAirspaceCorridor . |
void |
setWidth(double aWidth)
Sets the width of the
ILcdEditableAirspaceCorridor ,
expressed in meters and measured from the axis to the border. |
getBaseShape, getContour, getEndCapStyle, getJoinStyle, getPoint, getPointCount, getSegment, getSegmentBySegmentNumber, getSegmentCount, getWidth
getPointSFCT, getX, getY, getZ
getLeg, getLegCount
getDataType, getValue, getValue, hasValue, hasValue, setValue, setValue
computePointSFCT, getEndPoint, getEndTangent2D, getInterpolation, getLength2D, getLineSegmentIntersectionCount, getStartPoint, getStartTangent2D, getTangent2D
contains2D, contains2D, contains3D, contains3D, getFocusPoint
getBounds
clone
void addSegment(ILcdAirspaceSegment aSegment)
ILcdAirspaceSegment
object to the end of the
ILcdEditableAirspaceCorridor
. Note that there is no
explicit check for null
segments,
which leave the airspace corridor in an invalid state.aSegment
- the ILcdAirspaceSegment
object to be addedvoid removeSegment(ILcdAirspaceSegment aSegment)
ILcdAirspaceSegment
object from the ILcdEditableAirspaceCorridor
.
If this airspace corridor does not contain the segment or if null
is supplied,
it is unchanged. If the segment is found and removed, subsequent segments are shifted to the left.aSegment
- the ILcdAirspaceSegment
object to be removed.void insertSegmentAt(ILcdAirspaceSegment aSegment, int aIndex)
ILcdAirspaceSegment
object to the ILcdEditableAirspaceCorridor
at the specified index. Subsequent segments are shifted to the right after the addition.
Note that there is no explicit check for null
segments,
which leave the airspace corridor in an invalid state.aSegment
- the ILcdAirspaceSegment
object to be added to the
ILcdEditableAirspace
.aIndex
- the index in the ILcdEditableAirspaceCorridor
where the
ILcdAirspaceSegment
object must be added.ArrayIndexOutOfBoundsException
- if the index is out of range (index
< 0 || index >= getSegmentCount()).void removeSegmentAt(int anIndex)
ILcdAirspaceSegment
object at the specified index from the
ILcdEditableAirspaceCorridor
. Subsequent segments are shifted to the left
after the removal.anIndex
- the index in the ILcdEditableAirspaceCorridor
where the
ILcdAirspaceSegment
object must be removed.ArrayIndexOutOfBoundsException
- if the index is out of range (index
< 0 || index >= getSegmentCount()).void setWidth(double aWidth)
ILcdEditableAirspaceCorridor
,
expressed in meters and measured from the axis to the border.aWidth
- the width of the ILcdEditableAirspaceCorridor
.IllegalArgumentException
- if a negative width is specified.