Class TLcdNVG20Point

All Implemented Interfaces:
ILcdDataObject, ILcdNVGNode, ILcdBounded, ILcdPoint, ILcdShape, ILcd2DEditablePoint, ILcd2DEditableShape, ILcdCache, ILcdCloneable, ILcdDeepCloneable, Serializable, Cloneable

public class TLcdNVG20Point extends TLcdNVG20SymbolizedContent implements ILcd2DEditablePoint, ILcdCache
Implementation of ILcd2DEditablePoint that represents an NVG 2.0 Point.

Note TLcdNVG20Point inherits a TLcdNVGStyle from TLcdNVG20Content. However, the rendering of a point is only based on its TLcdNVGSymbol.

Since:
2015.0
See Also:
  • Field Details

    • COURSE_PROPERTY

      public static final TLcdDataProperty COURSE_PROPERTY
      Data property that maps to the course attribute. The possible values for this property are instances of Double.
    • ROT_ANGLE_PROPERTY

      public static final TLcdDataProperty ROT_ANGLE_PROPERTY
      Data property that maps to the rotation attribute. The possible values for this property are instances of double.
    • SPEED_PROPERTY

      public static final TLcdDataProperty SPEED_PROPERTY
      Data property that maps to the speed attribute. The possible values for this property are instances of Double.
    • X_PROPERTY

      public static final TLcdDataProperty X_PROPERTY
      Data property that maps to the x attribute. The possible values for this property are instances of double.
    • Y_PROPERTY

      public static final TLcdDataProperty Y_PROPERTY
      Data property that maps to the y attribute. The possible values for this property are instances of double.
    • Z_PROPERTY

      public static final TLcdDataProperty Z_PROPERTY
      Data property that maps to the z attribute. The possible values for this property are instances of double.
    • MODIFIERS_PROPERTY

      public static final TLcdDataProperty MODIFIERS_PROPERTY
      Data property that maps to the modifiers attribute. The possible values for this property are instances of TLcdNVGModifiers.
    • SYMBOL_PROPERTY

      public static final TLcdDataProperty SYMBOL_PROPERTY
      Data property that maps to the symbol attribute. The possible values for this property are instances of TLcdNVGSymbol.
    • HREF_PROPERTY

      public static final TLcdDataProperty HREF_PROPERTY
      Data property that maps to the href attribute. The possible values for this property are instances of URI.
    • LABEL_PROPERTY

      public static final TLcdDataProperty LABEL_PROPERTY
      Data property that maps to the label attribute. The possible values for this property are instances of String.
    • STYLE_PROPERTY

      public static final TLcdDataProperty STYLE_PROPERTY
      Data property that maps to the style attribute. The possible values for this property are instances of TLcdNVGStyle.
    • URI_PROPERTY

      public static final TLcdDataProperty URI_PROPERTY
      Data property that maps to the uri attribute. The possible values for this property are instances of URI.
    • METADATA_PROPERTY

      public static final TLcdDataProperty METADATA_PROPERTY
      Data property that maps to the metadata element. The possible values for this property are instances of TLcdNVG20Extension.
    • EXTENDED_DATA_PROPERTY

      public static final TLcdDataProperty EXTENDED_DATA_PROPERTY
      Data property that maps to the ExtendedData element. The possible values for this property are instances of TLcdNVG20ExtendedData.
    • TEXT_INFO_PROPERTY

      public static final TLcdDataProperty TEXT_INFO_PROPERTY
      Data property that maps to the textInfo element. The possible values for this property are instances of String.
    • TIME_STAMP_PROPERTY

      public static final TLcdDataProperty TIME_STAMP_PROPERTY
      Data property that maps to the TimeStamp element. The possible values for this property are instances of XMLGregorianCalendar.
    • TIME_SPAN_PROPERTY

      public static final TLcdDataProperty TIME_SPAN_PROPERTY
      Data property that maps to the TimeSpan element. The possible values for this property are instances of TimeSpan.
    • EXTENSION_PROPERTY

      public static final TLcdDataProperty EXTENSION_PROPERTY
      Data property that maps to the extension element. The possible values for this property are instances of TLcdNVG20Extension.
  • Constructor Details

    • TLcdNVG20Point

      public TLcdNVG20Point()
    • TLcdNVG20Point

      public TLcdNVG20Point(TLcdDataType aDataType)
      Constructs a new instance of TLcdNVG20Point with the given data type.
      Parameters:
      aDataType - The data type of the point
  • Method Details

    • clone

      public TLcdNVG20Point clone()
      Returns a deep clone of this object. This method delegates to TLcdDataObject.clone(Map).
      Specified by:
      clone in interface ILcdCloneable
      Overrides:
      clone in class TLcdDataObject
      Returns:
      a deep clone of this object
      See Also:
    • clone

      public TLcdNVG20Point clone(Map aObjectDictionary)
      Description copied from class: TLcdDataObject
      Returns a deep clone of this object. If the clone is not already present in the dictionary, a new instance if created as follows:
      • First, a new instance is created using Java's clone() mechanism.
      • Then, all properties of this object are cloned and set on the newly created instance. A property is cloned as follows:
        • If the property value is an ILcdDataObject, the value is cloned by first creating a new instance via the value.getDataType().newInstance() method, and then cloning its properties one by one.
        • If the value implements ILcdDeepCloneable or ILcdCloneable then this interface is used to clone the value.
        • Otherwise, the property value is copied by reference.
      Specified by:
      clone in interface ILcdDeepCloneable
      Overrides:
      clone in class TLcdDataObject
      Parameters:
      aObjectDictionary - the Object dictionary that keeps track of the objects for which a clone has already been made, and their corresponding clone Object.
      Returns:
      a deep clone of this object
    • insertIntoCache

      public void insertIntoCache(Object aKey, Object aObject)
      Inserts a cache Object corresponding to the given key Object.
      Specified by:
      insertIntoCache in interface ILcdCache
      Parameters:
      aKey - the key Object that will be used to identify the Object. The key must therefore be a unique identifier, typically the caller itself: insertIntoCache(this, ...).
      aObject - the Object to be cached.
    • getCachedObject

      public Object getCachedObject(Object aKey)
      Looks up and returns the cached Object corresponding to the given key.
      Specified by:
      getCachedObject in interface ILcdCache
      Parameters:
      aKey - the key Object that was used for storing the cache Object.
      Returns:
      the cached Object, or null if there is no Object corresponding to the given key.
    • removeCachedObject

      public Object removeCachedObject(Object aKey)
      Looks up and removes the cached Object corresponding to the given key.
      Specified by:
      removeCachedObject in interface ILcdCache
      Parameters:
      aKey - the key Object that was used for storing the cache Object.
      Returns:
      the cached Object, or null if there was no Object corresponding to the given key.
    • clearCache

      public void clearCache()
      Clears the cache.
      Specified by:
      clearCache in interface ILcdCache
    • move2D

      public void move2D(ILcdPoint aILcdPoint)
      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:
      aILcdPoint - the ILcdPoint to move to.
      See Also:
    • getZ

      public double getZ()
      Returns the value of the property that maps to the z attribute.

      Measure of altitude distances are expressed in meters relative (positive or negative) to the datum surface of WGS-84

      Specified by:
      getZ in interface ILcdPoint
      Returns:
      the value of the Z_PROPERTY property.
    • getCosX

      public double getCosX()
      Returns cos( getX() * DEG2RAD ).
      Specified by:
      getCosX in interface ILcdPoint
      Returns:
      cos( getX() * DEG2RAD ).
    • move2D

      public void move2D(double aX, double aY)
      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:
      aX - the x coordinate of the point.
      aY - the y coordinate of the point.
    • getCosY

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

      public double getSinX()
      Returns sin( getX() * DEG2RAD ).
      Specified by:
      getSinX in interface ILcdPoint
      Returns:
      sin( getX() * DEG2RAD ).
    • translate2D

      public void translate2D(double aDeltaX, double aDeltaY)
      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:
      aDeltaX - the x coordinate of the translation vector.
      aDeltaY - the y coordinate of the translation vector.
    • getSinY

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

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

      public double getTanY()
      Returns tan( getY() * DEG2RAD ).
      Specified by:
      getTanY in interface ILcdPoint
      Returns:
      tan( getY() * DEG2RAD ).
    • cloneAs2DEditablePoint

      public ILcd2DEditablePoint cloneAs2DEditablePoint()
      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:
      a copy of this ILcdPoint that is also an ILcd2DEditablePoint. This makes sure that the first two dimensions of the copy are writable, even if the original ILcdPoint object may be read-only.
      See Also:
    • cloneAs3DEditablePoint

      public ILcd3DEditablePoint cloneAs3DEditablePoint()
      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:
      a copy of this ILcdPoint that is also an ILcd3DEditablePoint. This makes sure that all three dimensions of the copy are writable, even if the original ILcdPoint object may be read-only.
      See Also:
    • getFocusPoint

      public ILcdPoint getFocusPoint()
      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 aILcdPoint)
      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:
      aILcdPoint - the ILcdPoint to test.
      Returns:
      the boolean result of the containment test.
      See Also:
    • contains2D

      public boolean contains2D(double aX, double aY)
      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:
      aX - the x coordinate of the point.
      aY - the y coordinate of the point.
      Returns:
      the boolean result of the containment test.
    • contains3D

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

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

      public ILcdBounds getBounds()
      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.
    • setValue

      public void setValue(TLcdDataProperty aProperty, Object aValue)
      Description copied from interface: ILcdDataObject

      Sets the value of the given property for this data object. The implementation is allowed to throw an exception if the given value can't be set.

      The given property must be declared in the data object's type or in one of its super types. In other words, getDataType().getProperties().contains( aProperty ) should always be true. Otherwise, the implementation should throw an IllegalArgumentException.

      Specified by:
      setValue in interface ILcdDataObject
      Overrides:
      setValue in class TLcdDataObject
      Parameters:
      aProperty - the property for which the value is to be set
      aValue - the value to set
      See Also:
    • setX

      public void setX(double aValue)
      Sets the value of the property that maps to the x attribute.

      Longitude in decimal degrees (WGS84)

      Parameters:
      aValue - the value to set for the X_PROPERTY property.
    • setY

      public void setY(double aValue)
      Sets the value of the property that maps to the y attribute.

      Latitude in decimal degrees (WGS84)

      Parameters:
      aValue - the value to set for the Y_PROPERTY property.
    • setZ

      public void setZ(double aValue)
      Sets the value of the property that maps to the z attribute.

      Measure of altitude distances are expressed in meters relative (positive or negative) to the datum surface of WGS-84

      Parameters:
      aValue - the value to set for the Z_PROPERTY property.
    • getCourse

      public Double getCourse()
      Returns the value of the property that maps to the course attribute.

      Course in degrees (0 = north)

      Returns:
      the value of the COURSE_PROPERTY property.
    • setCourse

      public void setCourse(Double aValue)
      Sets the value of the property that maps to the course attribute.

      Course in degrees (0 = north)

      Parameters:
      aValue - the value to set for the COURSE_PROPERTY property.
    • getRotAngle

      public double getRotAngle()
      Returns the value of the property that maps to the rotation attribute.

      Rotation of the symbol in degrees. The default value is 0.0 degrees rotation

      Returns:
      the value of the ROT_ANGLE_PROPERTY property.
    • setRotAngle

      public void setRotAngle(double aValue)
      Sets the value of the property that maps to the rotation attribute.

      Rotation of the symbol in degrees. The default value is 0.0 degrees rotation

      Parameters:
      aValue - the value to set for the ROT_ANGLE_PROPERTY property.
    • getSpeed

      public Double getSpeed()
      Returns the value of the property that maps to the speed attribute.

      Speed in kilometers per hour (>= 0)

      Returns:
      the value of the SPEED_PROPERTY property.
    • setSpeed

      public void setSpeed(Double aValue)
      Sets the value of the property that maps to the speed attribute.

      Speed in kilometers per hour (>= 0)

      Parameters:
      aValue - the value to set for the SPEED_PROPERTY property.
    • getX

      public double getX()
      Returns the value of the property that maps to the x attribute.

      Longitude in decimal degrees (WGS84)

      Returns:
      the value of the X_PROPERTY property.
    • getY

      public double getY()
      Returns the value of the property that maps to the y attribute.

      Latitude in decimal degrees (WGS84)

      Returns:
      the value of the Y_PROPERTY property.
    • getModifiers

      public TLcdNVGModifiers getModifiers()
      Returns the value of the property that maps to the modifiers attribute.

      The modifiers attribute is used to associate additional information with the the symbol attribute

      Returns:
      the value of the MODIFIERS_PROPERTY property.
    • setModifiers

      public void setModifiers(TLcdNVGModifiers aValue)
      Sets the value of the property that maps to the modifiers attribute.

      The modifiers attribute is used to associate additional information with the the symbol attribute

      Parameters:
      aValue - the value to set for the MODIFIERS_PROPERTY property.
    • getSymbol

      public TLcdNVGSymbol getSymbol()
      Returns the value of the property that maps to the symbol attribute.

      Symbology attribute that binds the content to a specific symbol scheme and code. Format: :

      Returns:
      the value of the SYMBOL_PROPERTY property.
    • setSymbol

      public void setSymbol(TLcdNVGSymbol aValue)
      Sets the value of the property that maps to the symbol attribute.

      Symbology attribute that binds the content to a specific symbol scheme and code. Format: :

      Parameters:
      aValue - the value to set for the SYMBOL_PROPERTY property.
    • getHref

      public URI getHref()
      Returns the value of the property that maps to the href attribute.

      A URL to human readable content providing more information about the ContentType. Typically the NVG document will contain just a small amount of metadata required to render the content. The URL allows the user to drill-down (click through) to the full content.

      Returns:
      the value of the HREF_PROPERTY property.
    • setHref

      public void setHref(URI aValue)
      Sets the value of the property that maps to the href attribute.

      A URL to human readable content providing more information about the ContentType. Typically the NVG document will contain just a small amount of metadata required to render the content. The URL allows the user to drill-down (click through) to the full content.

      Parameters:
      aValue - the value to set for the HREF_PROPERTY property.
    • getLabel

      public String getLabel()
      Returns the value of the property that maps to the label attribute.

      A short text label describing the content. Long text should be placed in the text element.

      Returns:
      the value of the LABEL_PROPERTY property.
    • setLabel

      public void setLabel(String aValue)
      Sets the value of the property that maps to the label attribute.

      A short text label describing the content. Long text should be placed in the text element.

      Parameters:
      aValue - the value to set for the LABEL_PROPERTY property.
    • getStyle

      public TLcdNVGStyle getStyle()
      Returns the value of the property that maps to the style attribute.

      A text string (inline CSS string) that defines how objects should be rendered graphically.

      Returns:
      the value of the STYLE_PROPERTY property.
    • setStyle

      public void setStyle(TLcdNVGStyle aValue)
      Sets the value of the property that maps to the style attribute.

      A text string (inline CSS string) that defines how objects should be rendered graphically.

      Parameters:
      aValue - the value to set for the STYLE_PROPERTY property.
    • getUri

      public URI getUri()
      Returns the value of the property that maps to the uri attribute.

      The unique identifier for the content. The URI is immutable and shall remain constant across documents produced by the same source. Furthermore, the URI shall remain constant as the document is transferred through a mediation service/process.

      Returns:
      the value of the URI_PROPERTY property.
    • setUri

      public void setUri(URI aValue)
      Sets the value of the property that maps to the uri attribute.

      The unique identifier for the content. The URI is immutable and shall remain constant across documents produced by the same source. Furthermore, the URI shall remain constant as the document is transferred through a mediation service/process.

      Parameters:
      aValue - the value to set for the URI_PROPERTY property.
    • getMetadata

      public TLcdNVG20Extension getMetadata()
      Returns the value of the property that maps to the metadata element.

      named container for NDMS / Dublin Core defined metadata

      Returns:
      the value of the METADATA_PROPERTY property.
    • setMetadata

      public void setMetadata(TLcdNVG20Extension aValue)
      Sets the value of the property that maps to the metadata element.

      named container for NDMS / Dublin Core defined metadata

      Parameters:
      aValue - the value to set for the METADATA_PROPERTY property.
    • getExtendedData

      public TLcdNVG20ExtendedData getExtendedData()
      Returns the value of the property that maps to the ExtendedData element.
      Returns:
      the value of the EXTENDED_DATA_PROPERTY property.
    • setExtendedData

      public void setExtendedData(TLcdNVG20ExtendedData aValue)
      Sets the value of the property that maps to the ExtendedData element.
      Parameters:
      aValue - the value to set for the EXTENDED_DATA_PROPERTY property.
    • getTextInfo

      public String getTextInfo()
      Returns the value of the property that maps to the textInfo element.

      Additional human readable text in addition to @label. Long text content should be placed here.

      Returns:
      the value of the TEXT_INFO_PROPERTY property.
    • setTextInfo

      public void setTextInfo(String aValue)
      Sets the value of the property that maps to the textInfo element.

      Additional human readable text in addition to @label. Long text content should be placed here.

      Parameters:
      aValue - the value to set for the TEXT_INFO_PROPERTY property.
    • getTimeStamp

      public XMLGregorianCalendar getTimeStamp()
      Returns the value of the property that maps to the TimeStamp element.

      comparable point in time (DTG) to represent the last state change of this element

      Returns:
      the value of the TIME_STAMP_PROPERTY property.
    • setTimeStamp

      public void setTimeStamp(XMLGregorianCalendar aValue)
      Sets the value of the property that maps to the TimeStamp element.

      comparable point in time (DTG) to represent the last state change of this element

      Parameters:
      aValue - the value to set for the TIME_STAMP_PROPERTY property.
    • getTimeSpan

      public TLcdNVG20Content.TimeSpan getTimeSpan()
      Returns the value of the property that maps to the TimeSpan element.

      Define a show/hide period (based on strict DTG) for the shape as defined by KML on https://developers.google.com/kml/documentation/kmlreference#timespan

      Returns:
      the value of the TIME_SPAN_PROPERTY property.
    • setTimeSpan

      public void setTimeSpan(TLcdNVG20Content.TimeSpan aValue)
      Sets the value of the property that maps to the TimeSpan element.

      Define a show/hide period (based on strict DTG) for the shape as defined by KML on https://developers.google.com/kml/documentation/kmlreference#timespan

      Parameters:
      aValue - the value to set for the TIME_SPAN_PROPERTY property.
    • getExtension

      public TLcdNVG20Extension getExtension()
      Returns the value of the property that maps to the extension element.

      Extension point for structured community of interest specific content.

      Returns:
      the value of the EXTENSION_PROPERTY property.
    • setExtension

      public void setExtension(TLcdNVG20Extension aValue)
      Sets the value of the property that maps to the extension element.

      Extension point for structured community of interest specific content.

      Parameters:
      aValue - the value to set for the EXTENSION_PROPERTY property.