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_RHUMBFields inherited from interface com.luciad.shape.ILcdPolygon
CLOCKWISE, COUNTERCLOCKWISE, INVALID_ORIENTATION -
Method Summary
Modifier and TypeMethodDescriptionvoidaddSegment(ILcdAirspaceSegment aSegment) Adds aILcdAirspaceSegmentobject to the end of theILcdEditableAirspace.voidinsertSegmentAt(ILcdAirspaceSegment aSegment, int anIndex) Adds aILcdAirspaceSegmentobject to theILcdEditableAirspaceon the specified index.voidremoveSegment(ILcdAirspaceSegment aSegment) Removes aILcdAirspaceSegmentobject from theILcdEditableAirspace.voidremoveSegmentAt(int anIndex) Removes theILcdAirspaceSegmentobject on the specified index from the fromILcdEditableAirspace.Methods inherited from interface com.luciad.ais.model.airspace.ILcdAirspace
getSegment, getSegmentBySegmentNumber, getSegmentCountMethods inherited from interface com.luciad.shape.ILcdBounded
getBoundsMethods inherited from interface com.luciad.util.ILcdCloneable
cloneMethods inherited from interface com.luciad.shape.ILcdCurve
computePointSFCT, getEndPoint, getEndTangent2D, getInterpolation, getLength2D, getLineSegmentIntersectionCount, getStartPoint, getStartTangent2D, getTangent2DMethods inherited from interface com.luciad.datamodel.ILcdDataObject
getDataType, getValue, getValue, hasValue, hasValue, setValue, setValueMethods inherited from interface com.luciad.ais.shape.ILcdGeoPath
getLeg, getLegCountMethods inherited from interface com.luciad.shape.ILcdPointList
getPoint, getPointCount, getPointSFCT, getX, getY, getZMethods inherited from interface com.luciad.shape.ILcdPolygon
getOrientationMethods inherited from interface com.luciad.shape.ILcdShape
contains2D, contains2D, contains3D, contains3D, getFocusPoint
-
Method Details
-
addSegment
Adds aILcdAirspaceSegmentobject to the end of theILcdEditableAirspace. Note that there is no explicit check fornullsegments, which leave the airspace in an invalid state.- Parameters:
aSegment- theILcdAirspaceSegmentobject to be added
-
removeSegment
Removes aILcdAirspaceSegmentobject from theILcdEditableAirspace. If this airspace does not contain the segment or ifnullis supplied, it is unchanged. If the segment is found and removed, subsequent segments are shifted to the left.- Parameters:
aSegment- theILcdAirspaceSegmentobject to be removed
-
insertSegmentAt
Adds aILcdAirspaceSegmentobject to theILcdEditableAirspaceon the specified index. Subsequent segments are shifted to the right after the addition. Note that there is no explicit check fornullsegments, which leave the airspace in an invalid state.- Parameters:
aSegment- theILcdAirspaceSegmentobject to be added to theILcdEditableAirspace.anIndex- the index in theILcdEditableAirspacewhere theILcdAirspaceSegmentobject must be added.- Throws:
ArrayIndexOutOfBoundsException- if the index is out of range (index < 0 || index >= getSegmentCount()).
-
removeSegmentAt
void removeSegmentAt(int anIndex) Removes theILcdAirspaceSegmentobject on the specified index from the fromILcdEditableAirspace. Subsequent segments are shifted to the left after the removal.- Parameters:
anIndex- the index in theILcdEditableAirspacewhere theILcdAirspaceSegmentobject must be removed.- Throws:
ArrayIndexOutOfBoundsException- if the index is out of range (index < 0 || index >= getSegmentCount()).
-