Package com.luciad.tea
Class ALcdDensityBasedElevationProvider
java.lang.Object
com.luciad.tea.ALcdTerrainElevationProvider
com.luciad.tea.ALcdRasterTerrainElevationProvider
com.luciad.tea.ALcdModelBasedTerrainElevationProvider
com.luciad.tea.ALcdDensityBasedElevationProvider
- All Implemented Interfaces:
ILcdAltitudeProvider
public abstract class ALcdDensityBasedElevationProvider
extends ALcdModelBasedTerrainElevationProvider
This abstract class implements
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()
.- Since:
- 9.1
-
Constructor Summary
ConstructorDescriptionDefines anALcdModelBasedTerrainElevationProvider
which retrieves elevation values from the models, eventually choosing a raster based on the closest pixel density. -
Method Summary
Modifier and TypeMethodDescriptionvoid
Add a model to the list of models to be taken into account for retrieving elevation data.protected abstract List
<ILcdHeightProvider> Creates a list of height providers.double
Gets the pixel density value.Gets the reference in which the pixel density is defined.static boolean
Deprecated.This method has been deprecated.void
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.void
setPixelDensity
(double aPixelDensity) Set the pixel density value.void
setPixelDensityReference
(ILcdGeoReference aPixelDensityReference) Set the reference in which the pixel density is defined.Methods inherited from class com.luciad.tea.ALcdModelBasedTerrainElevationProvider
getModel, getModelCount, getPreferredReference
Methods inherited from class com.luciad.tea.ALcdRasterTerrainElevationProvider
getMaximumValidRasterValue, getMinimumValidRasterValue, getOutOfRasterBoundsValue, getUnknownElevation, isValidRasterValue, setMaximumValidRasterValue, setMinimumValidRasterValue, setOutOfRasterBoundsValue, setUnknownElevation
Methods inherited from class com.luciad.tea.ALcdTerrainElevationProvider
getAltitudeDescriptor, getAltitudeMode, isValidElevation, retrieveAltitudeAt
-
Constructor Details
-
ALcdDensityBasedElevationProvider
public ALcdDensityBasedElevationProvider()Defines anALcdModelBasedTerrainElevationProvider
which retrieves elevation values from the models, eventually choosing a raster based on the closest pixel density.
-
-
Method Details
-
retrieveElevationAt
Description copied from class:ALcdTerrainElevationProvider
Returns the elevation for a given location, defined in meters above the geoid from the given location reference. Special elevation values should be interpreted as defined by the altitude descriptor (fromALcdTerrainElevationProvider.getAltitudeDescriptor()
). Keep in mind thatDouble.NaN
,Double.NEGATIVE_INFINITY
andDouble.POSITIVE_INFINITY
can also be used as special values.- Specified by:
retrieveElevationAt
in classALcdTerrainElevationProvider
- Parameters:
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.- Returns:
- the elevation for a given location, defined in meters above the ellipsoid.
-
createHeightProviderList
Creates a list of height providers. The result is a list of height providers containing exactly 1ILcdHeightProvider
for each model in the same order as the models. It is possible that for a specificILcdModel
noILcdHeightProvider
can be created. In that case the list should contain anull
value.- Returns:
- a list of height providers for each model.
-
addModel
Description copied from class:ALcdModelBasedTerrainElevationProvider
Add a model to the list of models to be taken into account for retrieving elevation data.- Overrides:
addModel
in classALcdModelBasedTerrainElevationProvider
- Parameters:
aModel
- The model to be added.
-
removeModel
Description copied from class:ALcdModelBasedTerrainElevationProvider
Remove a model from list set of models to be taken into account for retrieving elevation data.- Overrides:
removeModel
in classALcdModelBasedTerrainElevationProvider
- Parameters:
aModel
- The model to be removed.
-
removeAllModels
public void removeAllModels()Description copied from class:ALcdModelBasedTerrainElevationProvider
Empty the list of models to be taken into account for retrieving elevation data.- Overrides:
removeAllModels
in classALcdModelBasedTerrainElevationProvider
-
getPixelDensityReference
Gets the reference in which the pixel density is defined. The default is a geodetic reference with WGS84 geodetic datum. This means the pixel density is then defined in pixels per square degree.- Returns:
- The pixel density reference.
- See Also:
-
setPixelDensityReference
Set the reference in which the pixel density is defined. The default is a geodetic reference with WGS84 geodetic datum. This means the pixel density is then defined in pixels per square degree.- Parameters:
aPixelDensityReference
- The pixel density reference.- See Also:
-
getPixelDensity
public double getPixelDensity()Gets the pixel density value. The pixel density is defined with respect to the pixelDensityReference. This value is specified in pixels per square reference unit. When retrieving elevation data from a set of rasters, the raster with pixel density closest to this one is used.- Returns:
- The pixel density.
- See Also:
-
setPixelDensity
public void setPixelDensity(double aPixelDensity) Set the pixel density value.- Parameters:
aPixelDensity
- The pixel density.- See Also:
-
isClassTraceOn
Deprecated.This method has been deprecated. It is recommended to use the standard Java logging framework directly.Returnstrue
if tracing is enabled for this class.- Returns:
- true if tracing is enabled for this class, false otherwise.
-
setClassTraceOn
Deprecated.This method has been deprecated. It is recommended to use the standard Java logging framework directly.Enables tracing for all instances of this class. If the argument istrue
then all log messages are recorded, otherwise only the informative, warning and error messages are recorded.- Parameters:
aClassTraceOn
- if true then all log messages are recorded, otherwise only the informative, warning and error messages are recorded.
-