Class TLcdAISPoint

java.lang.Object
com.luciad.ais.shape.TLcdAISPoint
All Implemented Interfaces:
ILcdBounded, ILcdPoint, ILcdShape, ILcd2DEditablePoint, ILcd2DEditableShape, ILcd3DEditablePoint, ILcd3DEditableShape, ILcdCloneable, Serializable, Cloneable
Direct Known Subclasses:
TLcdAerodrome, TLcdArrestingGear, TLcdDME, TLcdGeoPathLeg, TLcdGlidePath, TLcdLocalizer, TLcdLocationBasedService, TLcdMarker, TLcdMilitaryTrainingRoutePoint, TLcdNDB, TLcdObstacle, TLcdRefuelingTrackPoint, TLcdRunwayClinePoint, TLcdSubPointlistAirspaceSegment, TLcdTACAN, TLcdVFRRoutePoint, TLcdVOR, TLcdWayPoint

public class TLcdAISPoint extends Object implements ILcd3DEditablePoint
An generic point class that delegates to another ILcd3DEditablePoint instance. This allows the use of different ILcd3DEditablePoint implementations within this single point class. For example, TLcdAISPoint can mimic a geodetic or a cartesian point by setting the delegate point to an instance of TLcdLonLatHeightPoint or TLcdXYZPoint respectively. This is the typical use in AIS, because it allows a single domain object to be used in geodetic and grid references by just changing the type of the delegate point.
See Also:
  • Constructor Summary

    Constructors
    Constructor
    Description
    This default constructor creates a TLcdAISPoint which has no location yet.
    Constructs a TLcdAISPoint which delegates to the supplied aPoint.
  • Method Summary

    Modifier and Type
    Method
    Description
    Makes Object.clone() public.
    Returns a copy of this ILcdPoint that is also an ILcd2DEditablePoint.
    Returns a copy of this ILcdPoint that is also an ILcd3DEditablePoint.
    boolean
    contains2D(double v, double v1)
    Checks whether this ILcdShape contains the given point in the 2D space.
    boolean
    Checks whether this ILcdShape contains the given ILcdPoint in the 2D space.
    boolean
    contains3D(double v, double v1, double v2)
    Checks whether this ILcdShape contains the given point in the 3D space.
    boolean
    Checks whether this ILcdShape contains the given ILcdPoint in the 3D space.
    boolean
    equals(Object aObject)
    Checks whether this ILcdPoint is equal to the given Object.
    Returns the ILcdBounds by which the geometry of this ILcdBounded object is bounded.
    double
    Returns cos( getX() * DEG2RAD ).
    double
    Returns cos( getY() * DEG2RAD ).
    Returns the focus point of this ILcdShape.
    double
    Returns sin( getX() * DEG2RAD ).
    double
    Returns sin( getY() * DEG2RAD ).
    double
    Returns tan( getX() * DEG2RAD ).
    double
    Returns tan( getY() * DEG2RAD ).
    double
    Returns the x coordinate of this ILcdPoint.
    double
    Returns the y coordinate of this ILcdPoint.
    double
    Returns the z coordinate of this ILcdPoint.
    int
     
    void
    move2D(double v, double v1)
    Moves this ILcd2DEditableShape to the given point in the 2D space.
    void
    move2D(ILcdPoint aPoint)
    Moves this ILcd2DEditableShape to the given point in the 2D space.
    void
    move3D(double v, double v1, double v2)
    Moves this ILcd3DEditableShape to the given point in the 3D space.
    void
    move3D(ILcdPoint aPoint)
    Moves this ILcd3DEditableShape to the given point in the 3D space.
    void
    Sets the delegate point to aPoint.
    void
    translate2D(double v, double v1)
    Translates this ILcd2DEditableShape from its current position over the given translation vector in the 2D space.
    void
    translate3D(double v, double v1, double v2)
    Translates this ILcd3DEditableShape from its current position over the given translation vector in the 3D space.

    Methods inherited from class java.lang.Object

    finalize, getClass, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • TLcdAISPoint

      public TLcdAISPoint()
      This default constructor creates a TLcdAISPoint which has no location yet. It is necessary to call setLocation before the created point can be used. Otherwise any ILcd3DEditablePoint operation will throw a null pointer exception.
    • TLcdAISPoint

      public TLcdAISPoint(ILcd3DEditablePoint aPoint)
      Constructs a TLcdAISPoint which delegates to the supplied aPoint.
      Parameters:
      aPoint - a point that will be used directly as location; it is not cloned.
  • Method Details

    • setLocation

      public void setLocation(ILcd3DEditablePoint aPoint)
      Sets the delegate point to aPoint.
      Parameters:
      aPoint -
    • getX

      public double getX()
      Description copied from interface: ILcdPoint
      Returns the x coordinate of this ILcdPoint.
      Specified by:
      getX in interface ILcdPoint
      Returns:
      the x coordinate of this ILcdPoint.
    • getY

      public double getY()
      Description copied from interface: ILcdPoint
      Returns the y coordinate of this ILcdPoint.
      Specified by:
      getY in interface ILcdPoint
      Returns:
      the y coordinate of this ILcdPoint.
    • getZ

      public double getZ()
      Description copied from interface: ILcdPoint
      Returns the z coordinate of this ILcdPoint.
      Specified by:
      getZ in interface ILcdPoint
      Returns:
      the z coordinate of this ILcdPoint.
    • getCosX

      public double getCosX()
      Description copied from interface: ILcdPoint
      Returns cos( getX() * DEG2RAD ).
      Specified by:
      getCosX in interface ILcdPoint
      Returns:
      cos( getX() * DEG2RAD ).
    • getCosY

      public double getCosY()
      Description copied from interface: ILcdPoint
      Returns cos( getY() * DEG2RAD ).
      Specified by:
      getCosY in interface ILcdPoint
      Returns:
      cos( getY() * DEG2RAD ).
    • getSinX

      public double getSinX()
      Description copied from interface: ILcdPoint
      Returns sin( getX() * DEG2RAD ).
      Specified by:
      getSinX in interface ILcdPoint
      Returns:
      sin( getX() * DEG2RAD ).
    • getSinY

      public double getSinY()
      Description copied from interface: ILcdPoint
      Returns sin( getY() * DEG2RAD ).
      Specified by:
      getSinY in interface ILcdPoint
      Returns:
      sin( getY() * DEG2RAD ).
    • getTanX

      public double getTanX()
      Description copied from interface: ILcdPoint
      Returns tan( getX() * DEG2RAD ).
      Specified by:
      getTanX in interface ILcdPoint
      Returns:
      tan( getX() * DEG2RAD ).
    • getTanY

      public double getTanY()
      Description copied from interface: ILcdPoint
      Returns tan( getY() * DEG2RAD ).
      Specified by:
      getTanY in interface ILcdPoint
      Returns:
      tan( getY() * DEG2RAD ).
    • clone

      public Object clone()
      Description copied from interface: ILcdCloneable

      Makes Object.clone() public.

      When for example extending from java.lang.Object, it can be implemented like this:
      
       public Object clone() {
         try {
           return super.clone();
         } catch ( CloneNotSupportedException e ) {
           // Cannot happen: extends from Object and implements Cloneable (see also Object.clone)
           throw new RuntimeException( e );
         }
       }
       
      Specified by:
      clone in interface ILcdCloneable
      Overrides:
      clone in class Object
      See Also:
    • equals

      public boolean equals(Object aObject)
      Description copied from interface: ILcdPoint
      Checks whether this ILcdPoint is equal to the given Object.
      Specified by:
      equals in interface ILcdPoint
      Overrides:
      equals in class Object
      Parameters:
      aObject - the Object to compare to.
      Returns:
      false if aObject is an ILcdPoint object with different 3D coordinates or the object is not an ILcdPoint. If the objects do have the same 3D coordinates, the return value is defined by the specific implementations of ILcdPoint and may still be false.
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object
    • cloneAs2DEditablePoint

      public ILcd2DEditablePoint cloneAs2DEditablePoint()
      Description copied from interface: ILcdPoint
      Returns a copy of this ILcdPoint that is also an ILcd2DEditablePoint. This makes sure that the first two dimensions of the copy are writable,
      Specified by:
      cloneAs2DEditablePoint in interface ILcdPoint
      Returns:
      cloneAs2DEditablePoint performed on the delegate point, and not a cloned instance of this TLcdAISPoint. This is to prevent nested TLcdAISPoints.
      See Also:
    • cloneAs3DEditablePoint

      public ILcd3DEditablePoint cloneAs3DEditablePoint()
      Description copied from interface: ILcdPoint
      Returns a copy of this ILcdPoint that is also an ILcd3DEditablePoint. This makes sure that all three dimensions of the copy are writable,
      Specified by:
      cloneAs3DEditablePoint in interface ILcdPoint
      Returns:
      cloneAs3DEditablePoint performed on the delegate point, and not a cloned instance of this TLcdAISPoint. This is to prevent nested TLcdAISPoints.
      See Also:
    • getFocusPoint

      public ILcdPoint getFocusPoint()
      Description copied from interface: ILcdShape
      Returns the focus point of this ILcdShape.
      Specified by:
      getFocusPoint in interface ILcdShape
      Returns:
      the focus point of this ILcdShape.
    • contains2D

      public boolean contains2D(ILcdPoint aPoint)
      Description copied from interface: ILcdShape
      Checks whether this ILcdShape contains the given ILcdPoint in the 2D space. Only the first two dimensions of the ILcdShape and the ILcdPoint are considered.
      Specified by:
      contains2D in interface ILcdShape
      Parameters:
      aPoint - the ILcdPoint to test.
      Returns:
      the boolean result of the containment test.
      See Also:
    • contains2D

      public boolean contains2D(double v, double v1)
      Description copied from interface: ILcdShape
      Checks whether this ILcdShape contains the given point in the 2D space. Only the first two dimensions of the ILcdShape are considered.
      Specified by:
      contains2D in interface ILcdShape
      Parameters:
      v - the x coordinate of the point.
      v1 - the y coordinate of the point.
      Returns:
      the boolean result of the containment test.
    • contains3D

      public boolean contains3D(ILcdPoint aPoint)
      Description copied from interface: ILcdShape
      Checks whether this ILcdShape contains the given ILcdPoint in the 3D space.
      Specified by:
      contains3D in interface ILcdShape
      Parameters:
      aPoint - the ILcdPoint to test.
      Returns:
      the boolean result of the containment test.
      See Also:
    • contains3D

      public boolean contains3D(double v, double v1, double v2)
      Description copied from interface: ILcdShape
      Checks whether this ILcdShape contains the given point in the 3D space.
      Specified by:
      contains3D in interface ILcdShape
      Parameters:
      v - the x coordinate of the point.
      v1 - the y coordinate of the point.
      v2 - the z coordinate of the point.
      Returns:
      the boolean result of the containment test.
    • getBounds

      public ILcdBounds getBounds()
      Description copied from interface: ILcdBounded
      Returns the ILcdBounds by which the geometry of this ILcdBounded object is bounded.

      If the geometry does not allow retrieving valid bounds (for example a polyline with 0 points) the return value is unspecified. It is highly recommended to return an undefined bounds. You can create undefined bounds using the default constructors of TLcdLonLatBounds or TLcdXYBounds.

      Specified by:
      getBounds in interface ILcdBounded
      Returns:
      the ILcdBounds by which the geometry of this ILcdBounded object is bounded.
    • move2D

      public void move2D(ILcdPoint aPoint)
      Description copied from interface: ILcd2DEditableShape
      Moves this ILcd2DEditableShape to the given point in the 2D space. The focus point is used as the handle by which the shape is moved. Only the first two dimensions of the ILcdShape and the ILcdPoint are considered. The third dimension is left unchanged.
      Specified by:
      move2D in interface ILcd2DEditableShape
      Parameters:
      aPoint - the ILcdPoint to move to.
      See Also:
    • move2D

      public void move2D(double v, double v1)
      Description copied from interface: ILcd2DEditableShape
      Moves this ILcd2DEditableShape to the given point in the 2D space. The focus point is used as the handle by which the shape is moved. Only the first two dimensions of the ILcdShape are considered. The third dimension is left unchanged.
      Specified by:
      move2D in interface ILcd2DEditableShape
      Parameters:
      v - the x coordinate of the point.
      v1 - the y coordinate of the point.
    • translate2D

      public void translate2D(double v, double v1)
      Description copied from interface: ILcd2DEditableShape
      Translates this ILcd2DEditableShape from its current position over the given translation vector in the 2D space. Only the first two dimensions of the ILcdShape are considered. The third dimension is left unchanged.
      Specified by:
      translate2D in interface ILcd2DEditableShape
      Parameters:
      v - the x coordinate of the translation vector.
      v1 - the y coordinate of the translation vector.
    • move3D

      public void move3D(ILcdPoint aPoint)
      Description copied from interface: ILcd3DEditableShape
      Moves this ILcd3DEditableShape to the given point in the 3D space. The focus point is used as the handle by which the shape is moved.
      Specified by:
      move3D in interface ILcd3DEditableShape
      Parameters:
      aPoint - the ILcdPoint to move to.
      See Also:
    • move3D

      public void move3D(double v, double v1, double v2)
      Description copied from interface: ILcd3DEditableShape
      Moves this ILcd3DEditableShape to the given point in the 3D space. The focus point is used as the handle by which the shape is moved.
      Specified by:
      move3D in interface ILcd3DEditableShape
      Parameters:
      v - the x coordinate of the point.
      v1 - the y coordinate of the point.
      v2 - the z coordinate of the point.
    • translate3D

      public void translate3D(double v, double v1, double v2)
      Description copied from interface: ILcd3DEditableShape
      Translates this ILcd3DEditableShape from its current position over the given translation vector in the 3D space.
      Specified by:
      translate3D in interface ILcd3DEditableShape
      Parameters:
      v - the x coordinate of the translation vector.
      v1 - the y coordinate of the translation vector.
      v2 - the z coordinate of the translation vector.