Class TLcdGML31MultiSurface

All Implemented Interfaces:
ILcdDataObject, ILcdBounded, ILcdEditableShapeList, ILcdShape, ILcdShapeList, ILcdCloneable, ILcdDeepCloneable, ILcdFeatured, ILcdInvalidateable, ILcdSelfDescribedFeatured, Serializable, Cloneable

public class TLcdGML31MultiSurface extends TLcdGML31AbstractGeometricAggregate implements ILcdEditableShapeList
A gml:MultiSurface is defined by one or more gml:AbstractSurfaces. The members of the geometric aggregate may be specified either using the "standard" property (gml:surfaceMember) or the array property (gml:surfaceMembers). It is also valid to use both the "standard" and the array properties in the same collection.
Since:
10.0
See Also:
  • Field Details

    • SURFACE_MEMBER_PROPERTY

      public static final TLcdDataProperty SURFACE_MEMBER_PROPERTY
      Data property that maps to the surfaceMember element. The possible values for this property are instances of List<TLcdGML31SurfaceProperty>.
    • SURFACE_MEMBERS_PROPERTY

      public static final TLcdDataProperty SURFACE_MEMBERS_PROPERTY
      Data property that maps to the surfaceMembers element. The possible values for this property are instances of TLcdGML31SurfaceArrayProperty.
    • GID_PROPERTY

      public static final TLcdDataProperty GID_PROPERTY
      Property that maps on the gid attribute. Acceptable values for this property are instances of java.lang.String.
  • Constructor Details

  • 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
      Overrides:
      addShape in class TLcdGML31AbstractGeometricAggregate
      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
      Overrides:
      addShape in class TLcdGML31AbstractGeometricAggregate
      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
      Overrides:
      addShapes in class TLcdGML31AbstractGeometricAggregate
      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
      Overrides:
      clearShapes in class TLcdGML31AbstractGeometricAggregate
    • 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
      Overrides:
      removeShape in class TLcdGML31AbstractGeometricAggregate
      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
      Overrides:
      removeShape in class TLcdGML31AbstractGeometricAggregate
      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
      Overrides:
      removeShapes in class TLcdGML31AbstractGeometricAggregate
      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
      Overrides:
      setShape in class TLcdGML31AbstractGeometricAggregate
      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
      Overrides:
      setShapes in class TLcdGML31AbstractGeometricAggregate
      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
      Overrides:
      shapeChanged in class TLcdGML31AbstractGeometricAggregate
      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
      Overrides:
      shapeChanged in class TLcdGML31AbstractGeometricAggregate
      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
      Overrides:
      shapesChanged in class TLcdGML31AbstractGeometricAggregate
    • getShapeCount

      public int getShapeCount()
      Description copied from interface: ILcdShapeList
      Returns the number of ILcdShape objects in the list.
      Specified by:
      getShapeCount in interface ILcdShapeList
      Overrides:
      getShapeCount in class TLcdGML31AbstractGeometricAggregate
      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
      Overrides:
      getShape in class TLcdGML31AbstractGeometricAggregate
      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 TLcdGML31AbstractGeometry
      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 TLcdGML31AbstractGeometry
      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 TLcdGML31AbstractGeometry
      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 TLcdGML31AbstractGeometry
      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 TLcdGML31AbstractGeometry
      Returns:
      the focus point of this ILcdShape.
    • clone

      public TLcdGML31MultiSurface 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 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
    • 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 TLcdGML31AbstractGeometry
      Returns:
      the ILcdBounds by which the geometry of this ILcdBounded object is bounded.
    • getSurfaceMember

      public List<TLcdGML31AbstractSurface> getSurfaceMember()
      Returns the value of the property that maps to the surfaceMember element.

      This property element either references a surface via the XLink-attributes or contains the surface element. A surface element is any element which is substitutable for "_Surface".

      Returns:
      the value of the SURFACE_MEMBER_PROPERTY property.
      See Also:
    • getSurfaceMembers

      public List<TLcdGML31AbstractSurface> getSurfaceMembers()
      Returns the role value contained in the value of the SURFACE_MEMBERS_PROPERTY property. Returns null if the value of the SURFACE_MEMBERS_PROPERTY property is null.

      This property element contains a list of surfaces. The order of the elements is significant and shall be preserved when processing the array.

      Returns:
      the role value of the SURFACE_MEMBERS_PROPERTY property.
      See Also:
    • setSurfaceMembers

      public void setSurfaceMembers(List<TLcdGML31AbstractSurface> aValue)
      Sets the value of the property that maps to the surfaceMembers element. to a new instance of the association class TLcdGML31SurfaceArrayProperty initialized with the given role value. In case the given role value is null, the SURFACE_MEMBERS_PROPERTY property is set to null.

      This property element contains a list of surfaces. The order of the elements is significant and shall be preserved when processing the array.

      Parameters:
      aValue - the role value to set for the SURFACE_MEMBERS_PROPERTY property.
    • getGid

      public String getGid()
      Gets the value of the GID_PROPERTY property.

      This attribute is included for backward compatibility with GML 2 and is deprecated with GML 3. This identifer is superceded by "gml:id" inherited from AbstractGMLType. The attribute "gid" should not be used anymore and may be deleted in future versions of GML without further notice.

      Returns:
      the value of the GID_PROPERTY property.
    • setGid

      public void setGid(String aValue)
      Sets the value of the GID_PROPERTY property.

      This attribute is included for backward compatibility with GML 2 and is deprecated with GML 3. This identifer is superceded by "gml:id" inherited from AbstractGMLType. The attribute "gid" should not be used anymore and may be deleted in future versions of GML without further notice.

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