Package com.luciad.ais.model.airspace
Interface ILcdEditableAirspace
- All Superinterfaces:
Cloneable
,ILcdAirspace
,ILcdBounded
,ILcdCloneable
,ILcdCurve
,ILcdDataObject
,ILcdGenericAirspace
,ILcdGeoPath
,ILcdPointList
,ILcdPolygon
,ILcdRing
,ILcdShape
,Serializable
- All Known Subinterfaces:
ILcdEditableRefuelingAirspace
- All Known Implementing Classes:
TLcdAirspace
,TLcdFeaturedAirspace
,TLcdFeaturedRefuelingAirspace
,TLcdRefuelingAirspace
This interface defines operations to edit the attributes, relationships
and geometry of an
ILcdAirspace
.
Attributes and relationships in AIS domain objects can be required or optional.
When unspecified, an attribute or relationship is optional. Note that most
optional attributes are modeled using features.
In future releases of AIS, optional attributes or relationship may be added to
this interface. When this would happen, existing implementations may just
provide an empty implementation modifying or setting these new attributes or
relationships. This will require a minimal effort to update
existing code to a new version of AIS.-
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
Fields inherited from interface com.luciad.shape.ILcdPolygon
CLOCKWISE, COUNTERCLOCKWISE, INVALID_ORIENTATION
-
Method Summary
Modifier and TypeMethodDescriptionvoid
addSegment
(ILcdAirspaceSegment aSegment) Adds aILcdAirspaceSegment
object to the end of theILcdEditableAirspace
.void
insertSegmentAt
(ILcdAirspaceSegment aSegment, int anIndex) Adds aILcdAirspaceSegment
object to theILcdEditableAirspace
on the specified index.void
removeSegment
(ILcdAirspaceSegment aSegment) Removes aILcdAirspaceSegment
object from theILcdEditableAirspace
.void
removeSegmentAt
(int anIndex) Removes theILcdAirspaceSegment
object on the specified index from the fromILcdEditableAirspace
.Methods inherited from interface com.luciad.ais.model.airspace.ILcdAirspace
getSegment, getSegmentBySegmentNumber, getSegmentCount
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, getEndPoint, getEndTangent2D, getInterpolation, getLength2D, getLineSegmentIntersectionCount, getStartPoint, getStartTangent2D, getTangent2D
Methods inherited from interface com.luciad.datamodel.ILcdDataObject
getDataType, getValue, getValue, hasValue, hasValue, setValue, setValue
Methods inherited from interface com.luciad.ais.shape.ILcdGeoPath
getLeg, getLegCount
Methods inherited from interface com.luciad.shape.ILcdPointList
getPoint, getPointCount, getPointSFCT, getX, getY, getZ
Methods inherited from interface com.luciad.shape.ILcdPolygon
getOrientation
Methods inherited from interface com.luciad.shape.ILcdShape
contains2D, contains2D, contains3D, contains3D, getFocusPoint
-
Method Details
-
addSegment
Adds aILcdAirspaceSegment
object to the end of theILcdEditableAirspace
. Note that there is no explicit check fornull
segments, which leave the airspace in an invalid state.- Parameters:
aSegment
- theILcdAirspaceSegment
object to be added
-
removeSegment
Removes aILcdAirspaceSegment
object from theILcdEditableAirspace
. If this airspace does not contain the segment or ifnull
is supplied, it is unchanged. If the segment is found and removed, subsequent segments are shifted to the left.- Parameters:
aSegment
- theILcdAirspaceSegment
object to be removed
-
insertSegmentAt
Adds aILcdAirspaceSegment
object to theILcdEditableAirspace
on the specified index. Subsequent segments are shifted to the right after the addition. Note that there is no explicit check fornull
segments, which leave the airspace in an invalid state.- Parameters:
aSegment
- theILcdAirspaceSegment
object to be added to theILcdEditableAirspace
.anIndex
- the index in theILcdEditableAirspace
where theILcdAirspaceSegment
object must be added.- Throws:
ArrayIndexOutOfBoundsException
- if the index is out of range (index < 0 || index >= getSegmentCount()).
-
removeSegmentAt
void removeSegmentAt(int anIndex) Removes theILcdAirspaceSegment
object on the specified index from the fromILcdEditableAirspace
. Subsequent segments are shifted to the left after the removal.- Parameters:
anIndex
- the index in theILcdEditableAirspace
where theILcdAirspaceSegment
object must be removed.- Throws:
ArrayIndexOutOfBoundsException
- if the index is out of range (index < 0 || index >= getSegmentCount()).
-