public abstract class ALcdEarthTerrainElevationProvider extends Object
Constructor and Description |
---|
ALcdEarthTerrainElevationProvider() |
Modifier and Type | Method and Description |
---|---|
ILcdGeoReference |
getPreferredReference()
Returns the preferred reference for this elevation provider.
|
abstract double |
retrieveElevationAt(ILcdPoint aPoint,
ILcdGeoReference aPointReference)
Returns the elevation for a given location, defined in meters above mean sea level.
|
double |
retrieveElevationAt(ILcdPoint aPoint,
ILcdGeoReference aPointReference,
double aDesiredResolution)
Returns the elevation for a given location, defined in meters above mean sea level.
|
public abstract double retrieveElevationAt(ILcdPoint aPoint, ILcdGeoReference aPointReference)
aPoint
- The point indicating the location for which to retrieve the elevation.aPointReference
- The reference in which the given location is defined.public ILcdGeoReference getPreferredReference()
Returns the preferred reference for this elevation provider. This reference is the reference with
the best performance when used as a parameter in the method retrieveElevationAt(com.luciad.shape.ILcdPoint, com.luciad.reference.ILcdGeoReference)
. It is
perfectly correct to use points with other references. It will be faster to use the preferred one.
For performance reasons, the preferred reference should be the reference of the available elevation data to minimize the number of point transformations.
By default this method returns null
, indicating that no preferred reference is available.
null
if no preferred reference is available.retrieveElevationAt(ILcdPoint, ILcdGeoReference)
public double retrieveElevationAt(ILcdPoint aPoint, ILcdGeoReference aPointReference, double aDesiredResolution)
aDesiredResolution
parameter can be used to indicate to the elevation provider what the desired resolution of the
elevation values should be. The value should be a distance measured in units of the point
reference. If an application wants to request elevations for a grid of points which are 10
units apart, for instance, it could pass a value of 10.0 in aDesiredResolution
.
The elevation provider could then optimize for this particular resolution, e.g. by choosing the
appropriate detail level from a multileveled elevation raster.
The default implementation of this method simply delegates to retrieveElevationAt(com.luciad.shape.ILcdPoint, com.luciad.reference.ILcdGeoReference)
and
hence does not use the aDesiredResolution
parameter.aPoint
- The point indicating the location for which to retrieve the
elevation.aPointReference
- The reference in which the given location is defined.aDesiredResolution
- An indication of the spacing (in units of the point reference)
between sample points for which elevations are being retrieved