public class UsgsDigitalElevationModel extends RasterTerrainProvider
This TerrainProvider
has a few limitations that prevent it from reading all USGS DEM files:
Attempting to load an unsupported DEM file will result in an InvalidDataException
.
Constructor and Description |
---|
UsgsDigitalElevationModel(StreamFactory streamFactory)
Initializes a new instance with the specified stream factory.
|
UsgsDigitalElevationModel(StreamFactory streamFactory,
TerrainCacheGroup cacheGroup)
Initializes a new instance with the specified stream factory.
|
UsgsDigitalElevationModel(String fileName)
Initializes a new instance using the specified DEM filename.
|
UsgsDigitalElevationModel(String fileName,
TerrainCacheGroup cacheGroup)
Initializes a new instance using the specified DEM filename.
|
Modifier and Type | Method and Description |
---|---|
TerrainPosts |
getPosts(RasterTerrainIndexExtent extent)
Gets the posts over a specified area by reading them from the terrain data source.
|
cartographicExtentToIndexExtent, getCache, getDefaultInterpolator, getDeltaLatitude, getDeltaLatitudeNativeUnits, getDeltaLongitude, getDeltaLongitudeNativeUnits, getEasternPostOffsetNativeUnits, getFirstPartials, getFirstPartials, getHeight, getHeight, getHeightNativeUnits, getHeightNativeUnits, getHeightRelativeToShape, getLatitudePosts, getLongitudePosts, getMinimumSampleSpacing, getNeedsSpecialCoordinateProcessing, getNorthernPostOffsetNativeUnits, getSecondPartials, getSecondPartials, getSouthernPostOffsetNativeUnits, getWesternPostOffsetNativeUnits, indexToLatitude, indexToLongitude, latitudeToIndex, longitudeToIndex, preloadExtent, processCoordinates, setDefaultInterpolator, setDeltaLatitude, setDeltaLatitudeNativeUnits, setDeltaLongitude, setDeltaLongitudeNativeUnits, setEasternPostOffsetNativeUnits, setLatitudePosts, setLongitudePosts, setNeedsSpecialCoordinateProcessing, setNorthernPostOffsetNativeUnits, setSouthernPostOffsetNativeUnits, setWesternPostOffsetNativeUnits, unloadExtent
getBoundingExtent, getBoundingExtentNativeUnits, getGradient, getHeightReference, getHeightRelativeToShape, getHessian, getLocalMinimumSampleSpacing, getNativeToMeters, getNormal, getRadiansToNative, getReferenceSurface, getShape, getShapeFixedFrame, inGlobalBounds, setBoundingExtent, setBoundingExtentNativeUnits, setHeightReference, setNativeToMeters, setRadiansToNative, setReferenceSurface, setShape, setShapeFixedFrame
public UsgsDigitalElevationModel(@Nonnull String fileName)
fileName
- The full path and filename of the DEM file.InvalidDataException
- Thrown when any of the following conditions are met:
IllegalStateException
- Thrown when the Earth
(get
) instance in the CalculationContext
is not configured with a mean sea level (MSL).ArgumentNullException
- Thrown when fileName
is null
.public UsgsDigitalElevationModel(@Nonnull String fileName, @Nonnull TerrainCacheGroup cacheGroup)
fileName
- The full path and filename of the DEM file.cacheGroup
- The cache group with which to associate this terrain provider.InvalidDataException
- Thrown when any of the following conditions are met:
IllegalStateException
- Thrown when the Earth
(get
) instance in the CalculationContext
is not configured with a mean sea level (MSL).ArgumentNullException
- Thrown when fileName
or cacheGroup
is null
.public UsgsDigitalElevationModel(@Nonnull StreamFactory streamFactory)
The streams created by streamFactory
must support seeking.
This means that the streams must implement
ISeekableStream
or
FileInputStream
.
streamFactory
- The factory to use to create streams to read the terrain data.InvalidDataException
- Thrown when the InputStream
from the streamFactory
ended
unexpectedly before the required terrain data could be read.InvalidDataException
- Thrown when any of the following conditions are met:
IllegalStateException
- Thrown when the Earth
(get
) instance in the CalculationContext
is not configured with a mean sea level (MSL).ArgumentNullException
- Thrown when streamFactory
is null
.public UsgsDigitalElevationModel(@Nonnull StreamFactory streamFactory, @Nonnull TerrainCacheGroup cacheGroup)
The streams created by streamFactory
must support seeking.
This means that the streams must implement
ISeekableStream
or
FileInputStream
.
streamFactory
- The factory to use to create streams to read the terrain data.cacheGroup
- The cache group with which to associate this terrain provider.InvalidDataException
- Thrown when the InputStream
from the streamFactory
ended
unexpectedly before the required terrain data could be read.InvalidDataException
- Thrown when any of the following conditions are met:
IllegalStateException
- Thrown when the Earth
(get
) instance in the CalculationContext
is not configured with a mean sea level (MSL).ArgumentNullException
- Thrown when streamFactory
or cacheGroup
is null
.public TerrainPosts getPosts(@Nonnull RasterTerrainIndexExtent extent)
getPosts
in class RasterTerrainProvider
extent
- The extent of the posts to read.InvalidDataException
- Thrown when terrain data source stream terminates unexpectedly before all of the required
terrain data can be read.