Class TLcdKML22MultiGeometry

All Implemented Interfaces:
ILcdDataObject, ILcdBounded, ILcdEditableShapeList, ILcdShape, ILcdShapeList, ILcd2DEditableShape, ILcd3DEditableShape, ILcdCache, ILcdCloneable, ILcdDeepCloneable, Serializable, Cloneable

public class TLcdKML22MultiGeometry extends TLcdKML22AbstractGeometry implements ILcdEditableShapeList
Domain class modeling the KML MultiGeometryType type.

OGC KML Specification description:

 This element can be used wherever the following element is referenced:

  -kml:AbstractGeometryGroup

 A container for zero or more geometry elements associated with the same KML feature.
 A kml:MultiGeometry element should contain more than one
 kml:AbstractGeometryGroup element outside of an update context, that is when not a
 descendant of kml:Update.
 

Since:
10.0
See Also:
  • Field Details

    • ABSTRACT_GEOMETRY_GROUP_PROPERTY

      public static final TLcdDataProperty ABSTRACT_GEOMETRY_GROUP_PROPERTY
      Data property that maps to the AbstractGeometryGroup element. The possible values for this property are instances of List<TLcdKML22AbstractGeometry>.
    • MULTI_GEOMETRY_SIMPLE_EXTENSION_GROUP_PROPERTY

      public static final TLcdDataProperty MULTI_GEOMETRY_SIMPLE_EXTENSION_GROUP_PROPERTY
      Data property that maps to the MultiGeometrySimpleExtensionGroup element. The possible values for this property are instances of List<String>.
    • MULTI_GEOMETRY_OBJECT_EXTENSION_GROUP_PROPERTY

      public static final TLcdDataProperty MULTI_GEOMETRY_OBJECT_EXTENSION_GROUP_PROPERTY
      Data property that maps to the MultiGeometryObjectExtensionGroup element. The possible values for this property are instances of List<TLcdKML22AbstractObject>.
    • ABSTRACT_GEOMETRY_SIMPLE_EXTENSION_GROUP_PROPERTY

      public static final TLcdDataProperty ABSTRACT_GEOMETRY_SIMPLE_EXTENSION_GROUP_PROPERTY
      Data property that maps to the AbstractGeometrySimpleExtensionGroup element. The possible values for this property are instances of List<String>.
    • ABSTRACT_GEOMETRY_OBJECT_EXTENSION_GROUP_PROPERTY

      public static final TLcdDataProperty ABSTRACT_GEOMETRY_OBJECT_EXTENSION_GROUP_PROPERTY
      Data property that maps to the AbstractGeometryObjectExtensionGroup element. The possible values for this property are instances of List<TLcdKML22AbstractObject>.
  • Constructor Details

    • TLcdKML22MultiGeometry

      public TLcdKML22MultiGeometry(TLcdDataType aType)
      Creates a new TLcdKML22MultiGeometry with a custom TLcdDataType.
      Parameters:
      aType - a custom TLcdDataType
  • Method Details

    • addShape

      public void addShape(int aIndex, ILcdShape aShape)
      Description copied from interface: ILcdEditableShapeList
      Inserts the specified shape at the specified position in this ILcdShapeList.
      Specified by:
      addShape in interface ILcdEditableShapeList
      Parameters:
      aIndex - the index at which the shape is to be inserted.
      aShape - the shape to be inserted.
    • addShape

      public void addShape(ILcdShape aShape)
      Description copied from interface: ILcdEditableShapeList
      Appends the specified shape to the end of this ILcdShapeList.
      Specified by:
      addShape in interface ILcdEditableShapeList
      Parameters:
      aShape - the shape to be appended to this ILcdShapeList.
    • addShapes

      public void addShapes(ILcdShape[] aShapes)
      Description copied from interface: ILcdEditableShapeList
      Appends the specified array of shapes to the end of this ILcdShapeList.
      Specified by:
      addShapes in interface ILcdEditableShapeList
      Parameters:
      aShapes - the array of shapes to be appended to this ILcdShapeList.
    • clearShapes

      public void clearShapes()
      Description copied from interface: ILcdEditableShapeList
      Removes all of the shapes from this ILcdShapeList.
      Specified by:
      clearShapes in interface ILcdEditableShapeList
    • removeShape

      public ILcdShape removeShape(int aIndex)
      Description copied from interface: ILcdEditableShapeList
      Removes the shape at the specified position in this ILcdShapeList. Shifts any subsequent shapes to the left. Returns the shape that was removed from this ILcdShapeList.
      Specified by:
      removeShape in interface ILcdEditableShapeList
      Parameters:
      aIndex - the index of the shape to removed.
      Returns:
      the shape previously at the specified position.
    • removeShape

      public boolean removeShape(ILcdShape aShape)
      Description copied from interface: ILcdEditableShapeList
      Removes the first occurrence of the specified shape in this ILcdShapeList. If this ILcdShapeList does not contain the shape, it is unchanged.
      Specified by:
      removeShape in interface ILcdEditableShapeList
      Parameters:
      aShape - the shape to be removed, if present.
      Returns:
      true if this ILcdShapeList contained the specified element.
    • removeShapes

      public void removeShapes(ILcdShape[] aShapes)
      Description copied from interface: ILcdEditableShapeList
      Removes all shapes from this ILcdShapeList that are contained in the specified array of shapes.
      Specified by:
      removeShapes in interface ILcdEditableShapeList
      Parameters:
      aShapes - the array of shapes to be removed from this ILcdShapeList.
    • setShape

      public ILcdShape setShape(int aIndex, ILcdShape aShape)
      Description copied from interface: ILcdEditableShapeList
      Replaces the shape at the specified position in this ILcdShapeList with the specified shape.
      Specified by:
      setShape in interface ILcdEditableShapeList
      Parameters:
      aIndex - index of shape to replace.
      aShape - the shape to be stored at the specified position.
      Returns:
      the shape previously at the specified position.
    • setShapes

      public void setShapes(ILcdShape[] aShapes)
      Description copied from interface: ILcdEditableShapeList
      Replace the list of shapes contained in this ILcdShapeList with the specified array of shapes.
      Specified by:
      setShapes in interface ILcdEditableShapeList
      Parameters:
      aShapes - the array of shapes to be stored in this ILcdShapeList.
    • shapeChanged

      public void shapeChanged(int aIndex)
      Description copied from interface: ILcdEditableShapeList
      Notifies this ILcdShapeList that the shape at the specified position has changed.
      Specified by:
      shapeChanged in interface ILcdEditableShapeList
      Parameters:
      aIndex - the index of the shape that has changed.
    • shapeChanged

      public void shapeChanged(ILcdShape aShape)
      Description copied from interface: ILcdEditableShapeList
      Notifies this ILcdShapeList that the specified shape has changed.
      Specified by:
      shapeChanged in interface ILcdEditableShapeList
      Parameters:
      aShape - the shape that has changed.
    • shapesChanged

      public void shapesChanged()
      Description copied from interface: ILcdEditableShapeList
      Notifies this ILcdShapeList that some (possibly all) of its shapes have changed.
      Specified by:
      shapesChanged in interface ILcdEditableShapeList
    • getShapeCount

      public int getShapeCount()
      Description copied from interface: ILcdShapeList
      Returns the number of ILcdShape objects in the list.
      Specified by:
      getShapeCount in interface ILcdShapeList
      Returns:
      the number of ILcdShape objects in the list.
    • getShape

      public ILcdShape getShape(int aIndex)
      Description copied from interface: ILcdShapeList
      Returns the ILcdShape at the given index.
      Specified by:
      getShape in interface ILcdShapeList
      Parameters:
      aIndex - a valid index in the list of ILcdShape objects.
      Returns:
      the ILcdShape at the given index.
    • 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
      Overrides:
      contains2D in class TLcdKML22AbstractGeometry
      Parameters:
      aPoint - the ILcdPoint to test.
      Returns:
      the boolean result of the containment test.
      See Also:
    • 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
      Overrides:
      contains3D in class TLcdKML22AbstractGeometry
      Parameters:
      aPoint - the ILcdPoint to test.
      Returns:
      the boolean result of the containment test.
      See Also:
    • contains3D

      public boolean contains3D(double aX, double aY, double aZ)
      Description copied from interface: ILcdShape
      Checks whether this ILcdShape contains the given point in the 3D space.
      Specified by:
      contains3D in interface ILcdShape
      Overrides:
      contains3D in class TLcdKML22AbstractGeometry
      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.
    • contains2D

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

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

      public TLcdKML22MultiGeometry clone()
      Description copied from class: TLcdDataObject
      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 TLcdDataObject 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 TLcdKML22AbstractGeometry
      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
    • 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
      Overrides:
      getBounds in class TLcdKML22AbstractGeometry
      Returns:
      the ILcdBounds by which the geometry of this ILcdBounded object is bounded.
    • getAbstractGeometryGroup

      public List<TLcdKML22AbstractGeometry> getAbstractGeometryGroup()
      Returns the value of the property that maps to the AbstractGeometryGroup element.
      Returns:
      the value of the ABSTRACT_GEOMETRY_GROUP_PROPERTY property.