Package com.luciad.ais.model.airspace
Interface ILcdAirspaceCorridor
- All Superinterfaces:
Cloneable,ILcdBounded,ILcdCloneable,ILcdCurve,ILcdDataObject,ILcdGenericAirspace,ILcdGeoBuffer,ILcdGeoPath,ILcdPointList,ILcdShape,Serializable
- All Known Subinterfaces:
ILcdEditableAirspaceCorridor
- All Known Implementing Classes:
TLcdAirspaceCorridor,TLcdFeaturedAirspaceCorridor
public interface ILcdAirspaceCorridor
extends ILcdGeoBuffer, ILcdPointList, ILcdGeoPath, ILcdGenericAirspace, ILcdCurve
This interface represents an airspace corridor and provides methods for
retrieving its geometry and relationships.
An airspace corridor is considered to be a buffer, constructed from a centreline
and a width. It has the same aeronautical meaning as a regular airspace,
but its geometry better fits specific needs to define airspaces around
centrelines like climbing routes, flight paths, etc.
The centreline or axis is represented by a set of
ILcdAirspaceSegment objects,
of which the last segment needs to be of the leg type ILcdAirspaceSegment.POINT.
This segment represents the last point of the axis. Before the contour of the airspace is calculated,
the segments are discretized to a point list. The discretized axis points can be retrieved individually
through the methods available in ILcdPointList, or as a polyline shape
through the method getBaseShape(). The methods of ILcdCurve uses the discretized axis points
representation exposed by the methods in ILcdPointList.
The contour of the airspace corridor can be retrieved via getContour().
It is modeled as a complex polygon (i.e., a composite polygon consisting of one or more polygons
that each define an edge of the contour). In the simplest form, the contour is represented
by a single polygon. In cases where the airspace corridor intersects with itself,
multiple polygons are used to define the contour.
The height information of the airspace corridor is stored in features, see ILcdAirspaceFeature
and TLcdFeaturedAirspaceCorridor.
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
- See Also:
-
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.ILcdGeoBuffer
CAP_BUTT, CAP_ROUND, JOIN_ROUND -
Method Summary
Modifier and TypeMethodDescriptionReturns the discretized axis of the airspace corridor.Returns the contour of the airspace corridor.intReturns the end cap style of the airspace corridor.intReturns the join style of the airspace corridor.getPoint(int aIndex) Returns the point of the axis at the given index.intReturns the number of points in the discretized axis.getSegment(int aIndex) Returns theILcdAirspaceSegmentobject with the given index.getSegmentBySegmentNumber(int aSegmentNumber) Returns theILcdAirspaceSegmentobject with the given segment number.intReturns the number ofILcdAirspaceSegmentobjects that construct the airspace corridor axis.doublegetWidth()Returns the width of the airspace corridor, expressed in meters and measured from the axis to the border.Methods 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
getPointSFCT, getX, getY, getZMethods inherited from interface com.luciad.shape.ILcdShape
contains2D, contains2D, contains3D, contains3D, getFocusPoint
-
Method Details
-
getSegmentBySegmentNumber
Returns theILcdAirspaceSegmentobject with the given segment number. If noILcdAirspaceSegmentobject is found with the number,nullis returned.- Parameters:
aSegmentNumber- the segment number to look for.- Returns:
- the
ILcdAirspaceSegmentwith the given segment number, ornullif no segment is found.
-
getSegment
Returns theILcdAirspaceSegmentobject with the given index.- Parameters:
aIndex- the segment number to look for- Returns:
- the
ILcdAirspaceSegmentwith the given index. - Throws:
ArrayIndexOutOfBoundsException- if the index is out of range (index < 0 || index >= getSegmentCount()).
-
getSegmentCount
int getSegmentCount()Returns the number ofILcdAirspaceSegmentobjects that construct the airspace corridor axis.- Returns:
- the number of
ILcdAirspaceSegmentobjects.
-
getWidth
double getWidth()Returns the width of the airspace corridor, expressed in meters and measured from the axis to the border.- Specified by:
getWidthin interfaceILcdGeoBuffer- Returns:
- the width of the airspace corridor.
-
getEndCapStyle
int getEndCapStyle()Returns the end cap style of the airspace corridor.- Specified by:
getEndCapStylein interfaceILcdGeoBuffer- Returns:
- the end cap style of the airspace corridor.
-
getJoinStyle
int getJoinStyle()Returns the join style of the airspace corridor.- Specified by:
getJoinStylein interfaceILcdGeoBuffer- Returns:
- the join style of the airspace corridor.
-
getContour
ILcdComplexPolygon getContour()Returns the contour of the airspace corridor.- Returns:
- the contour of the airspace corridor.
-
getBaseShape
ILcdShape getBaseShape()Returns the discretized axis of the airspace corridor.- Specified by:
getBaseShapein interfaceILcdGeoBuffer- Returns:
- the discretized axis of the airspace corridor.
-
getPointCount
int getPointCount()Returns the number of points in the discretized axis.- Specified by:
getPointCountin interfaceILcdPointList- Returns:
- the number of points in the discretized axis.
-
getPoint
Returns the point of the axis at the given index.- Specified by:
getPointin interfaceILcdPointList- Parameters:
aIndex- the index of the point to be retrieved.- Returns:
- the point of the axis at the given index.
- Throws:
IndexOutOfBoundsException- if the index is out of range (index < 0 || index >= getPointCount()).
-