public class TLcdKML22MultiGeometry extends TLcdKML22AbstractGeometry implements ILcdEditableShapeList
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.
Modifier and Type | Field and Description |
---|---|
static TLcdDataProperty |
ABSTRACT_GEOMETRY_GROUP_PROPERTY
Data property that maps to the
AbstractGeometryGroup element. |
static TLcdDataProperty |
ABSTRACT_GEOMETRY_OBJECT_EXTENSION_GROUP_PROPERTY
Data property that maps to the
AbstractGeometryObjectExtensionGroup element. |
static TLcdDataProperty |
ABSTRACT_GEOMETRY_SIMPLE_EXTENSION_GROUP_PROPERTY
Data property that maps to the
AbstractGeometrySimpleExtensionGroup element. |
static TLcdDataProperty |
MULTI_GEOMETRY_OBJECT_EXTENSION_GROUP_PROPERTY
Data property that maps to the
MultiGeometryObjectExtensionGroup element. |
static TLcdDataProperty |
MULTI_GEOMETRY_SIMPLE_EXTENSION_GROUP_PROPERTY
Data property that maps to the
MultiGeometrySimpleExtensionGroup element. |
ID_PROPERTY, OBJECT_SIMPLE_EXTENSION_GROUP_PROPERTY, TARGET_ID_PROPERTY
Constructor and Description |
---|
TLcdKML22MultiGeometry(TLcdDataType aType)
Creates a new
TLcdKML22MultiGeometry with a custom TLcdDataType . |
Modifier and Type | Method and Description |
---|---|
void |
addShape(ILcdShape aShape)
Appends the specified shape to the end of this
ILcdShapeList . |
void |
addShape(int aIndex,
ILcdShape aShape)
Inserts the specified shape at the specified position in this
ILcdShapeList . |
void |
addShapes(ILcdShape[] aShapes)
Appends the specified array of shapes to the end of this
ILcdShapeList . |
void |
clearShapes()
Removes all of the shapes from this
ILcdShapeList . |
TLcdKML22MultiGeometry |
clone()
Returns a deep clone of this object.
|
TLcdDataObject |
clone(Map aObjectDictionary)
Returns a deep clone of this object.
|
boolean |
contains2D(double aX,
double aY)
Checks whether this
ILcdShape contains the given point 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(ILcdPoint aPoint)
Checks whether this
ILcdShape contains the given ILcdPoint in the 3D space. |
List<TLcdKML22AbstractGeometry> |
getAbstractGeometryGroup()
Returns the value of the property that maps to the
AbstractGeometryGroup element. |
ILcdBounds |
getBounds()
Returns the
ILcdBounds by which the geometry of this ILcdBounded object
is bounded. |
ILcdPoint |
getFocusPoint()
Returns the focus point of this
ILcdShape . |
ILcdShape |
getShape(int aIndex)
Returns the
ILcdShape at the given index. |
int |
getShapeCount()
Returns the number of
ILcdShape objects in the list. |
boolean |
removeShape(ILcdShape aShape)
Removes the first occurrence of the specified shape in this
ILcdShapeList . |
ILcdShape |
removeShape(int aIndex)
Removes the shape at the specified position in this
ILcdShapeList . |
void |
removeShapes(ILcdShape[] aShapes)
Removes all shapes from this
ILcdShapeList that are contained in the specified
array of shapes. |
ILcdShape |
setShape(int aIndex,
ILcdShape aShape)
Replaces the shape at the specified position in this
ILcdShapeList with the
specified shape. |
void |
setShapes(ILcdShape[] aShapes)
Replace the list of shapes contained in this
ILcdShapeList with the specified
array of shapes. |
void |
shapeChanged(ILcdShape aShape)
Notifies this
ILcdShapeList that the specified shape has changed. |
void |
shapeChanged(int aIndex)
Notifies this
ILcdShapeList that the shape at the specified position has changed. |
void |
shapesChanged()
Notifies this
ILcdShapeList that some (possibly all) of its shapes have changed. |
clearCache, getCachedObject, insertIntoCache, move2D, move2D, move3D, move3D, removeCachedObject, translate2D, translate3D
getId, getTargetId, setId, setTargetId
getDataType, getValue, getValue, hasValue, hasValue, setValue, setValue, toString
public static final TLcdDataProperty ABSTRACT_GEOMETRY_GROUP_PROPERTY
AbstractGeometryGroup
element.
The possible values for this property are instances of List<TLcdKML22AbstractGeometry>
.public static final TLcdDataProperty MULTI_GEOMETRY_SIMPLE_EXTENSION_GROUP_PROPERTY
MultiGeometrySimpleExtensionGroup
element.
The possible values for this property are instances of List<String>
.public static final TLcdDataProperty MULTI_GEOMETRY_OBJECT_EXTENSION_GROUP_PROPERTY
MultiGeometryObjectExtensionGroup
element.
The possible values for this property are instances of List<TLcdKML22AbstractObject>
.public static final TLcdDataProperty ABSTRACT_GEOMETRY_SIMPLE_EXTENSION_GROUP_PROPERTY
AbstractGeometrySimpleExtensionGroup
element.
The possible values for this property are instances of List<String>
.public static final TLcdDataProperty ABSTRACT_GEOMETRY_OBJECT_EXTENSION_GROUP_PROPERTY
AbstractGeometryObjectExtensionGroup
element.
The possible values for this property are instances of List<TLcdKML22AbstractObject>
.public TLcdKML22MultiGeometry(TLcdDataType aType)
TLcdKML22MultiGeometry
with a custom TLcdDataType
.aType
- a custom TLcdDataType
public void addShape(int aIndex, ILcdShape aShape)
ILcdEditableShapeList
ILcdShapeList
.addShape
in interface ILcdEditableShapeList
aIndex
- the index at which the shape is to be inserted.aShape
- the shape to be inserted.public void addShape(ILcdShape aShape)
ILcdEditableShapeList
ILcdShapeList
.addShape
in interface ILcdEditableShapeList
aShape
- the shape to be appended to this ILcdShapeList
.public void addShapes(ILcdShape[] aShapes)
ILcdEditableShapeList
ILcdShapeList
.addShapes
in interface ILcdEditableShapeList
aShapes
- the array of shapes to be appended to this ILcdShapeList
.public void clearShapes()
ILcdEditableShapeList
ILcdShapeList
.clearShapes
in interface ILcdEditableShapeList
public ILcdShape removeShape(int aIndex)
ILcdEditableShapeList
ILcdShapeList
. Shifts any
subsequent shapes to the left. Returns the shape that was removed from this
ILcdShapeList
.removeShape
in interface ILcdEditableShapeList
aIndex
- the index of the shape to removed.public boolean removeShape(ILcdShape aShape)
ILcdEditableShapeList
ILcdShapeList
. If this
ILcdShapeList
does not contain the shape, it is unchanged.removeShape
in interface ILcdEditableShapeList
aShape
- the shape to be removed, if present.true
if this ILcdShapeList
contained the specified element.public void removeShapes(ILcdShape[] aShapes)
ILcdEditableShapeList
ILcdShapeList
that are contained in the specified
array of shapes.removeShapes
in interface ILcdEditableShapeList
aShapes
- the array of shapes to be removed from this ILcdShapeList
.public ILcdShape setShape(int aIndex, ILcdShape aShape)
ILcdEditableShapeList
ILcdShapeList
with the
specified shape.setShape
in interface ILcdEditableShapeList
aIndex
- index of shape to replace.aShape
- the shape to be stored at the specified position.public void setShapes(ILcdShape[] aShapes)
ILcdEditableShapeList
ILcdShapeList
with the specified
array of shapes.setShapes
in interface ILcdEditableShapeList
aShapes
- the array of shapes to be stored in this ILcdShapeList
.public void shapeChanged(int aIndex)
ILcdEditableShapeList
ILcdShapeList
that the shape at the specified position has changed.shapeChanged
in interface ILcdEditableShapeList
aIndex
- the index of the shape that has changed.public void shapeChanged(ILcdShape aShape)
ILcdEditableShapeList
ILcdShapeList
that the specified shape has changed.shapeChanged
in interface ILcdEditableShapeList
aShape
- the shape that has changed.public void shapesChanged()
ILcdEditableShapeList
ILcdShapeList
that some (possibly all) of its shapes have changed.shapesChanged
in interface ILcdEditableShapeList
public int getShapeCount()
ILcdShapeList
ILcdShape
objects in the list.getShapeCount
in interface ILcdShapeList
ILcdShape
objects in the list.public ILcdShape getShape(int aIndex)
ILcdShapeList
ILcdShape
at the given index.getShape
in interface ILcdShapeList
aIndex
- a valid index in the list of ILcdShape
objects.ILcdShape
at the given index.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
contains2D
in class TLcdKML22AbstractGeometry
aPoint
- the ILcdPoint
to test.ILcdShape.contains2D(double, double)
public boolean contains3D(ILcdPoint aPoint)
ILcdShape
ILcdShape
contains the given ILcdPoint
in the 3D space.contains3D
in interface ILcdShape
contains3D
in class TLcdKML22AbstractGeometry
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
contains3D
in class TLcdKML22AbstractGeometry
aX
- the x coordinate of the point.aY
- the y coordinate of the point.aZ
- the z coordinate of the point.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
contains2D
in class TLcdKML22AbstractGeometry
aX
- the x coordinate of the point.aY
- the y coordinate of the point.public ILcdPoint getFocusPoint()
ILcdShape
ILcdShape
.getFocusPoint
in interface ILcdShape
getFocusPoint
in class TLcdKML22AbstractGeometry
ILcdShape
.public TLcdKML22MultiGeometry 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 TLcdKML22AbstractGeometry
aObjectDictionary
- the Object dictionary that keeps track of the objects for which a clone has already been made,
and their corresponding clone Object.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
getBounds
in class TLcdKML22AbstractGeometry
ILcdBounds
by which the geometry of this ILcdBounded
object
is bounded.public List<TLcdKML22AbstractGeometry> getAbstractGeometryGroup()
AbstractGeometryGroup
element.ABSTRACT_GEOMETRY_GROUP_PROPERTY
property.