Interface ILcdGeoPathLeg

All Superinterfaces:
Cloneable, ILcdBounded, ILcdCloneable, ILcdPoint, ILcdShape, Serializable
All Known Subinterfaces:
ILcdAirspaceSegment, ILcdEditableAirspaceSegment, ILcdEditableGeoPathLeg, ILcdEditableParachuteJumpAreaSegment, ILcdParachuteJumpAreaSegment
All Known Implementing Classes:
TLcdAirspaceSegment, TLcdGeoPathLeg, TLcdParachuteJumpAreaSegment, TLcdSubPointlistAirspaceSegment

public interface ILcdGeoPathLeg extends ILcdPoint
An ILcdGeoPathLeg is a geometric shape defined by a point and, depending on the type of the leg, a number of other parameters. Leg types include lines, circles and polygons.

The extra parameters can be retrieved in an array of double values using the getDataSFCT() method. See below for the list of parameters associated with each of the leg types.

  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final int
    An arc which connects the coordinates specified by the current leg to the end of the next GeoPath leg.
    static final int
    An arc specified by three points.
    static final int
    A circle defined by two points.
    static final int
    A circle defined by its center and radius.
    static final int
    A geodesic line which starts at the coordinates specified by the current leg and ends at the next GeoPath leg.
    static final int
    The most basic type of GeoPath leg is simply a point, and does not specify any additional parameters.
    static final int
    A rhumb line which starts at the coordinates specified by the current leg and ends at the next GeoPath leg.
    static final int
    A polyline defined by two points and a pointlist.
  • Method Summary

    Modifier and Type
    Method
    Description
    int
    Returns the number of parameters in the leg's data array.
    void
    getDataSFCT(double[] aDataSFCT)
    Copies the GeoPath leg's parameter list into the aDataSFCT array.
    int
    Returns the type of this GeoPath leg.

    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.ILcdShape

    contains2D, contains2D, contains3D, contains3D, getFocusPoint
  • Field Details

    • POINT

      static final int POINT
      The most basic type of GeoPath leg is simply a point, and does not specify any additional parameters.
      See Also:
    • CIRCLE_POINT

      static final int CIRCLE_POINT
      A circle defined by two points. The coordinates of the GeoPath leg itself specify the center of the circle. The parameter list specifies the X, Y and Z coordinates of a point on the circle's boundary.

      A geo-path leg of this type cannot be combined with other geo-path legs. It must be the only leg in the path (which consequently determines a circle).

      See Also:
    • CIRCLE_RADIUS

      static final int CIRCLE_RADIUS
      A circle defined by its center and radius. The coordinates of the GeoPath leg itself specify the center, and the parameter list contains the radius.

      A geo-path leg of this type cannot be combined with other geo-path legs. It must be the only leg in the path (which consequently determines a circle).

      See Also:
    • GEODESIC_LINE

      static final int GEODESIC_LINE
      A geodesic line which starts at the coordinates specified by the current leg and ends at the next GeoPath leg. No extra parameters are required.
      See Also:
    • RHUMB_LINE

      static final int RHUMB_LINE
      A rhumb line which starts at the coordinates specified by the current leg and ends at the next GeoPath leg. No extra parameters are required.
      See Also:
    • ARC

      static final int ARC
      An arc which connects the coordinates specified by the current leg to the end of the next GeoPath leg. The parameter list contains the X, Y and Z coordinates of the arc center, and a value indicating whether the arc is clockwise (value = 1.0) or counterclockwise (value = 0.0). Optionally, the parameter list is extended with a radius. Although a radius is redundant with the arc center coordinates, it can be used to detect and resolve inaccuracies in the data.
      See Also:
    • ARC_BY_EDGE

      static final int ARC_BY_EDGE
      An arc specified by three points. The first point is specified by the coordinates of the current leg. The second point is the end of the next GeoPath leg, and marks the end point of the arc. The parameter list contains the X, Y and Z coordinates of the third point, which is a point through which the arc must pass.
      See Also:
    • SUB_POINT_LIST

      static final int SUB_POINT_LIST
      A polyline defined by two points and a pointlist. The parameter list contains a list of X, Y and Z coordinates that represents the pointlist; the point in this list that is closest to the coordinates of the current leg is the start point of the polyline; the point that is closest to the coordinates of the next leg is the end point of the polyline.
      See Also:
  • Method Details

    • getType

      int getType()
      Returns the type of this GeoPath leg.
      Returns:
      one of the constants defined above
    • getDataLength

      int getDataLength()
      Returns the number of parameters in the leg's data array. Use getDataSFCT() to obtain the contents of the parameter list.
      Returns:
      the length of the leg's parameter list
    • getDataSFCT

      void getDataSFCT(double[] aDataSFCT)
      Copies the GeoPath leg's parameter list into the aDataSFCT array. The array must be sufficiently large! Use getDataLength() to determine the required size of the array.
      Parameters:
      aDataSFCT - will receive the parameter list of this GeoPath leg.