Class TLcdGML32Surface
- All Implemented Interfaces:
ILcdDataObject
,ILcdBounded
,ILcdEditableShapeList
,ILcdShape
,ILcdShapeList
,ILcdCloneable
,ILcdDeepCloneable
,ILcdInvalidateable
,Serializable
,Cloneable
- Direct Known Subclasses:
TLcdAIXM51Surface
,TLcdGML32Tin
- Since:
- 10.0
- See Also:
-
Field Summary
Modifier and TypeFieldDescriptionstatic final TLcdDataProperty
Data property that maps to thepatches
element.static final QName
A polyhedral surface is a surface composed of polygon patches connected along their common boundary curves.static final QName
A Surface is a 2-dimensional primitive and is composed of one or more surface patches as specified in ISO 19107:2003, 6.3.17.1.static final QName
A triangulated surface is a polyhedral surface that is composed only of triangles.static final TLcdDataProperty
Data property that holds the type of this instance.Fields inherited from class com.luciad.format.gml32.model.TLcdGML32AbstractGeometry
SRS_PROPERTY
Fields inherited from class com.luciad.format.gml32.model.TLcdGML32AbstractGML
DESCRIPTION_PROPERTY, DESCRIPTION_REFERENCE_PROPERTY, ID_PROPERTY, IDENTIFIER_PROPERTY, META_DATA_PROPERTY_PROPERTY, NAME_PROPERTY
-
Constructor Summary
ConstructorDescriptionTLcdGML32Surface
(TLcdDataType aType) TLcdGML32Surface
(TLcdDataType aDataType, ILcdModelReference aSrs) Constructs a surface and initializes its model reference (srs).Constructs a surface and initializes its model reference (srs). -
Method Summary
Modifier and TypeMethodDescriptionvoid
Inserts the specified shape at the specified position in thisILcdShapeList
.void
Appends the specified shape to the end of thisILcdShapeList
.void
Appends the specified array of shapes to the end of thisILcdShapeList
.void
Removes all of the shapes from thisILcdShapeList
.clone()
Returns a deep clone of this object.Returns a deep clone of this object.boolean
contains2D
(double aX, double aY) Checks whether thisILcdShape
contains the given point 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
(ILcdPoint aPoint) Checks whether thisILcdShape
contains the givenILcdPoint
in the 3D space.Returns theILcdBounds
by which the geometry of thisILcdBounded
object is bounded.Returns the focus point of thisILcdShape
.Returns the role value contained in the value of thePATCHES_PROPERTY
property.getShape
(int aIndex) Returns theILcdShape
at the given index.int
Returns the number ofILcdShape
objects in the list.getType()
Returns the value of the property that holds the type of this instance.void
Invalidates all cached values of this object.removeShape
(int aIndex) Removes the shape at the specified position in thisILcdShapeList
.boolean
removeShape
(ILcdShape aShape) Removes the first occurrence of the specified shape in thisILcdShapeList
.void
removeShapes
(ILcdShape[] aShapes) Removes all shapes from thisILcdShapeList
that are contained in the specified array of shapes.void
setPatches
(List<TLcdGML32AbstractSurfacePatch> aValue) Sets the value of the property that maps to thepatches
element.Replaces the shape at the specified position in thisILcdShapeList
with the specified shape.void
Replace the list of shapes contained in thisILcdShapeList
with the specified array of shapes.void
Sets the value of the property that holds the type of this instance.void
setValue
(TLcdDataProperty aProperty, Object aValue) Sets the value of the given property for this data object.void
shapeChanged
(int aIndex) Notifies thisILcdShapeList
that the shape at the specified position has changed.void
shapeChanged
(ILcdShape aShape) Notifies thisILcdShapeList
that the specified shape has changed.void
Notifies thisILcdShapeList
that some (possibly all) of its shapes have changed.Methods inherited from class com.luciad.format.gml32.model.TLcdGML32AbstractGeometry
getSrs, setSrs, toString
Methods inherited from class com.luciad.format.gml32.model.TLcdGML32AbstractGML
getDescription, getDescriptionReference, getId, getIdentifier, getMetaDataProperty, getName, setDescription, setDescriptionReference, setId, setIdentifier
Methods inherited from class com.luciad.datamodel.TLcdDataObject
getDataType, getValue, getValue, hasValue, hasValue, setValue
-
Field Details
-
SURFACE
A Surface is a 2-dimensional primitive and is composed of one or more surface patches as specified in ISO 19107:2003, 6.3.17.1. The surface patches are connected to one another. patches encapsulates the patches of the surface. -
POLYHEDRAL_SURFACE
A polyhedral surface is a surface composed of polygon patches connected along their common boundary curves. This differs from the surface type only in the restriction on the types of surface patches acceptable. polygonPatches encapsulates the polygon patches of the polyhedral surface. -
TRIANGULATED_SURFACE
A triangulated surface is a polyhedral surface that is composed only of triangles. There is no restriction on how the triangulation is derived. trianglePatches encapsulates the triangles of the triangulated surface. -
PATCHES_PROPERTY
Data property that maps to thepatches
element. The possible values for this property are instances ofTLcdGML32SurfacePatchArrayProperty
. -
TYPE_PROPERTY
Data property that holds the type of this instance. The possible values for this property are the publicQName
constants defined in this class.
-
-
Constructor Details
-
TLcdGML32Surface
public TLcdGML32Surface() -
TLcdGML32Surface
-
TLcdGML32Surface
Constructs a surface and initializes its model reference (srs).- Parameters:
aSrs
- the model reference for this object- See Also:
-
TLcdGML32Surface
Constructs a surface and initializes its model reference (srs).- Parameters:
aDataType
- the data type for this objectaSrs
- the model reference for this object- See Also:
-
-
Method Details
-
clone
Description copied from class:TLcdDataObject
Returns a deep clone of this object. This method delegates toTLcdDataObject.clone(Map)
.- Specified by:
clone
in interfaceILcdCloneable
- Overrides:
clone
in classTLcdDataObject
- Returns:
- a deep clone of this object
- See Also:
-
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
-
addShape
Description copied from interface:ILcdEditableShapeList
Inserts the specified shape at the specified position in thisILcdShapeList
.- Specified by:
addShape
in interfaceILcdEditableShapeList
- Parameters:
aIndex
- the index at which the shape is to be inserted.aShape
- the shape to be inserted.
-
addShape
Description copied from interface:ILcdEditableShapeList
Appends the specified shape to the end of thisILcdShapeList
.- Specified by:
addShape
in interfaceILcdEditableShapeList
- Parameters:
aShape
- the shape to be appended to thisILcdShapeList
.
-
addShapes
Description copied from interface:ILcdEditableShapeList
Appends the specified array of shapes to the end of thisILcdShapeList
.- Specified by:
addShapes
in interfaceILcdEditableShapeList
- Parameters:
aShapes
- the array of shapes to be appended to thisILcdShapeList
.
-
clearShapes
public void clearShapes()Description copied from interface:ILcdEditableShapeList
Removes all of the shapes from thisILcdShapeList
.- Specified by:
clearShapes
in interfaceILcdEditableShapeList
-
removeShape
Description copied from interface:ILcdEditableShapeList
Removes the shape at the specified position in thisILcdShapeList
. Shifts any subsequent shapes to the left. Returns the shape that was removed from thisILcdShapeList
.- Specified by:
removeShape
in interfaceILcdEditableShapeList
- Parameters:
aIndex
- the index of the shape to removed.- Returns:
- the shape previously at the specified position.
-
removeShape
Description copied from interface:ILcdEditableShapeList
Removes the first occurrence of the specified shape in thisILcdShapeList
. If thisILcdShapeList
does not contain the shape, it is unchanged.- Specified by:
removeShape
in interfaceILcdEditableShapeList
- Parameters:
aShape
- the shape to be removed, if present.- Returns:
true
if thisILcdShapeList
contained the specified element.
-
removeShapes
Description copied from interface:ILcdEditableShapeList
Removes all shapes from thisILcdShapeList
that are contained in the specified array of shapes.- Specified by:
removeShapes
in interfaceILcdEditableShapeList
- Parameters:
aShapes
- the array of shapes to be removed from thisILcdShapeList
.
-
setShape
Description copied from interface:ILcdEditableShapeList
Replaces the shape at the specified position in thisILcdShapeList
with the specified shape.- Specified by:
setShape
in interfaceILcdEditableShapeList
- 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
Description copied from interface:ILcdEditableShapeList
Replace the list of shapes contained in thisILcdShapeList
with the specified array of shapes.- Specified by:
setShapes
in interfaceILcdEditableShapeList
- Parameters:
aShapes
- the array of shapes to be stored in thisILcdShapeList
.
-
shapeChanged
public void shapeChanged(int aIndex) Description copied from interface:ILcdEditableShapeList
Notifies thisILcdShapeList
that the shape at the specified position has changed.- Specified by:
shapeChanged
in interfaceILcdEditableShapeList
- Parameters:
aIndex
- the index of the shape that has changed.
-
shapeChanged
Description copied from interface:ILcdEditableShapeList
Notifies thisILcdShapeList
that the specified shape has changed.- Specified by:
shapeChanged
in interfaceILcdEditableShapeList
- Parameters:
aShape
- the shape that has changed.
-
shapesChanged
public void shapesChanged()Description copied from interface:ILcdEditableShapeList
Notifies thisILcdShapeList
that some (possibly all) of its shapes have changed.- Specified by:
shapesChanged
in interfaceILcdEditableShapeList
-
getShapeCount
public int getShapeCount()Description copied from interface:ILcdShapeList
Returns the number ofILcdShape
objects in the list.- Specified by:
getShapeCount
in interfaceILcdShapeList
- Returns:
- the number of
ILcdShape
objects in the list.
-
getShape
Description copied from interface:ILcdShapeList
Returns theILcdShape
at the given index.- Specified by:
getShape
in interfaceILcdShapeList
- Parameters:
aIndex
- a valid index in the list ofILcdShape
objects.- Returns:
- the
ILcdShape
at the given index.
-
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
- Overrides:
contains2D
in classTLcdGML32AbstractGeometry
- Parameters:
aPoint
- theILcdPoint
to test.- Returns:
- the boolean result of the containment test.
- See Also:
-
contains3D
Description copied from interface:ILcdShape
Checks whether thisILcdShape
contains the givenILcdPoint
in the 3D space.- Specified by:
contains3D
in interfaceILcdShape
- Overrides:
contains3D
in classTLcdGML32AbstractGeometry
- 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
- Overrides:
contains3D
in classTLcdGML32AbstractGeometry
- 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 thisILcdShape
contains the given point in the 2D space. Only the first two dimensions of theILcdShape
are considered.- Specified by:
contains2D
in interfaceILcdShape
- Overrides:
contains2D
in classTLcdGML32AbstractGeometry
- Parameters:
aX
- the x coordinate of the point.aY
- the y 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
- Overrides:
getFocusPoint
in classTLcdGML32AbstractGeometry
- Returns:
- the focus point of this
ILcdShape
.
-
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
- Overrides:
getBounds
in classTLcdGML32AbstractGeometry
- Returns:
- the
ILcdBounds
by which the geometry of thisILcdBounded
object is bounded.
-
setValue
Description copied from interface: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 anIllegalArgumentException
.- Specified by:
setValue
in interfaceILcdDataObject
- Overrides:
setValue
in classTLcdDataObject
- Parameters:
aProperty
- the property for which the value is to be setaValue
- the value to set- See Also:
-
invalidateObject
public void invalidateObject()Description copied from interface:ILcdInvalidateable
Invalidates all cached values of this object. Call this method whenever one or more of this object's compositing values has been changed, to notify this object it needs to recompute its cached values.- Specified by:
invalidateObject
in interfaceILcdInvalidateable
-
getPatches
Returns the role value contained in the value of thePATCHES_PROPERTY
property. Returnsnull
if the value of thePATCHES_PROPERTY
property isnull
.The patches property element contains the sequence of surface patches. The order of the elements is significant and shall be preserved when processing the array.
- Returns:
- the role value of the
PATCHES_PROPERTY
property. - See Also:
-
setPatches
Sets the value of the property that maps to thepatches
element. to a new instance of the association classTLcdGML32SurfacePatchArrayProperty
initialized with the given role value. In case the given role value isnull
, thePATCHES_PROPERTY
property is set tonull
.The patches property element contains the sequence of surface patches. The order of the elements is significant and shall be preserved when processing the array.
- Parameters:
aValue
- the role value to set for thePATCHES_PROPERTY
property.
-
getType
Returns the value of the property that holds the type of this instance.The possible values for this property are the public
QName
constants defined in this class.- Returns:
- the value of the
TYPE_PROPERTY
property.
-
setType
Sets the value of the property that holds the type of this instance.The possible values for this property are the public
QName
constants defined in this class.- Parameters:
aValue
- the value to set for theTYPE_PROPERTY
property.
-