Class TLcyAsynchronousLayerHeightProviderFactory
- All Implemented Interfaces:
ILcdLayerHeightProviderFactory
ILcdLayerHeightProviderFactory
for asynchronous layers. It wraps around an existing
layer height provider factory and allows to easily convert an existing layer height provider into a
layer height provider factory that supports asynchronous painting.
This wrapper will only unpack the asynchronous layer in createHeightProvider
and pass the unwrapped layer to the delegate height provider
factory. This means that the asynchronous layer can still be painted on the asynchronous paint
thread while the height provider, based on the synchronous layer, is queried for heights.
This wrapper should only be used for ILcdLayerHeightProviderFactory
instances
that operate on ILcdGXYLayer
layers. If the layer height provider factory is used
for other kinds of ILcdLayer
instances, then this
wrapper has no effect and the functionality of the original layer height provider factory is
unmodified.
- Since:
- 10.1
-
Field Summary
Fields inherited from interface com.luciad.util.height.ILcdLayerHeightProviderFactory
KEY_GEO_REFERENCE
-
Constructor Summary
ConstructorDescriptionTLcyAsynchronousLayerHeightProviderFactory
(ILcdLayerHeightProviderFactory aDelegate, ILcyLucyEnv aLucyEnv) Create a newTLcyAsynchronousLayerHeightProviderFactory
, wrapped aroundaDelegate
-
Method Summary
-
Constructor Details
-
TLcyAsynchronousLayerHeightProviderFactory
public TLcyAsynchronousLayerHeightProviderFactory(ILcdLayerHeightProviderFactory aDelegate, ILcyLucyEnv aLucyEnv) Create a newTLcyAsynchronousLayerHeightProviderFactory
, wrapped aroundaDelegate
- Parameters:
aDelegate
- The delegateILcdLayerHeightProviderFactory
aLucyEnv
- The Lucy back-end
-
-
Method Details
-
createHeightProvider
public ILcdHeightProvider createHeightProvider(ILcdLayer aLayer, ILcdView aView, Map<String, Object> aRequiredPropertiesSFCT, Map<String, throws TLcdMissingPropertyException, TLcdUnsupportedPropertyExceptionObject> aOptionalProperties) Description copied from interface:ILcdLayerHeightProviderFactory
Returns a height provider for a givenILcdLayer
andILcdView
using the given properties. The returned height provider is determined by the implementation, theILcdLayer
,ILcdView
and the given properties.- Specified by:
createHeightProvider
in interfaceILcdLayerHeightProviderFactory
- Parameters:
aLayer
- anILcdLayer
for which a height provider is created.aView
- anILcdView
in whichaLayer
is contained.aRequiredPropertiesSFCT
- the required properties. The properties can be retrieved using aString
key describing the property type. When not all required properties are used, an exception is thrown.aRequiredProperties
may be empty but should not be null. When a required property as used, it should always be removed from the list of required properties. When anILcdHeightProvider
is actually made, the list of required properties should be verified.aOptionalProperties
- the optional properties. The properties can be retrieved using aString
key describing the property type. The optional properties may or may not be used by the implementation.aOptionalProperties
may be empty but should not be null.- Returns:
- a height provider if elevation is supported, or
null
when elevation is not supported or when no valid height provider can be created. - Throws:
TLcdMissingPropertyException
- when the implementation misses a necessary property.TLcdUnsupportedPropertyException
- when a required property is not used by the implementation.- See Also:
-