Package com.luciad.earth.tileset.terrain
Class TLcdEarthHeightProviderFactory
java.lang.Object
com.luciad.earth.tileset.terrain.TLcdEarthHeightProviderFactory
- All Implemented Interfaces:
ILcdModelHeightProviderFactory
public class TLcdEarthHeightProviderFactory
extends Object
implements ILcdModelHeightProviderFactory
This
ILcdModelHeightProviderFactory
provides a method to create an
ILcdHeightProvider
that can provide height data of earth tilesets.
The ALcdModelHeightProviderFactory.KEY_GEO_REFERENCE
property should
always be passed to this factory.
Usage
The height providers created by this factory return heights by retrieving tiles from the tile set synchronously (unless theKEY_SYNCHRONOUS_LEVEL
parameter is used) at the most
detailed level-of-detail available (unless the ALcdRasterModelHeightProviderFactory.KEY_PIXEL_DENSITY
parameter is specified).
The height providers created by this factory interpolate the height values (unless the
ALcdRasterModelHeightProviderFactory.KEY_INTERPOLATE_DATA
key is used with value
false
).
The height providers created by this factory are thread-safe.- Since:
- 9.1
- See Also:
-
Field Summary
Modifier and TypeFieldDescriptionstatic final String
Key used for the property indicating the maximum number of tiles that should be cached.static final String
Key used to pass an existingTLcdEarthTileSetElevationProvider
to this factory.static final String
Key used for an elevation coverage property.static final String
Key used for an elevation offset value.static final String
Key used for an elevation scale value.static final String
Key used for the max synchronous level.static final String
Key used for the tileset reference.Fields inherited from interface com.luciad.util.height.ILcdModelHeightProviderFactory
KEY_GEO_REFERENCE
-
Constructor Summary
ConstructorDescriptionconstructs a standardTLcdEarthHeightProviderFactory
. -
Method Summary
-
Field Details
-
KEY_ELEVATION_SCALE
Key used for an elevation scale value. The property should be a double. This value is used to create aTLcdEarthTileSetElevationProvider
.- See Also:
-
KEY_ELEVATION_OFFSET
Key used for an elevation offset value. The property should be a double. This value is used to create aTLcdEarthTileSetElevationProvider
.- See Also:
-
KEY_CACHE_SIZE
Key used for the property indicating the maximum number of tiles that should be cached. The property should be an integer. This value is used to create aTLcdEarthTileSetElevationProvider
.- See Also:
-
KEY_TILE_SET_REFERENCE
Key used for the tileset reference. The property should be aILcdGeoReference
. This parameter should never be set as the tile set reference must be the same as the model reference. This key is only available for backwards compatibility. If the key is set anyway then its value will be used as reference of the tile set instead of the model reference.- See Also:
-
KEY_ELEVATION_COVERAGE
Key used for an elevation coverage property. The property should be anILcdEarthTileSet
. This value is used to create aTLcdEarthTileSetElevationProvider
.- See Also:
-
KEY_EARTH_TERRAIN_ELEVATION_PROVIDER
Key used to pass an existingTLcdEarthTileSetElevationProvider
to this factory. If aTLcdEarthTileSetElevationProvider
is needed, and this property exists, it is used. the property should be aTLcdEarthTileSetElevationProvider
.- See Also:
-
KEY_SYNCHRONOUS_LEVEL
Key used for the max synchronous level. This property should be an integer.- See Also:
-
-
Constructor Details
-
TLcdEarthHeightProviderFactory
public TLcdEarthHeightProviderFactory()constructs a standardTLcdEarthHeightProviderFactory
.
-
-
Method Details
-
createHeightProvider
public ILcdHeightProvider createHeightProvider(ILcdModel aModel, Map<String, Object> aRequiredProperties, Map<String, throws TLcdMissingPropertyException, TLcdUnsupportedPropertyExceptionObject> aOptionalProperties) Description copied from interface:ILcdModelHeightProviderFactory
Returns a height provider for a givenILcdModel
using the given properties. The returned height provider is determined by the implementation, theILcdModel
and the given properties.- Specified by:
createHeightProvider
in interfaceILcdModelHeightProviderFactory
- Parameters:
aModel
- anILcdModel
for which a height provider is created.aRequiredProperties
- 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 benull
. When an implementation of this interface uses a required property, it should always remove it from the list of required properties. When theILcdHeightProvider
is actually made, implementations should verify that the list of required properties is empty (and all required properties are used).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:
-