Interface ILcdEditableAirspaceCorridor

All Superinterfaces:
Cloneable, ILcdAirspaceCorridor, ILcdBounded, ILcdCloneable, ILcdCurve, ILcdDataObject, ILcdGenericAirspace, ILcdGeoBuffer, ILcdGeoPath, ILcdPointList, ILcdShape, Serializable
All Known Implementing Classes:
TLcdAirspaceCorridor, TLcdFeaturedAirspaceCorridor

public interface ILcdEditableAirspaceCorridor extends ILcdAirspaceCorridor
This interface defines operations to edit the attributes, relationships and geometry of an 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.

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.

Since:
8.0
  • Method Details

    • addSegment

      void addSegment(ILcdAirspaceSegment aSegment)
      Adds a 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.
      Parameters:
      aSegment - the ILcdAirspaceSegment object to be added
    • removeSegment

      void removeSegment(ILcdAirspaceSegment aSegment)
      Removes a 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.
      Parameters:
      aSegment - the ILcdAirspaceSegment object to be removed.
    • insertSegmentAt

      void insertSegmentAt(ILcdAirspaceSegment aSegment, int aIndex)
      Adds a 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.
      Parameters:
      aSegment - the ILcdAirspaceSegment object to be added to the ILcdEditableAirspace.
      aIndex - the index in the ILcdEditableAirspaceCorridor where the ILcdAirspaceSegment object must be added.
      Throws:
      ArrayIndexOutOfBoundsException - if the index is out of range (index < 0 || index >= getSegmentCount()).
    • removeSegmentAt

      void removeSegmentAt(int anIndex)
      Removes the ILcdAirspaceSegment object at the specified index from the ILcdEditableAirspaceCorridor. Subsequent segments are shifted to the left after the removal.
      Parameters:
      anIndex - the index in the ILcdEditableAirspaceCorridor where the ILcdAirspaceSegment object must be removed.
      Throws:
      ArrayIndexOutOfBoundsException - if the index is out of range (index < 0 || index >= getSegmentCount()).
    • setWidth

      void setWidth(double aWidth)
      Sets the width of the ILcdEditableAirspaceCorridor, expressed in meters and measured from the axis to the border.
      Parameters:
      aWidth - the width of the ILcdEditableAirspaceCorridor.
      Throws:
      IllegalArgumentException - if a negative width is specified.