public abstract class ALcdRasterModelHeightProviderFactory extends ALcdModelHeightProviderFactory
TLcdRasterModelHeightProviderFactory
and the new
TLcdImageModelHeightProviderFactory
Modifier and Type | Field and Description |
---|---|
static String |
KEY_INTERPOLATE_DATA
Key used to to denote that the raster data should be interpolated.
|
static String |
KEY_MAX_VALID_HEIGHT
Key for the maximum valid height of the returned height.
|
static String |
KEY_MIN_VALID_HEIGHT
Key for the minimum valid height of the returned height.
|
static String |
KEY_PIXEL_DENSITY
Key used for a pixel density value.
|
KEY_GEO_REFERENCE
Constructor and Description |
---|
ALcdRasterModelHeightProviderFactory() |
Modifier and Type | Method and Description |
---|---|
protected boolean |
canCreateHeightProvider(ILcdModel aModel)
Check if a height provider can be created from the given
ILcdModel . |
protected abstract ILcdHeightProvider |
createModelElementHeightProvider(Object aElement,
Map<String,Object> aRequiredPropertiesSFCT,
Map<String,Object> aOptionalProperties)
Creates an
ILcdHeightProvider for the given model element. |
protected void |
transformProperties(ILcdModel aModel,
ILcdGeoReference aFromReference,
ILcdGeoReference aToReference,
Map<String,Object> aRequiredProperties,
Map<String,Object> aOptionalProperties)
Transforms the properties in the
TLcdHeightProviderProperties . |
createHeightProvider
public static final String KEY_PIXEL_DENSITY
KEY_GEO_REFERENCE
property.
This property is used when the height provider is backed by multi-level data.
It gives a hint to the implementation which level should be chosen.
If this property is not provided, or set to Double.NaN, the most detailed level is chosen.public static final String KEY_MIN_VALID_HEIGHT
public static final String KEY_MAX_VALID_HEIGHT
public static final String KEY_INTERPOLATE_DATA
public ALcdRasterModelHeightProviderFactory()
protected abstract ILcdHeightProvider createModelElementHeightProvider(Object aElement, Map<String,Object> aRequiredPropertiesSFCT, Map<String,Object> aOptionalProperties) throws TLcdMissingPropertyException, TLcdUnsupportedPropertyException
ALcdModelHeightProviderFactory
ILcdHeightProvider
for the given model element.createModelElementHeightProvider
in class ALcdModelHeightProviderFactory
aElement
- a model element.aRequiredPropertiesSFCT
- the required properties.aOptionalProperties
- the optional properties.ILcdHeightProvider
for the given model element or null
if no ILcdHeightProvider
can be created.TLcdMissingPropertyException
- when a property is missing that is necessary to
create the ILcdHeightProvider
.TLcdUnsupportedPropertyException
- when a required property was never used while
creating the ILcdHeightProvider
.protected boolean canCreateHeightProvider(ILcdModel aModel)
ILcdModel
. The default
implementation only returns true
if the model contains a TLcdRasterModelDescriptor
or a TLcdMultilevelRasterModelDescriptor
, and false
otherwise.canCreateHeightProvider
in class ALcdModelHeightProviderFactory
aModel
- the given model.true
if a height provider can be created from the given model and
false
otherwise.protected void transformProperties(ILcdModel aModel, ILcdGeoReference aFromReference, ILcdGeoReference aToReference, Map<String,Object> aRequiredProperties, Map<String,Object> aOptionalProperties) throws TLcdOutOfBoundsException
ALcdModelHeightProviderFactory
TLcdHeightProviderProperties
. A height provider
factory that extends this class should override this method if it defines extra properties
that depend on the geo reference property. If this is the case, it should be possible to
transform these properties to aToReference
.transformProperties
in class ALcdModelHeightProviderFactory
aModel
- a model defined with respect to aToReference
.aFromReference
- the reference in which the properties are defined.aToReference
- the reference to which the properties will be transformed.aRequiredProperties
- the required properties.aOptionalProperties
- the optional properties.TLcdOutOfBoundsException
- when a property cannot be transformed correctly.