Class TLcdISO19115GeographicBoundingBox

All Implemented Interfaces:
ILcdDataObject, ILcdBounded, ILcdBounds, ILcdShape, ILcdCloneable, ILcdDeepCloneable, Serializable, Cloneable

public class TLcdISO19115GeographicBoundingBox extends TLcdISO19115GeographicExtent implements ILcdBounds
Geographic position of the dataset. This is only an approximate so specifying the co-ordinate reference system is unnecessary.
Since:
10.0
See Also:
  • Field Details

    • WEST_BOUND_LONGITUDE_PROPERTY

      public static final TLcdDataProperty WEST_BOUND_LONGITUDE_PROPERTY
      Data property that maps to the westBoundLongitude element. The possible values for this property are instances of TLcdISO19115Optional<Double>.
    • EAST_BOUND_LONGITUDE_PROPERTY

      public static final TLcdDataProperty EAST_BOUND_LONGITUDE_PROPERTY
      Data property that maps to the eastBoundLongitude element. The possible values for this property are instances of TLcdISO19115Optional<Double>.
    • SOUTH_BOUND_LATITUDE_PROPERTY

      public static final TLcdDataProperty SOUTH_BOUND_LATITUDE_PROPERTY
      Data property that maps to the southBoundLatitude element. The possible values for this property are instances of TLcdISO19115Optional<Double>.
    • NORTH_BOUND_LATITUDE_PROPERTY

      public static final TLcdDataProperty NORTH_BOUND_LATITUDE_PROPERTY
      Data property that maps to the northBoundLatitude element. The possible values for this property are instances of TLcdISO19115Optional<Double>.
  • Constructor Details

    • TLcdISO19115GeographicBoundingBox

      public TLcdISO19115GeographicBoundingBox()
    • TLcdISO19115GeographicBoundingBox

      public TLcdISO19115GeographicBoundingBox(ILcdBounds aBounds)
      Creates a new box initialized to match the values of the specified bounds.
      Parameters:
      aBounds - the bounds to use for this bounding box
      Since:
      2017.1
    • TLcdISO19115GeographicBoundingBox

      public TLcdISO19115GeographicBoundingBox(double aMinLon, double aMaxLon, double aMinLat, double aMaxLat)
      Creates a new box using the given longitude and latitude values.
      Parameters:
      aMinLon - the west bound longitude
      aMaxLon - the east bound longitude
      aMinLat - the south bound longitude
      aMaxLat - the north bound longitude
      Since:
      2017.1
    • TLcdISO19115GeographicBoundingBox

      public TLcdISO19115GeographicBoundingBox(TLcdDataType aType)
  • Method Details

    • 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.
    • isDefined

      public boolean isDefined()
      Description copied from interface: ILcdBounds
      Indicates whether this bounds object is valid.
      • If true, this bounds describes a valid geographic region.
      • If false, this bounds does not represent a geographic region, and its location, width, height and depth should not be used.
      Specified by:
      isDefined in interface ILcdBounds
      Returns:
      true if this object describes actual bounds, false if not
    • cloneAs2DEditableBounds

      public ILcd2DEditableBounds cloneAs2DEditableBounds()
      Description copied from interface: ILcdBounds
      Returns a copy of this ILcdBounds object that is also an ILcd2DEditableBounds. This makes sure that the first two dimensions of the copy are writable, even if the original ILcdBounds object may be read-only.
      Specified by:
      cloneAs2DEditableBounds in interface ILcdBounds
      Returns:
      a copy of this ILcdBounds object that is also an ILcd2DEditableBounds. This makes sure that the first two dimensions of the copy are writable, even if the original ILcdBounds object may be read-only.
      See Also:
    • cloneAs3DEditableBounds

      public ILcd3DEditableBounds cloneAs3DEditableBounds()
      Description copied from interface: ILcdBounds
      Returns a copy of this ILcdBounds object that is also an ILcd3DEditableBounds. This makes sure that all three dimensions of the copy are writable, even if the original ILcdBounds object may be read-only.
      Specified by:
      cloneAs3DEditableBounds in interface ILcdBounds
      Returns:
      a copy of this ILcdBounds object that is also an ILcd3DEditableBounds. This makes sure that all three dimensions of the copy are writable, even if the original ILcdBounds object may be read-only.
      See Also:
    • contains2D

      public boolean contains2D(ILcdBounds aBounds)
      Description copied from interface: ILcdBounds
      Checks whether this ILcdBounds object contains the given ILcdBounds object in the 2D space. Only the first two dimensions of the ILcdBounds objects are considered.

      If either bounds is undefined, the result is false.

      Specified by:
      contains2D in interface ILcdBounds
      Parameters:
      aBounds - the ILcdBounds to compare with.
      Returns:
      the boolean result of the containment test.
      See Also:
    • contains2D

      public boolean contains2D(double aX, double aY, double aWidth, double aHeight)
      Description copied from interface: ILcdBounds
      Checks whether this ILcdBounds object contains the given rectangle in the 2D space. Only the first two dimensions of the ILcdBounds object are considered.

      If this bounds is undefined, the result is false.

      Specified by:
      contains2D in interface ILcdBounds
      Parameters:
      aX - the x coordinate of the rectangle.
      aY - the y coordinate of the rectangle.
      aWidth - the width of the rectangle.
      aHeight - the height of the rectangle.
      Returns:
      the boolean result of the containment test.
    • contains3D

      public boolean contains3D(ILcdBounds aBounds)
      Description copied from interface: ILcdBounds
      Checks whether this ILcdBounds object contains the given ILcdBounds object in the 3D space.

      If either bounds is undefined, the result is false.

      Specified by:
      contains3D in interface ILcdBounds
      Parameters:
      aBounds - the ILcdBounds to compare with.
      Returns:
      the boolean result of the containment test.
      See Also:
    • contains3D

      public boolean contains3D(double aX, double aY, double aZ, double aWidth, double aHeight, double aDepth)
      Description copied from interface: ILcdBounds
      Checks whether this ILcdBounds object contains the given box in the 3D space.

      If this bounds is undefined, the result is false.

      Specified by:
      contains3D in interface ILcdBounds
      Parameters:
      aX - the x coordinate of the point.
      aY - the y coordinate of the point.
      aZ - the z coordinate of the point.
      aWidth - the width of the box.
      aHeight - the height of the box.
      aDepth - the depth of the box.
      Returns:
      the boolean result of the containment test.
      See Also:
    • getDepth

      public double getDepth()
      Description copied from interface: ILcdBounds
      Returns the depth of the bounding box. The depth has to be larger than or equal to 0.
      Specified by:
      getDepth in interface ILcdBounds
      Returns:
      the depth of the bounding box.
    • getHeight

      public double getHeight()
      Description copied from interface: ILcdBounds
      Returns the height of the bounding box. The height has to be larger than or equal to 0.
      Specified by:
      getHeight in interface ILcdBounds
      Returns:
      the height of the bounding box.
    • getLocation

      public ILcdPoint getLocation()
      Description copied from interface: ILcdBounds
      Returns the location of the bounding box (smallest x and y coordinates).
      Specified by:
      getLocation in interface ILcdBounds
      Returns:
      the location of the bounding box.
    • getWidth

      public double getWidth()
      Description copied from interface: ILcdBounds
      Returns the width of the bounding box. The width has to be larger than or equal to 0.
      Specified by:
      getWidth in interface ILcdBounds
      Returns:
      the width of the bounding box.
    • interacts2D

      public boolean interacts2D(ILcdBounds aBounds)
      Description copied from interface: ILcdBounds
      Checks whether this ILcdBounds object interacts with the given ILcdBounds object in the 2D space. Only the first two dimensions of the ILcdBounds objects are considered.

      If either bounds is undefined, the result is false.

      Specified by:
      interacts2D in interface ILcdBounds
      Parameters:
      aBounds - the ILcdBounds to compare with.
      Returns:
      the boolean result of the interaction test.
      See Also:
    • interacts2D

      public boolean interacts2D(double aX, double aY, double aWidth, double aHeight)
      Description copied from interface: ILcdBounds
      Checks whether this ILcdBounds object interacts with the given rectangle in the 2D space. Only the first two dimensions of the ILcdBounds object are considered.

      If this bounds is undefined, the result is false.

      Specified by:
      interacts2D in interface ILcdBounds
      Parameters:
      aX - the x coordinate of the rectangle.
      aY - the y coordinate of the rectangle.
      aWidth - the width of the rectangle.
      aHeight - the height of the rectangle.
      Returns:
      true if this ILcdBounds object touches or overlaps to any extent with the given rectangle, false otherwise.
    • interacts3D

      public boolean interacts3D(ILcdBounds aBounds)
      Description copied from interface: ILcdBounds
      Checks whether this ILcdBounds object interacts with the given ILcdBounds object.

      If either bounds is undefined, the result is false.

      Specified by:
      interacts3D in interface ILcdBounds
      Parameters:
      aBounds - the ILcdBounds to compare with.
      Returns:
      the boolean result of the interaction test.
      See Also:
    • interacts3D

      public boolean interacts3D(double aX, double aY, double aZ, double aWidth, double aHeight, double aDepth)
      Description copied from interface: ILcdBounds
      Checks whether this ILcdBounds object interacts with the given box in the 3D space.

      If this bounds is undefined, the result is false.

      Specified by:
      interacts3D in interface ILcdBounds
      Parameters:
      aX - the x coordinate of the box.
      aY - the y coordinate of the box.
      aZ - the z coordinate of the box.
      aWidth - the width of the box.
      aHeight - the height of the box.
      aDepth - the depth of the box.
      Returns:
      true if this ILcdBounds object touches or overlaps to any extent with the given box, false otherwise.
    • 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 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
      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 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 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
      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.
    • 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.
    • clone

      public TLcdISO19115GeographicBoundingBox 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
    • getWestBoundLongitude

      public Double getWestBoundLongitude()
      Returns the role value contained in the value of the WEST_BOUND_LONGITUDE_PROPERTY property. Returns null if the value of the WEST_BOUND_LONGITUDE_PROPERTY property is null.
      Returns:
      the role value of the WEST_BOUND_LONGITUDE_PROPERTY property.
      See Also:
    • setWestBoundLongitude

      public void setWestBoundLongitude(Double aValue)
      Sets the value of the property that maps to the westBoundLongitude element. to a new instance of the association class TLcdISO19115Optional initialized with the given role value. In case the given role value is null, the WEST_BOUND_LONGITUDE_PROPERTY property is set to null.
      Parameters:
      aValue - the role value to set for the WEST_BOUND_LONGITUDE_PROPERTY property.
    • getEastBoundLongitude

      public Double getEastBoundLongitude()
      Returns the role value contained in the value of the EAST_BOUND_LONGITUDE_PROPERTY property. Returns null if the value of the EAST_BOUND_LONGITUDE_PROPERTY property is null.
      Returns:
      the role value of the EAST_BOUND_LONGITUDE_PROPERTY property.
      See Also:
    • setEastBoundLongitude

      public void setEastBoundLongitude(Double aValue)
      Sets the value of the property that maps to the eastBoundLongitude element. to a new instance of the association class TLcdISO19115Optional initialized with the given role value. In case the given role value is null, the EAST_BOUND_LONGITUDE_PROPERTY property is set to null.
      Parameters:
      aValue - the role value to set for the EAST_BOUND_LONGITUDE_PROPERTY property.
    • getSouthBoundLatitude

      public Double getSouthBoundLatitude()
      Returns the role value contained in the value of the SOUTH_BOUND_LATITUDE_PROPERTY property. Returns null if the value of the SOUTH_BOUND_LATITUDE_PROPERTY property is null.
      Returns:
      the role value of the SOUTH_BOUND_LATITUDE_PROPERTY property.
      See Also:
    • setSouthBoundLatitude

      public void setSouthBoundLatitude(Double aValue)
      Sets the value of the property that maps to the southBoundLatitude element. to a new instance of the association class TLcdISO19115Optional initialized with the given role value. In case the given role value is null, the SOUTH_BOUND_LATITUDE_PROPERTY property is set to null.
      Parameters:
      aValue - the role value to set for the SOUTH_BOUND_LATITUDE_PROPERTY property.
    • getNorthBoundLatitude

      public Double getNorthBoundLatitude()
      Returns the role value contained in the value of the NORTH_BOUND_LATITUDE_PROPERTY property. Returns null if the value of the NORTH_BOUND_LATITUDE_PROPERTY property is null.
      Returns:
      the role value of the NORTH_BOUND_LATITUDE_PROPERTY property.
      See Also:
    • setNorthBoundLatitude

      public void setNorthBoundLatitude(Double aValue)
      Sets the value of the property that maps to the northBoundLatitude element. to a new instance of the association class TLcdISO19115Optional initialized with the given role value. In case the given role value is null, the NORTH_BOUND_LATITUDE_PROPERTY property is set to null.
      Parameters:
      aValue - the role value to set for the NORTH_BOUND_LATITUDE_PROPERTY property.