Class TLcdAIXM51AbstractAIXMFeature
- All Implemented Interfaces:
ILcdDataObject,ILcdBounded,ILcdShape,ILcdShapeList,ILcdCache,ILcdCloneable,ILcdDeepCloneable,ILcdInvalidateable,Serializable,Cloneable
- Direct Known Subclasses:
TLcdAIXM51Feature
A feature consists of a set of timeslices, that each represent the state of the feature during a
certain time extent. The timeslices can be retrieved through the method getTimeSlices().
A feature can either be stand-alone, or contained inside a message, represented by the class
TLcdAIXM51AbstractAIXMMessage.
A feature implements ILcdShapeList and can contain a set of shapes, depending on
the
type
of feature (e.g., some features do not have a geographical position).
To determine the geometry of a feature, the method collectShapes() is invoked by
the AIXM 5.1 Message that contains this feature.
Each timeslice in this feature is an ILcdShapeList, which can potentially
be added to the list of shapes in this feature. The method collectShapes()
runs by default over all timeslices and adds them to the list of shapes in this feature,
if they are accepted by the geometry filter (see getGeometryFilter()) or if no filter is
set.
- Since:
- 10.0
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final TLcdDataPropertyData property that maps to theboundedByelement.static final TLcdDataPropertyData property that maps to thefeatureMetadataelement.static final TLcdDataPropertyData property that maps to thelocationelement.Fields inherited from class com.luciad.format.gml32.model.TLcdGML32DynamicFeature
DATA_SOURCE_PROPERTY, DATA_SOURCE_REFERENCE_PROPERTY, HISTORY_PROPERTY, VALID_TIME_PROPERTYFields 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
ConstructorsConstructorDescriptionConstructs a newTLcdAIXM51AbstractAIXMFeaturefor the given type. -
Method Summary
Modifier and TypeMethodDescriptionvoidClears the cache.Returns a deep clone of this object.Override this method to collect all shapes that needs to be included in the ILcdShapeList implementation of this feature.Returns the value of the property that maps to theboundedByelement.Returns the bounds of this feature.getCachedObject(Object aKey) Looks up and returns the cached Object corresponding to the given key.Returns the value of the property that maps to thefeatureMetadataelement.Returns the focus point of thisILcdShape.Returns the filter that is used to determine the timeslices for which the geometry has to be taken into account.Returns the value of the property that maps to thelocationelement.Returns a list of objects corresponding to AIXM 5.1 types with base typeAbstractAIXMTimeSliceType.voidinsertIntoCache(Object aKey, Object aValue) Inserts a cache Object corresponding to the given key Object.removeCachedObject(Object aKey) Looks up and removes the cached Object corresponding to the given key.voidsetBoundedBy(TLcdGML32BoundingShape aValue) Sets the value of the property that maps to theboundedByelement.voidSets the value of the property that maps to thefeatureMetadataelement.voidsetGeometryFilter(ILcdFilter aGeometryFilter) Sets the filter that is used to determine the timeslices for which the geometry has to be taken into account.voidsetLocation(Object aValue) Sets the value of the property that maps to thelocationelement.voidNotifies thisILcdShapeListthat some (possibly all) of its shapes have changed.Methods inherited from class com.luciad.format.gml32.model.TLcdGML32DynamicFeature
getDataSource, getDataSourceReference, getHistory, getValidTime, setDataSource, setDataSourceReference, setHistory, setValidTimeMethods inherited from class com.luciad.format.gml32.model.TLcdGML32AbstractFeature
clone, contains2D, contains2D, contains3D, contains3D, getShape, getShapeCount, invalidateObjectMethods inherited from class com.luciad.format.gml32.model.TLcdGML32AbstractGML
getDescription, getDescriptionReference, getId, getIdentifier, getMetaDataProperty, getName, setDescription, setDescriptionReference, setId, setIdentifierMethods inherited from class com.luciad.datamodel.TLcdDataObject
getDataType, getValue, getValue, hasValue, hasValue, setValue, setValue, toStringMethods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface com.luciad.util.ILcdCloneable
cloneMethods inherited from interface com.luciad.shape.ILcdShape
contains2D, contains2D, contains3D, contains3DMethods inherited from interface com.luciad.shape.ILcdShapeList
getShape, getShapeCount
-
Field Details
-
FEATURE_METADATA_PROPERTY
Data property that maps to thefeatureMetadataelement. The possible values for this property are instances ofTLcdAIXM51FeatureMetadataProperty. -
BOUNDED_BY_PROPERTY
Data property that maps to theboundedByelement. The possible values for this property are instances ofTLcdGML32BoundingShape. -
LOCATION_PROPERTY
Data property that maps to thelocationelement. The possible values for this property are instances ofTLcdGML32LocationProperty.
-
-
Constructor Details
-
TLcdAIXM51AbstractAIXMFeature
Constructs a newTLcdAIXM51AbstractAIXMFeaturefor the given type. This type must be a subtype ofAbstractAIXMFeatureType.- Parameters:
aType- the feature type for which to create a new instance
-
-
Method Details
-
getGeometryFilter
Returns the filter that is used to determine the timeslices for which the geometry has to be taken into account. By default, anILcdFilteris set that only takes the geometry ofBASELINEandSNAPSHOTtimeslices into account.- Returns:
- the filter that is used to determine the timeslices for which the geometry has to be taken into account.
- See Also:
-
setGeometryFilter
Sets the filter that is used to determine the timeslices for which the geometry has to be taken into account.- Parameters:
aGeometryFilter- the filter that is used to determine the timeslices for which the geometry has to be taken into account.- See Also:
-
getTimeSlices
Returns a list of objects corresponding to AIXM 5.1 types with base typeAbstractAIXMTimeSliceType. This list can be used to add and remove timeslices from this feature. It will also create the necessary timeslice properties when timeslices are added to this feature, to ensure a valid XML mapping.- Returns:
- A list of timeslices. Unless the default mapping is changed, the objects in the
Listshould be of typeTLcdAIXM51AbstractAIXMTimeSlice.
-
getBounds
Returns the bounds of this feature.If this feature contains actual shapes, the bounding box of these shapes is returned. If no geometry is found, the
boundedByelement is used as bounds if available; otherwise, the result ofTLcdGML32AbstractFeature.getBounds()is returned.- Specified by:
getBoundsin interfaceILcdBounded- Overrides:
getBoundsin classTLcdGML32AbstractFeature- Returns:
- the bounds of this feature.
-
getFocusPoint
Description copied from interface:ILcdShapeReturns the focus point of thisILcdShape.- Specified by:
getFocusPointin interfaceILcdShape- Overrides:
getFocusPointin classTLcdGML32AbstractFeature- Returns:
- the focus point of this
ILcdShape.
-
shapesChanged
public void shapesChanged()Description copied from class:TLcdGML32AbstractFeatureNotifies thisILcdShapeListthat some (possibly all) of its shapes have changed. This method should be called whenever a shape in this GML feature has been changed, or when a shape is inserted in or removed in one the properties of this GML feature. This method is the same asTLcdGML32AbstractFeature.invalidateObject().- Overrides:
shapesChangedin classTLcdGML32AbstractFeature
-
clone
Description copied from class:TLcdDataObjectReturns 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
ILcdDeepCloneableorILcdCloneablethen this interface is used to clone the value. - Otherwise, the property value is copied by reference.
- If the property value is an
- Specified by:
clonein interfaceILcdDeepCloneable- Overrides:
clonein classTLcdGML32AbstractFeature- 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
-
collectShapes
Description copied from class:TLcdGML32AbstractFeatureOverride this method to collect all shapes that needs to be included in the ILcdShapeList implementation of this feature. The default implementation recursively searches through all features of thisILcdDataObjectfor all features implementingILcdShape.- Overrides:
collectShapesin classTLcdGML32AbstractFeature- Returns:
- the list of shapes contained in this object.
-
insertIntoCache
Description copied from interface:ILcdCacheInserts a cache Object corresponding to the given key Object.- Specified by:
insertIntoCachein interfaceILcdCache- Parameters:
aKey- the key Object that will be used to identify the Object. The key must therefore be a unique identifier, typically the caller itself:insertIntoCache(this, ...).aValue- the Object to be cached.
-
removeCachedObject
Description copied from interface:ILcdCacheLooks up and removes the cached Object corresponding to the given key.- Specified by:
removeCachedObjectin interfaceILcdCache- Parameters:
aKey- the key Object that was used for storing the cache Object.- Returns:
- the cached Object, or null if there was no Object corresponding to the given key.
-
clearCache
public void clearCache()Description copied from interface:ILcdCacheClears the cache.- Specified by:
clearCachein interfaceILcdCache
-
getCachedObject
Description copied from interface:ILcdCacheLooks up and returns the cached Object corresponding to the given key.- Specified by:
getCachedObjectin interfaceILcdCache- Parameters:
aKey- the key Object that was used for storing the cache Object.- Returns:
- the cached Object, or null if there is no Object corresponding to the given key.
-
getFeatureMetadata
Returns the value of the property that maps to thefeatureMetadataelement.- Returns:
- the value of the
FEATURE_METADATA_PROPERTYproperty.
-
setFeatureMetadata
Sets the value of the property that maps to thefeatureMetadataelement.- Parameters:
aValue- the value to set for theFEATURE_METADATA_PROPERTYproperty.
-
getBoundedBy
Returns the value of the property that maps to theboundedByelement.This property describes the minimum bounding box or rectangle that encloses the entire feature.
- Returns:
- the value of the
BOUNDED_BY_PROPERTYproperty.
-
setBoundedBy
Sets the value of the property that maps to theboundedByelement.This property describes the minimum bounding box or rectangle that encloses the entire feature.
- Parameters:
aValue- the value to set for theBOUNDED_BY_PROPERTYproperty.
-
getLocation
Returns the value of the property that maps to thelocationelement.- Returns:
- the value of the
LOCATION_PROPERTYproperty. - See Also:
-
setLocation
Sets the value of the property that maps to thelocationelement.- Parameters:
aValue- the value to set for theLOCATION_PROPERTYproperty.
-