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 the KEY_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 Details

    • KEY_ELEVATION_SCALE

      public static final String KEY_ELEVATION_SCALE
      Key used for an elevation scale value. The property should be a double. This value is used to create a TLcdEarthTileSetElevationProvider.
      See Also:
    • KEY_ELEVATION_OFFSET

      public static final String KEY_ELEVATION_OFFSET
      Key used for an elevation offset value. The property should be a double. This value is used to create a TLcdEarthTileSetElevationProvider.
      See Also:
    • KEY_CACHE_SIZE

      public static final String 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 a TLcdEarthTileSetElevationProvider.
      See Also:
    • KEY_TILE_SET_REFERENCE

      public static final String KEY_TILE_SET_REFERENCE
      Key used for the tileset reference. The property should be a ILcdGeoReference.

      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

      public static final String KEY_ELEVATION_COVERAGE
      Key used for an elevation coverage property. The property should be an ILcdEarthTileSet. This value is used to create a TLcdEarthTileSetElevationProvider.
      See Also:
    • KEY_EARTH_TERRAIN_ELEVATION_PROVIDER

      public static final String KEY_EARTH_TERRAIN_ELEVATION_PROVIDER
      Key used to pass an existing TLcdEarthTileSetElevationProvider to this factory. If a TLcdEarthTileSetElevationProvider is needed, and this property exists, it is used. the property should be a TLcdEarthTileSetElevationProvider.
      See Also:
    • KEY_SYNCHRONOUS_LEVEL

      public static final String 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 standard TLcdEarthHeightProviderFactory.
  • Method Details

    • createHeightProvider

      public ILcdHeightProvider createHeightProvider(ILcdModel aModel, Map<String,Object> aRequiredProperties, Map<String,Object> aOptionalProperties) throws TLcdMissingPropertyException, TLcdUnsupportedPropertyException
      Description copied from interface: ILcdModelHeightProviderFactory
      Returns a height provider for a given ILcdModel using the given properties. The returned height provider is determined by the implementation, the ILcdModel and the given properties.
      Specified by:
      createHeightProvider in interface ILcdModelHeightProviderFactory
      Parameters:
      aModel - an ILcdModel for which a height provider is created.
      aRequiredProperties - the required properties. The properties can be retrieved using a String 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 an implementation of this interface uses a required property, it should always remove it from the list of required properties. When the ILcdHeightProvider 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 a String 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: