Class TLcdISO19115GeographicBoundingBox
java.lang.Object
com.luciad.datamodel.TLcdDataObject
com.luciad.format.metadata.model.util.TLcdISO19118Object
com.luciad.format.metadata.model.extent.TLcdISO19115GeographicExtent
com.luciad.format.metadata.model.extent.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 Summary
Modifier and TypeFieldDescriptionstatic final TLcdDataProperty
Data property that maps to theeastBoundLongitude
element.static final TLcdDataProperty
Data property that maps to thenorthBoundLatitude
element.static final TLcdDataProperty
Data property that maps to thesouthBoundLatitude
element.static final TLcdDataProperty
Data property that maps to thewestBoundLongitude
element.Fields inherited from class com.luciad.format.metadata.model.extent.TLcdISO19115GeographicExtent
EXTENT_TYPE_CODE_PROPERTY
Fields inherited from class com.luciad.format.metadata.model.util.TLcdISO19118Object
ID_PROPERTY, UUID_PROPERTY
-
Constructor Summary
ConstructorDescriptionTLcdISO19115GeographicBoundingBox
(double aMinLon, double aMaxLon, double aMinLat, double aMaxLat) Creates a new box using the given longitude and latitude values.Creates a new box initialized to match the values of the specified bounds. -
Method Summary
Modifier and TypeMethodDescriptionReturns a deep clone of this object.Returns a copy of thisILcdBounds
object that is also anILcd2DEditableBounds
.Returns a copy of thisILcdBounds
object that is also anILcd3DEditableBounds
.boolean
contains2D
(double aX, double aY) Checks whether thisILcdShape
contains the given point in the 2D space.boolean
contains2D
(double aX, double aY, double aWidth, double aHeight) Checks whether thisILcdBounds
object contains the given rectangle in the 2D space.boolean
contains2D
(ILcdBounds aBounds) Checks whether thisILcdBounds
object contains the givenILcdBounds
object in the 2D space.boolean
contains2D
(ILcdPoint aPoint) Checks whether thisILcdShape
contains the givenILcdPoint
in the 2D space.boolean
contains3D
(double aX, double aY, double aZ) Checks whether thisILcdShape
contains the given point in the 3D space.boolean
contains3D
(double aX, double aY, double aZ, double aWidth, double aHeight, double aDepth) Checks whether thisILcdBounds
object contains the given box in the 3D space.boolean
contains3D
(ILcdBounds aBounds) Checks whether thisILcdBounds
object contains the givenILcdBounds
object in the 3D space.boolean
contains3D
(ILcdPoint aPoint) Checks whether thisILcdShape
contains the givenILcdPoint
in the 3D space.Returns theILcdBounds
by which the geometry of thisILcdBounded
object is bounded.double
getDepth()
Returns the depth of the bounding box.Returns the role value contained in the value of theEAST_BOUND_LONGITUDE_PROPERTY
property.Returns the focus point of thisILcdShape
.double
Returns the height of the bounding box.Returns the location of the bounding box (smallest x and y coordinates).Returns the role value contained in the value of theNORTH_BOUND_LATITUDE_PROPERTY
property.Returns the role value contained in the value of theSOUTH_BOUND_LATITUDE_PROPERTY
property.Returns the role value contained in the value of theWEST_BOUND_LONGITUDE_PROPERTY
property.double
getWidth()
Returns the width of the bounding box.boolean
interacts2D
(double aX, double aY, double aWidth, double aHeight) Checks whether thisILcdBounds
object interacts with the given rectangle in the 2D space.boolean
interacts2D
(ILcdBounds aBounds) Checks whether thisILcdBounds
object interacts with the givenILcdBounds
object in the 2D space.boolean
interacts3D
(double aX, double aY, double aZ, double aWidth, double aHeight, double aDepth) Checks whether thisILcdBounds
object interacts with the given box in the 3D space.boolean
interacts3D
(ILcdBounds aBounds) Checks whether thisILcdBounds
object interacts with the givenILcdBounds
object.boolean
Indicates whether this bounds object is valid.void
setEastBoundLongitude
(Double aValue) Sets the value of the property that maps to theeastBoundLongitude
element.void
setNorthBoundLatitude
(Double aValue) Sets the value of the property that maps to thenorthBoundLatitude
element.void
setSouthBoundLatitude
(Double aValue) Sets the value of the property that maps to thesouthBoundLatitude
element.void
setWestBoundLongitude
(Double aValue) Sets the value of the property that maps to thewestBoundLongitude
element.Methods inherited from class com.luciad.format.metadata.model.extent.TLcdISO19115GeographicExtent
getExtentTypeCode, setExtentTypeCode
Methods inherited from class com.luciad.format.metadata.model.util.TLcdISO19118Object
getId, getUuid, setId, setUuid
Methods inherited from class com.luciad.datamodel.TLcdDataObject
clone, getDataType, getValue, getValue, hasValue, hasValue, setValue, setValue, toString
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface com.luciad.shape.ILcdBounds
getCenter, getMaxX, getMaxY, getMaxZ, getMinX, getMinY, getMinZ
Methods inherited from interface com.luciad.util.ILcdCloneable
clone
-
Field Details
-
WEST_BOUND_LONGITUDE_PROPERTY
Data property that maps to thewestBoundLongitude
element. The possible values for this property are instances ofTLcdISO19115Optional<Double>
. -
EAST_BOUND_LONGITUDE_PROPERTY
Data property that maps to theeastBoundLongitude
element. The possible values for this property are instances ofTLcdISO19115Optional<Double>
. -
SOUTH_BOUND_LATITUDE_PROPERTY
Data property that maps to thesouthBoundLatitude
element. The possible values for this property are instances ofTLcdISO19115Optional<Double>
. -
NORTH_BOUND_LATITUDE_PROPERTY
Data property that maps to thenorthBoundLatitude
element. The possible values for this property are instances ofTLcdISO19115Optional<Double>
.
-
-
Constructor Details
-
TLcdISO19115GeographicBoundingBox
public TLcdISO19115GeographicBoundingBox() -
TLcdISO19115GeographicBoundingBox
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 longitudeaMaxLon
- the east bound longitudeaMinLat
- the south bound longitudeaMaxLat
- the north bound longitude- Since:
- 2017.1
-
TLcdISO19115GeographicBoundingBox
-
-
Method Details
-
getBounds
Description copied from interface:ILcdBounded
Returns theILcdBounds
by which the geometry of thisILcdBounded
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 ofTLcdLonLatBounds
orTLcdXYBounds
.- Specified by:
getBounds
in interfaceILcdBounded
- Returns:
- the
ILcdBounds
by which the geometry of thisILcdBounded
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 interfaceILcdBounds
- Returns:
true
if this object describes actual bounds,false
if not
- If
-
cloneAs2DEditableBounds
Description copied from interface:ILcdBounds
Returns a copy of thisILcdBounds
object that is also anILcd2DEditableBounds
. This makes sure that the first two dimensions of the copy are writable, even if the originalILcdBounds
object may be read-only.- Specified by:
cloneAs2DEditableBounds
in interfaceILcdBounds
- Returns:
- a copy of this
ILcdBounds
object that is also anILcd2DEditableBounds
. This makes sure that the first two dimensions of the copy are writable, even if the originalILcdBounds
object may be read-only. - See Also:
-
cloneAs3DEditableBounds
Description copied from interface:ILcdBounds
Returns a copy of thisILcdBounds
object that is also anILcd3DEditableBounds
. This makes sure that all three dimensions of the copy are writable, even if the originalILcdBounds
object may be read-only.- Specified by:
cloneAs3DEditableBounds
in interfaceILcdBounds
- Returns:
- a copy of this
ILcdBounds
object that is also anILcd3DEditableBounds
. This makes sure that all three dimensions of the copy are writable, even if the originalILcdBounds
object may be read-only. - See Also:
-
contains2D
Description copied from interface:ILcdBounds
Checks whether thisILcdBounds
object contains the givenILcdBounds
object in the 2D space. Only the first two dimensions of theILcdBounds
objects are considered.If either bounds is
undefined
, the result is false.- Specified by:
contains2D
in interfaceILcdBounds
- Parameters:
aBounds
- theILcdBounds
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 thisILcdBounds
object contains the given rectangle in the 2D space. Only the first two dimensions of theILcdBounds
object are considered.If this bounds is
undefined
, the result is false.- Specified by:
contains2D
in interfaceILcdBounds
- 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
Description copied from interface:ILcdBounds
Checks whether thisILcdBounds
object contains the givenILcdBounds
object in the 3D space.If either bounds is
undefined
, the result is false.- Specified by:
contains3D
in interfaceILcdBounds
- Parameters:
aBounds
- theILcdBounds
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 thisILcdBounds
object contains the given box in the 3D space.If this bounds is
undefined
, the result is false.- Specified by:
contains3D
in interfaceILcdBounds
- 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 interfaceILcdBounds
- 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 interfaceILcdBounds
- Returns:
- the height of the bounding box.
-
getLocation
Description copied from interface:ILcdBounds
Returns the location of the bounding box (smallest x and y coordinates).- Specified by:
getLocation
in interfaceILcdBounds
- 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 interfaceILcdBounds
- Returns:
- the width of the bounding box.
-
interacts2D
Description copied from interface:ILcdBounds
Checks whether thisILcdBounds
object interacts with the givenILcdBounds
object in the 2D space. Only the first two dimensions of theILcdBounds
objects are considered.If either bounds is
undefined
, the result is false.- Specified by:
interacts2D
in interfaceILcdBounds
- Parameters:
aBounds
- theILcdBounds
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 thisILcdBounds
object interacts with the given rectangle in the 2D space. Only the first two dimensions of theILcdBounds
object are considered.If this bounds is
undefined
, the result is false.- Specified by:
interacts2D
in interfaceILcdBounds
- 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 thisILcdBounds
object touches or overlaps to any extent with the given rectangle,false
otherwise.
-
interacts3D
Description copied from interface:ILcdBounds
Checks whether thisILcdBounds
object interacts with the givenILcdBounds
object.If either bounds is
undefined
, the result is false.- Specified by:
interacts3D
in interfaceILcdBounds
- Parameters:
aBounds
- theILcdBounds
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 thisILcdBounds
object interacts with the given box in the 3D space.If this bounds is
undefined
, the result is false.- Specified by:
interacts3D
in interfaceILcdBounds
- 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 thisILcdBounds
object touches or overlaps to any extent with the given box,false
otherwise.
-
contains2D
Description copied from interface:ILcdShape
Checks whether thisILcdShape
contains the givenILcdPoint
in the 2D space. Only the first two dimensions of theILcdShape
and theILcdPoint
are considered.- Specified by:
contains2D
in interfaceILcdShape
- Parameters:
aPoint
- theILcdPoint
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 thisILcdShape
contains the given point in the 2D space. Only the first two dimensions of theILcdShape
are considered.- Specified by:
contains2D
in interfaceILcdShape
- Parameters:
aX
- the x coordinate of the point.aY
- the y coordinate of the point.- Returns:
- the boolean result of the containment test.
-
contains3D
Description copied from interface:ILcdShape
Checks whether thisILcdShape
contains the givenILcdPoint
in the 3D space.- Specified by:
contains3D
in interfaceILcdShape
- Parameters:
aPoint
- theILcdPoint
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 thisILcdShape
contains the given point in the 3D space.- Specified by:
contains3D
in interfaceILcdShape
- 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
Description copied from interface:ILcdShape
Returns the focus point of thisILcdShape
.- Specified by:
getFocusPoint
in interfaceILcdShape
- Returns:
- the focus point of this
ILcdShape
.
-
clone
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 thevalue.getDataType().newInstance()
method, and then cloning its properties one by one. - If the value implements
ILcdDeepCloneable
orILcdCloneable
then this interface is used to clone the value. - Otherwise, the property value is copied by reference.
- If the property value is an
- Specified by:
clone
in interfaceILcdDeepCloneable
- Overrides:
clone
in classTLcdDataObject
- 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
Returns the role value contained in the value of theWEST_BOUND_LONGITUDE_PROPERTY
property. Returnsnull
if the value of theWEST_BOUND_LONGITUDE_PROPERTY
property isnull
.- Returns:
- the role value of the
WEST_BOUND_LONGITUDE_PROPERTY
property. - See Also:
-
setWestBoundLongitude
Sets the value of the property that maps to thewestBoundLongitude
element. to a new instance of the association classTLcdISO19115Optional
initialized with the given role value. In case the given role value isnull
, theWEST_BOUND_LONGITUDE_PROPERTY
property is set tonull
.- Parameters:
aValue
- the role value to set for theWEST_BOUND_LONGITUDE_PROPERTY
property.
-
getEastBoundLongitude
Returns the role value contained in the value of theEAST_BOUND_LONGITUDE_PROPERTY
property. Returnsnull
if the value of theEAST_BOUND_LONGITUDE_PROPERTY
property isnull
.- Returns:
- the role value of the
EAST_BOUND_LONGITUDE_PROPERTY
property. - See Also:
-
setEastBoundLongitude
Sets the value of the property that maps to theeastBoundLongitude
element. to a new instance of the association classTLcdISO19115Optional
initialized with the given role value. In case the given role value isnull
, theEAST_BOUND_LONGITUDE_PROPERTY
property is set tonull
.- Parameters:
aValue
- the role value to set for theEAST_BOUND_LONGITUDE_PROPERTY
property.
-
getSouthBoundLatitude
Returns the role value contained in the value of theSOUTH_BOUND_LATITUDE_PROPERTY
property. Returnsnull
if the value of theSOUTH_BOUND_LATITUDE_PROPERTY
property isnull
.- Returns:
- the role value of the
SOUTH_BOUND_LATITUDE_PROPERTY
property. - See Also:
-
setSouthBoundLatitude
Sets the value of the property that maps to thesouthBoundLatitude
element. to a new instance of the association classTLcdISO19115Optional
initialized with the given role value. In case the given role value isnull
, theSOUTH_BOUND_LATITUDE_PROPERTY
property is set tonull
.- Parameters:
aValue
- the role value to set for theSOUTH_BOUND_LATITUDE_PROPERTY
property.
-
getNorthBoundLatitude
Returns the role value contained in the value of theNORTH_BOUND_LATITUDE_PROPERTY
property. Returnsnull
if the value of theNORTH_BOUND_LATITUDE_PROPERTY
property isnull
.- Returns:
- the role value of the
NORTH_BOUND_LATITUDE_PROPERTY
property. - See Also:
-
setNorthBoundLatitude
Sets the value of the property that maps to thenorthBoundLatitude
element. to a new instance of the association classTLcdISO19115Optional
initialized with the given role value. In case the given role value isnull
, theNORTH_BOUND_LATITUDE_PROPERTY
property is set tonull
.- Parameters:
aValue
- the role value to set for theNORTH_BOUND_LATITUDE_PROPERTY
property.
-