public class TLcdGML32Envelope extends TLcdDataObject implements ILcd3DEditableBounds
Domain class for the GML envelope.
Envelope defines an extent using a pair of positions defining opposite corners in arbitrary dimensions. The first direct position is the "lower corner" (a coordinate position consisting of all the minimal ordinates for each dimension for all points within the envelope), the second one the "upper corner" (a coordinate position consisting of all the maximal ordinates for each dimension for all points within the envelope).
The use of the properties "coordinates" and "pos" has been deprecated. The explicitly named properties "lowerCorner" and "upperCorner" shall be used instead.
Modifier and Type | Field and Description |
---|---|
static TLcdDataProperty |
COORDINATES_PROPERTY
Property that maps on the
coordinates element. |
static TLcdDataProperty |
LOWER_CORNER_PROPERTY
Property that maps on the
lowerCorner element. |
static TLcdDataProperty |
POS_PROPERTY
Property that maps on the
pos element. |
static TLcdDataProperty |
SRS_PROPERTY
Property that maps on the
SRSReferenceGroup attributes. |
static TLcdDataProperty |
UPPER_CORNER_PROPERTY
Property that maps on the
upperCorner element. |
Constructor and Description |
---|
TLcdGML32Envelope() |
TLcdGML32Envelope(ILcdModelReference aSrs)
Constructs an envelope and initializes its
model reference (srs).
|
TLcdGML32Envelope(TLcdDataType aType) |
TLcdGML32Envelope(TLcdDataType aDataType,
ILcdModelReference aSrs)
Constructs an envelope and initializes its
model reference (srs).
|
Modifier and Type | Method and Description |
---|---|
TLcdGML32Envelope |
clone()
Returns a deep clone of this object.
|
TLcdDataObject |
clone(Map aObjectDictionary)
Returns a deep clone of this object.
|
ILcd2DEditableBounds |
cloneAs2DEditableBounds()
Returns a copy of this
ILcdBounds object that is also an ILcd2DEditableBounds . |
ILcd3DEditableBounds |
cloneAs3DEditableBounds()
Returns a copy of this
ILcdBounds object that is also an ILcd3DEditableBounds . |
boolean |
contains2D(double aX,
double aY)
Checks whether this
ILcdShape contains the given point in
the 2D space. |
boolean |
contains2D(double aX,
double aY,
double aWidth,
double aHeight)
Checks whether this
ILcdBounds object contains the given rectangle in
the 2D space. |
boolean |
contains2D(ILcdBounds aBounds)
Checks whether this
ILcdBounds object contains the given ILcdBounds
object in the 2D space. |
boolean |
contains2D(ILcdPoint aPoint)
Checks whether this
ILcdShape contains the given ILcdPoint in the 2D space. |
boolean |
contains3D(double aX,
double aY,
double aZ)
Checks whether this
ILcdShape contains the given point in
the 3D space. |
boolean |
contains3D(double aX,
double aY,
double aZ,
double aWidth,
double aHeight,
double aDepth)
Checks whether this
ILcdBounds object contains the given box in the 3D
space. |
boolean |
contains3D(ILcdBounds aBounds)
Checks whether this
ILcdBounds object contains the given ILcdBounds
object in the 3D space. |
boolean |
contains3D(ILcdPoint aPoint)
Checks whether this
ILcdShape contains the given ILcdPoint in the 3D space. |
ILcdBounds |
getBounds()
Returns the
ILcdBounds by which the geometry of this ILcdBounded object
is bounded. |
TLcdGML32Coordinates |
getCoordinates()
Gets the value of the
COORDINATES_PROPERTY property. |
double |
getDepth()
Returns the depth of the bounding box.
|
ILcdPoint |
getFocusPoint()
Returns the focus point of this
ILcdShape . |
double |
getHeight()
Returns the height of the bounding box.
|
ILcdPoint |
getLocation()
Returns the location of the bounding box (smallest x and y coordinates).
|
TLcdGML32DirectPosition |
getLowerCorner()
Gets the value of the
LOWER_CORNER_PROPERTY property. |
List<TLcdGML32DirectPosition> |
getPos()
Gets the value of the
POS_PROPERTY property. |
ILcdModelReference |
getSrs()
Gets the value of the
SRS_PROPERTY property. |
TLcdGML32DirectPosition |
getUpperCorner()
Gets the value of the
UPPER_CORNER_PROPERTY property. |
double |
getWidth()
Returns the width of the bounding box.
|
boolean |
interacts2D(double aX,
double aY,
double aWidth,
double aHeight)
Checks whether this
ILcdBounds object interacts with the given rectangle in
the 2D space. |
boolean |
interacts2D(ILcdBounds aBounds)
Checks whether this
ILcdBounds object interacts with the given ILcdBounds
object in the 2D space. |
boolean |
interacts3D(double aX,
double aY,
double aZ,
double aWidth,
double aHeight,
double aDepth)
Checks whether this
ILcdBounds object interacts with the given box in
the 3D space. |
boolean |
interacts3D(ILcdBounds aBounds)
Checks whether this
ILcdBounds object interacts with the given ILcdBounds
object. |
boolean |
isDefined()
Indicates whether this bounds object is valid.
|
void |
move2D(double aX,
double aY)
Moves this
ILcd2DEditableShape to the given point in the 2D space. |
void |
move2D(ILcdPoint aPoint)
Moves this
ILcd2DEditableShape to the given point in the 2D space. |
void |
move3D(double aX,
double aY,
double aZ)
Moves this
ILcd3DEditableShape to the given point in the 3D space. |
void |
move3D(ILcdPoint aPoint)
Moves this
ILcd3DEditableShape to the given point in the 3D space. |
void |
setCoordinates(TLcdGML32Coordinates aValue)
Sets the value of the
COORDINATES_PROPERTY property. |
void |
setDepth(double aDepth)
Sets the depth of the bounds (the extent along the z-axis).
|
void |
setHeight(double aHeight)
Sets the height of the bounds (the extent along the y-axis).
|
void |
setLowerCorner(TLcdGML32DirectPosition aValue)
Sets the value of the
LOWER_CORNER_PROPERTY property. |
void |
setSrs(ILcdModelReference aValue)
Sets the value of the
SRS_PROPERTY property. |
void |
setTo2DIntersection(double aX,
double aY,
double aWidth,
double aHeight)
Calculates the 2D intersection of this
ILcd2DEditableBounds object and a given rectangle. |
void |
setTo2DIntersection(ILcdBounds aBounds)
Calculates the 2D intersection of this
ILcd2DEditableBounds and a given ILcdBounds . |
void |
setTo2DUnion(double aX,
double aY,
double aWidth,
double aHeight)
Calculates the 2D union of this
ILcd2DEditableBounds object and a given rectangle. |
void |
setTo2DUnion(ILcdBounds aBounds)
Calculates the 2D union of this
ILcd2DEditableBounds and a given ILcdBounds . |
void |
setTo3DIntersection(double aX,
double aY,
double aZ,
double aWidth,
double aHeight,
double aDepth)
Calculates the 3D intersection of this
ILcd3DEditableBounds and a given box. |
void |
setTo3DIntersection(ILcdBounds aBounds)
Calculates the 3D intersection of this
ILcd3DEditableBounds and a given ILcdBounds . |
void |
setTo3DUnion(double aX,
double aY,
double aZ,
double aWidth,
double aHeight,
double aDepth)
Calculates the 3D union of this
ILcd3DEditableBounds and a given box. |
void |
setTo3DUnion(ILcdBounds aBounds)
Calculates the 3D union of this
ILcd3DEditableBounds and a given ILcdBounds . |
void |
setToIncludePoint2D(double aX,
double aY)
Calculates the 2D extension of this
ILcd2DEditableBounds object that contains a given point. |
void |
setToIncludePoint2D(ILcdPoint aPoint)
Calculates the 2D extension of this
ILcd2DEditableBounds object that contains a given ILcdPoint . |
void |
setToIncludePoint3D(double aX,
double aY,
double aZ)
Calculates the 3D extension of this
ILcd3DEditableBounds that contains a given ILcdPoint . |
void |
setToIncludePoint3D(ILcdPoint aPoint)
Calculates the 3D extension of this
ILcd3DEditableBounds that contains a given ILcdPoint . |
void |
setUpperCorner(TLcdGML32DirectPosition aValue)
Sets the value of the
UPPER_CORNER_PROPERTY property. |
void |
setValue(TLcdDataProperty aProperty,
Object aValue)
Sets the value of the given property for this data object.
|
void |
setWidth(double aWidth)
Sets the width of the bounds (the extent along the x-axis).
|
String |
toString() |
void |
translate2D(double aDeltaX,
double aDeltaY)
Translates this
ILcd2DEditableShape from its current position over the given translation
vector in the 2D space. |
void |
translate3D(double aDeltaX,
double aDeltaY,
double aDeltaZ)
Translates this
ILcd3DEditableShape from its current position over the given translation
vector in the 3D space. |
getDataType, getValue, getValue, hasValue, hasValue, setValue
public static final TLcdDataProperty SRS_PROPERTY
SRSReferenceGroup
attributes. Acceptable values for this property are instances of ILcdModelReference
.public static final TLcdDataProperty LOWER_CORNER_PROPERTY
lowerCorner
element. Acceptable values for this property are instances of com.luciad.format.gml32.model.TLcdGML32DirectPosition
.public static final TLcdDataProperty UPPER_CORNER_PROPERTY
upperCorner
element. Acceptable values for this property are instances of com.luciad.format.gml32.model.TLcdGML32DirectPosition
.public static final TLcdDataProperty POS_PROPERTY
pos
element. Acceptable values for this property are instances of java.util.List<com.luciad.format.gml32.model.TLcdGML32DirectPosition>
.public static final TLcdDataProperty COORDINATES_PROPERTY
coordinates
element. Acceptable values for this property are instances of com.luciad.format.gml32.model.TLcdGML32Coordinates
.public TLcdGML32Envelope()
public TLcdGML32Envelope(TLcdDataType aType)
public TLcdGML32Envelope(ILcdModelReference aSrs)
aSrs
- the model reference for this objectsetSrs(ILcdModelReference)
public TLcdGML32Envelope(TLcdDataType aDataType, ILcdModelReference aSrs)
aDataType
- the data type for this objectaSrs
- the model reference for this objectsetSrs(ILcdModelReference)
public ILcdModelReference getSrs()
SRS_PROPERTY
property.SRS_PROPERTY
property.public void setSrs(ILcdModelReference aValue)
SRS_PROPERTY
property.aValue
- the value to set for the SRS_PROPERTY
property.public TLcdGML32DirectPosition getLowerCorner()
LOWER_CORNER_PROPERTY
property.LOWER_CORNER_PROPERTY
property.public void setLowerCorner(TLcdGML32DirectPosition aValue)
LOWER_CORNER_PROPERTY
property.aValue
- the value to set for the LOWER_CORNER_PROPERTY
property.public TLcdGML32DirectPosition getUpperCorner()
UPPER_CORNER_PROPERTY
property.UPPER_CORNER_PROPERTY
property.public void setUpperCorner(TLcdGML32DirectPosition aValue)
UPPER_CORNER_PROPERTY
property.aValue
- the value to set for the UPPER_CORNER_PROPERTY
property.public List<TLcdGML32DirectPosition> getPos()
POS_PROPERTY
property.POS_PROPERTY
property.public TLcdGML32Coordinates getCoordinates()
COORDINATES_PROPERTY
property.COORDINATES_PROPERTY
property.public void setCoordinates(TLcdGML32Coordinates aValue)
COORDINATES_PROPERTY
property.aValue
- the value to set for the COORDINATES_PROPERTY
property.public void setValue(TLcdDataProperty aProperty, Object aValue)
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 thedata 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
.setValue
in interface ILcdDataObject
setValue
in class TLcdDataObject
aProperty
- the property for which the value is to be setaValue
- the value to setTLcdDataType.getProperty(String)
public boolean isDefined()
ILcdBounds
true
, this bounds describes a valid geographic region.false
, this bounds does not represent a geographic region, and its
location, width, height and depth should not be used.isDefined
in interface ILcdBounds
true
if this object describes actual bounds, false
if notpublic void setWidth(double aWidth)
ILcd2DEditableBounds
If this bounds was undefined
, it becomes defined.
setWidth
in interface ILcd2DEditableBounds
aWidth
- the new width.public void setHeight(double aHeight)
ILcd2DEditableBounds
If this bounds was undefined
, it becomes defined.
setHeight
in interface ILcd2DEditableBounds
aHeight
- the new height.public void setDepth(double aDepth)
ILcd3DEditableBounds
If this bounds is undefined
, it becomes defined.
setDepth
in interface ILcd3DEditableBounds
aDepth
- the new depth.public double getWidth()
ILcdBounds
getWidth
in interface ILcdBounds
public double getHeight()
ILcdBounds
getHeight
in interface ILcdBounds
public double getDepth()
ILcdBounds
getDepth
in interface ILcdBounds
public ILcdPoint getLocation()
ILcdBounds
getLocation
in interface ILcdBounds
public TLcdGML32Envelope clone()
TLcdDataObject
TLcdDataObject.clone(Map)
.clone
in interface ILcdCloneable
clone
in class TLcdDataObject
Object.clone()
public TLcdDataObject clone(Map aObjectDictionary)
TLcdDataObject
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.ILcdDeepCloneable
or
ILcdCloneable
then this interface is used to clone the value.clone
in interface ILcdDeepCloneable
clone
in class TLcdDataObject
aObjectDictionary
- the Object dictionary that keeps track of the objects for which a clone has already been made,
and their corresponding clone Object.public void move2D(ILcdPoint aPoint)
ILcd2DEditableBounds
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.
If this bounds was undefined
, it becomes defined after the move.
move2D
in interface ILcd2DEditableBounds
move2D
in interface ILcd2DEditableShape
aPoint
- the ILcdPoint
to move to.ILcd2DEditableShape.move2D(double, double)
public void move2D(double aX, double aY)
ILcd2DEditableBounds
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.
If this bounds was undefined
, it becomes defined after the move.
move2D
in interface ILcd2DEditableBounds
move2D
in interface ILcd2DEditableShape
aX
- the x coordinate of the point.aY
- the y coordinate of the point.public void translate2D(double aDeltaX, double aDeltaY)
ILcd2DEditableBounds
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.
If this bounds was undefined
, it becomes defined after the translation.
translate2D
in interface ILcd2DEditableBounds
translate2D
in interface ILcd2DEditableShape
aDeltaX
- the x coordinate of the translation vector.aDeltaY
- the y coordinate of the translation vector.public void move3D(ILcdPoint aPoint)
ILcd3DEditableBounds
ILcd3DEditableShape
to the given point in the 3D space. The focus point
is used as the handle by which the shape is moved.
If this bounds was undefined
, it becomes defined after the move.
move3D
in interface ILcd3DEditableBounds
move3D
in interface ILcd3DEditableShape
aPoint
- the ILcdPoint
to move to.ILcd3DEditableShape.move3D(double, double, double)
public void move3D(double aX, double aY, double aZ)
ILcd3DEditableBounds
ILcd3DEditableShape
to the given point in the 3D space. The focus point
is used as the handle by which the shape is moved.
If this bounds was undefined
, it becomes defined after the move.
move3D
in interface ILcd3DEditableBounds
move3D
in interface ILcd3DEditableShape
aX
- the x coordinate of the point.aY
- the y coordinate of the point.aZ
- the z coordinate of the point.public void translate3D(double aDeltaX, double aDeltaY, double aDeltaZ)
ILcd3DEditableBounds
ILcd3DEditableShape
from its current position over the given translation
vector in the 3D space.
If this bounds is undefined
, it becomes defined.
translate3D
in interface ILcd3DEditableBounds
translate3D
in interface ILcd3DEditableShape
aDeltaX
- the x coordinate of the translation vector.aDeltaY
- the y coordinate of the translation vector.aDeltaZ
- the z coordinate of the translation vector.public void setTo3DIntersection(ILcdBounds aBounds)
ILcd3DEditableBounds
ILcd3DEditableBounds
and a given ILcdBounds
.
The result contains at least all the points that are contained in both
ILcdBounds
objects. This ILcd3DEditableBounds
object is updated with the result.
If this bounds is undefined
, nothing changes. If the argument bounds is undefined
,
this bounds becomes undefined as well.
setTo3DIntersection
in interface ILcd3DEditableBounds
aBounds
- the other ILcdBounds
operand for the intersection.ILcd3DEditableBounds.setTo3DIntersection(double, double, double, double, double, double)
public void setTo3DIntersection(double aX, double aY, double aZ, double aWidth, double aHeight, double aDepth)
ILcd3DEditableBounds
ILcd3DEditableBounds
and a given box.
The result contains at least all the points that are contained both in the
ILcdBounds
object and in the box. This ILcd3DEditableBounds
object is updated with
the result.
If this bounds is undefined
, nothing changes.
setTo3DIntersection
in interface ILcd3DEditableBounds
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.public void setTo3DUnion(ILcdBounds aBounds)
ILcd3DEditableBounds
ILcd3DEditableBounds
and a given ILcdBounds
.
The result contains at least all the points that are contained in either
or both of the ILcdBounds
objects (and typically more). This ILcd3DEditableBounds
object is updated with the result.
If this bounds is undefined
, it is set to the argument bounds. If the argument bounds is undefined, nothing happens.
setTo3DUnion
in interface ILcd3DEditableBounds
aBounds
- the other ILcdBounds
operand for the union.ILcd3DEditableBounds.setTo3DUnion(double, double, double, double, double, double)
public void setTo3DUnion(double aX, double aY, double aZ, double aWidth, double aHeight, double aDepth)
ILcd3DEditableBounds
ILcd3DEditableBounds
and a given box.
The result contains at least all the points that are contained in
the ILcdBounds
objects and in the box (and typically more). This ILcd3DEditableBounds
object is updated with the result.
If this bounds is undefined
, it is set to the arguments.
setTo3DUnion
in interface ILcd3DEditableBounds
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.public void setToIncludePoint3D(ILcdPoint aPoint)
ILcd3DEditableBounds
ILcd3DEditableBounds
that contains a given ILcdPoint
.
The result contains at least the given point and all the points that are
contained in this ILcd3DEditableBounds
(and typically more). This ILcd3DEditableBounds
object is updated with the result.
If this bounds is undefined
, it is set to the point.
setToIncludePoint3D
in interface ILcd3DEditableBounds
aPoint
- the ILcdPoint
operand for the union.ILcd3DEditableBounds.setToIncludePoint3D(double, double, double)
public void setToIncludePoint3D(double aX, double aY, double aZ)
ILcd3DEditableBounds
ILcd3DEditableBounds
that contains a given ILcdPoint
.
The result contains at least the given point and all the points that are
contained in this ILcd3DEditableBounds
(and typically more). This ILcd3DEditableBounds
object is updated with the result.
If this bounds is undefined
, it is set to the point.
setToIncludePoint3D
in interface ILcd3DEditableBounds
aX
- the x coordinate of the point.aY
- the y coordinate of the point.aZ
- the z coordinate of the point.public void setTo2DIntersection(ILcdBounds aBounds)
ILcd2DEditableBounds
ILcd2DEditableBounds
and a given ILcdBounds
.
The result contains at least all the points that are contained in both
ILcdBounds
objects. Only the first two dimensions of
the ILcdBounds
objects are considered. This ILcd2DEditableBounds
object is updated
with the result. Its third dimension is left unchanged.
If this bounds is undefined
, nothing changes. If the argument bounds is undefined
,
this bounds becomes undefined as well.
setTo2DIntersection
in interface ILcd2DEditableBounds
aBounds
- the other ILcdBounds
operand for the intersection.ILcd2DEditableBounds.setTo2DIntersection(double, double, double, double)
public void setTo2DIntersection(double aX, double aY, double aWidth, double aHeight)
ILcd2DEditableBounds
ILcd2DEditableBounds
object and a given rectangle.
The result contains at least all the points that are contained both in this
ILcdBounds
objects and in the rectangle. Only the first
two dimensions of this ILcdBounds
object are considered. It is updated
with the result. Its third dimension is left unchanged.
If this bounds is undefined
, nothing changes.
setTo2DIntersection
in interface ILcd2DEditableBounds
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.public void setTo2DUnion(ILcdBounds aBounds)
ILcd2DEditableBounds
ILcd2DEditableBounds
and a given ILcdBounds
.
The result contains at least all the points that are contained in either
of the ILcdBounds
objects (and typically more). Only the first two dimensions of
the ILcdBounds
objects are considered. This ILcd2DEditableBounds
object is
updated with the result. Its third dimension is left unchanged.
If this bounds is undefined
, it is set to the argument bounds. If the argument bounds is undefined, nothing happens.
setTo2DUnion
in interface ILcd2DEditableBounds
aBounds
- the other ILcdBounds
operand for the union.ILcd2DEditableBounds.setTo2DUnion(double, double, double, double)
public void setTo2DUnion(double aX, double aY, double aWidth, double aHeight)
ILcd2DEditableBounds
ILcd2DEditableBounds
object and a given rectangle.
The result contains at least all the points that are contained in
the ILcdBounds
object and in the rectangle (and typically more). Only the first two dimensions of
this ILcdBounds
object are considered. It is
updated with the result. Its third dimension is left unchanged.
If this bounds is undefined
, it is set to the arguments.
setTo2DUnion
in interface ILcd2DEditableBounds
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.public void setToIncludePoint2D(ILcdPoint aPoint)
ILcd2DEditableBounds
ILcd2DEditableBounds
object that contains a given ILcdPoint
.
The result contains at least the given point and all the points that are
contained in this ILcd2DEditableBounds
(and typically more). Only the first two
dimensions of this ILcdBounds
object and the ILcdPoint
are considered. This
ILcdBounds
object is updated with the result. Its third dimension is left unchanged.
If this bounds is undefined
, it is set to the point.
setToIncludePoint2D
in interface ILcd2DEditableBounds
aPoint
- the point that should be inside (or at the edge) after the extension of the bounds.ILcd2DEditableBounds.setToIncludePoint2D(double, double)
public void setToIncludePoint2D(double aX, double aY)
ILcd2DEditableBounds
ILcd2DEditableBounds
object that contains a given point.
The result contains at least the given point and all the points that are
contained in this ILcd2DEditableBounds
(and typically more). Only the first two
dimensions of this ILcdBounds
object are considered. It is
updated with the result. Its third dimension is left unchanged.
If this bounds is undefined
, it is set to the point.
setToIncludePoint2D
in interface ILcd2DEditableBounds
aX
- the x coordinate of the point.aY
- the y coordinate of the point.public ILcd2DEditableBounds cloneAs2DEditableBounds()
ILcdBounds
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.cloneAs2DEditableBounds
in interface ILcdBounds
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.ILcd2DEditableBounds
public ILcd3DEditableBounds cloneAs3DEditableBounds()
ILcdBounds
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.cloneAs3DEditableBounds
in interface ILcdBounds
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.ILcd3DEditableBounds
public boolean contains2D(ILcdBounds aBounds)
ILcdBounds
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.
contains2D
in interface ILcdBounds
aBounds
- the ILcdBounds
to compare with.ILcdBounds.contains2D(double, double, double, double)
public boolean contains2D(double aX, double aY, double aWidth, double aHeight)
ILcdBounds
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.
contains2D
in interface ILcdBounds
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.public boolean contains3D(ILcdBounds aBounds)
ILcdBounds
ILcdBounds
object contains the given ILcdBounds
object in the 3D space.
If either bounds is undefined
, the result is false.
contains3D
in interface ILcdBounds
aBounds
- the ILcdBounds
to compare with.ILcdBounds.contains3D(double, double, double, double, double, double)
public boolean contains3D(double aX, double aY, double aZ, double aWidth, double aHeight, double aDepth)
ILcdBounds
ILcdBounds
object contains the given box in the 3D
space.
If this bounds is undefined
, the result is false.
contains3D
in interface ILcdBounds
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.ILcdBounds.contains2D(double, double, double, double)
public boolean interacts2D(ILcdBounds aBounds)
ILcdBounds
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.
interacts2D
in interface ILcdBounds
aBounds
- the ILcdBounds
to compare with.ILcdBounds.interacts2D(double, double, double, double)
public boolean interacts2D(double aX, double aY, double aWidth, double aHeight)
ILcdBounds
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.
interacts2D
in interface ILcdBounds
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.true
if this ILcdBounds
object touches or overlaps to
any extent with the given rectangle, false
otherwise.public boolean interacts3D(ILcdBounds aBounds)
ILcdBounds
ILcdBounds
object interacts with the given ILcdBounds
object.
If either bounds is undefined
, the result is false.
interacts3D
in interface ILcdBounds
aBounds
- the ILcdBounds
to compare with.ILcdBounds.interacts3D(double, double, double, double, double, double)
public boolean interacts3D(double aX, double aY, double aZ, double aWidth, double aHeight, double aDepth)
ILcdBounds
ILcdBounds
object interacts with the given box in
the 3D space.
If this bounds is undefined
, the result is false.
interacts3D
in interface ILcdBounds
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.true
if this ILcdBounds
object touches or overlaps to
any extent with the given box, false
otherwise.public boolean contains2D(ILcdPoint aPoint)
ILcdShape
ILcdShape
contains the given ILcdPoint
in the 2D space.
Only the first two dimensions of the ILcdShape
and the ILcdPoint
are considered.contains2D
in interface ILcdShape
aPoint
- the ILcdPoint
to test.ILcdShape.contains2D(double, double)
public boolean contains2D(double aX, double aY)
ILcdShape
ILcdShape
contains the given point in
the 2D space. Only the first two dimensions of the ILcdShape
are considered.contains2D
in interface ILcdShape
aX
- the x coordinate of the point.aY
- the y coordinate of the point.public boolean contains3D(ILcdPoint aPoint)
ILcdShape
ILcdShape
contains the given ILcdPoint
in the 3D space.contains3D
in interface ILcdShape
aPoint
- the ILcdPoint
to test.ILcdShape.contains3D(double, double, double)
public boolean contains3D(double aX, double aY, double aZ)
ILcdShape
ILcdShape
contains the given point in
the 3D space.contains3D
in interface ILcdShape
aX
- the x coordinate of the point.aY
- the y coordinate of the point.aZ
- the z coordinate of the point.public ILcdPoint getFocusPoint()
ILcdShape
ILcdShape
.getFocusPoint
in interface ILcdShape
ILcdShape
.public ILcdBounds getBounds()
ILcdBounded
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
.
getBounds
in interface ILcdBounded
ILcdBounds
by which the geometry of this ILcdBounded
object
is bounded.public String toString()
toString
in class TLcdDataObject