public abstract class ALcdDensityBasedElevationProvider extends ALcdModelBasedTerrainElevationProvider
ILcdAltitudeProvider
. The height data is
extracted from a set of models, provided by the user of this class using the following methods :
addModel( ILcdModel aModel )
removeModel( ILcdModel aModel )
removeAllModels()
ILcdHeightProvider
s is used,
exactly one height provider for each model. This set of height providers is provided by the
user by means of the abstract method createHeightProviderList()
.Constructor and Description |
---|
ALcdDensityBasedElevationProvider()
Defines an
ALcdModelBasedTerrainElevationProvider which retrieves
elevation values from the models, eventually choosing a raster based on the
closest pixel density. |
Modifier and Type | Method and Description |
---|---|
void |
addModel(ILcdModel aModel)
Add a model to the list of models to be taken into account for retrieving
elevation data.
|
protected abstract List<ILcdHeightProvider> |
createHeightProviderList()
Creates a list of height providers.
|
double |
getPixelDensity()
Gets the pixel density value.
|
ILcdGeoReference |
getPixelDensityReference()
Gets the reference in which the pixel density is defined.
|
static boolean |
isClassTraceOn()
Deprecated.
This method has been deprecated. It is recommended to use the
standard Java logging framework directly.
|
void |
removeAllModels()
Empty the list of models to be taken into account for retrieving elevation data.
|
void |
removeModel(ILcdModel aModel)
Remove a model from list set of models to be taken into account for retrieving
elevation data.
|
double |
retrieveElevationAt(ILcdPoint aPoint,
ILcdGeoReference aPointReference)
Returns the elevation for a given location, defined in meters above the geoid
from the given location reference.
|
static void |
setClassTraceOn(boolean aClassTraceOn)
Deprecated.
This method has been deprecated. It is recommended to use the
standard Java logging framework directly.
|
void |
setPixelDensity(double aPixelDensity)
Set the pixel density value.
|
void |
setPixelDensityReference(ILcdGeoReference aPixelDensityReference)
Set the reference in which the pixel density is defined.
|
getModel, getModelCount, getPreferredReference
getMaximumValidRasterValue, getMinimumValidRasterValue, getOutOfRasterBoundsValue, getUnknownElevation, isValidRasterValue, setMaximumValidRasterValue, setMinimumValidRasterValue, setOutOfRasterBoundsValue, setUnknownElevation
getAltitudeDescriptor, getAltitudeMode, isValidElevation, retrieveAltitudeAt
public ALcdDensityBasedElevationProvider()
ALcdModelBasedTerrainElevationProvider
which retrieves
elevation values from the models, eventually choosing a raster based on the
closest pixel density.public double retrieveElevationAt(ILcdPoint aPoint, ILcdGeoReference aPointReference)
ALcdTerrainElevationProvider
ALcdTerrainElevationProvider.getAltitudeDescriptor()
). Keep in mind that Double.NaN
,
Double.NEGATIVE_INFINITY
and Double.POSITIVE_INFINITY
can
also be used as special values.retrieveElevationAt
in class ALcdTerrainElevationProvider
aPoint
- The point indicating the location for which to retrieve the elevation.aPointReference
- The reference in which the given location is defined. Note that the
ellipsoid from this reference should be used to define the returning
elevation value.protected abstract List<ILcdHeightProvider> createHeightProviderList()
ILcdHeightProvider
for each model in the same order
as the models. It is possible that for a specific ILcdModel
no
ILcdHeightProvider
can be created. In that case the list should contain
a null
value.public void addModel(ILcdModel aModel)
ALcdModelBasedTerrainElevationProvider
addModel
in class ALcdModelBasedTerrainElevationProvider
aModel
- The model to be added.public void removeModel(ILcdModel aModel)
ALcdModelBasedTerrainElevationProvider
removeModel
in class ALcdModelBasedTerrainElevationProvider
aModel
- The model to be removed.public void removeAllModels()
ALcdModelBasedTerrainElevationProvider
removeAllModels
in class ALcdModelBasedTerrainElevationProvider
public ILcdGeoReference getPixelDensityReference()
setPixelDensityReference(ILcdGeoReference)
public void setPixelDensityReference(ILcdGeoReference aPixelDensityReference)
aPixelDensityReference
- The pixel density reference.getPixelDensityReference()
public double getPixelDensity()
setPixelDensity(double)
public void setPixelDensity(double aPixelDensity)
aPixelDensity
- The pixel density.getPixelDensity()
@Deprecated public static boolean isClassTraceOn()
true
if tracing is enabled for this class.@Deprecated public static void setClassTraceOn(boolean aClassTraceOn)
true
then all log messages are recorded, otherwise only
the informative, warning and error messages are recorded.aClassTraceOn
- if true then all log messages are recorded,
otherwise only the informative, warning and error messages are recorded.