Class: ArcGISTiledElevationTerrainProvider

ArcGISTiledElevationTerrainProvider

new ArcGISTiledElevationTerrainProvider()

By tiling the elevation maps obtained from ArcGIS ImageService's elevation tiles, a TerrainProvider for terrain geometry is generated.

Name Type Description
options.url Resource | String | Promise.<Resource> | Promise.<String>

The URL of ArcGIS ImageServer service.

options.token String

Authorization token used to connect to the service.

options.ellipsoid Ellipsoid

Ellipsoid body. If a tiling scheme is specified, ignore this parameter and use the ellipsoid of the tiling scheme. If neither parameter is specified, use WGS84 ellipsoid.

See:
Example
var terrainProvider = new SuperMap3D.ArcGISTiledElevationTerrainProvider({
  url : url,
  token : tk
});
viewer.terrainProvider = terrainProvider;

 

Members

creditCredit

Obtain the copyright information that needs to be displayed when the terrain provider is active, usually used to label the source of terrain data.

Note: This method should not be called until ArcGIS FiledElevationTerrainProvider # ready returns true.

errorEventEvent

Get the events triggered when the terrain provider encounters asynchronous errors.

By subscribing to this event, you will receive error notifications and may potentially recover from them. The event listener will be passed an instance of TileProviderError.

hasVertexNormalsBoolean

Get a Boolean value indicating whether the current terrain tile contains vertex normal data (hasVertexNormals attribute).

Vertex normals are used for terrain surface lighting calculations to achieve dynamic lighting effects.

Before calling, make sure that ArcGIS FiledElevationTerrainProvider # ready is true.

hasWaterMaskBoolean

Get a Boolean value indicating whether the current terrain provider includes a water surface mask (hasWaterMask attribute).

The water surface mask is used to distinguish between land and water areas, and supports dynamic wave rendering and other water surface effects.

Before calling, make sure that ArcGIS FiledElevationTerrainProvider # ready is true.

readyBoolean

Get a Boolean value indicating whether the terrain provider has completed initialization and is safe to use.

readonly readyPromisePromise.<Boolean>

Get a Promise object that parses to true after provider initialization is complete, used for asynchronous monitoring of the ready status of terrain services.

Obtain the tile partitioning scheme adopted by the current terrain provider. Note: This method should not be called until ArcGIS FiledElevationTerrainProvider # ready returns true.

Methods

getLevelMaximumGeometricError(level){Number}

Obtain the maximum geometric error allowed for a given level tile.

Name Type Description
level Number

To obtain the tile level with the maximum geometric error.

Returns:
Type Description
Number Maximum geometric error.

getTileDataAvailable(x, y, level){Boolean}

Determine if data for tiles can be loaded.

Name Type Description
x Number

Need to request the tile X coordinates of the geometry.

y Number

Need to request the tile Y coordinate of the geometry.

level Number

Need to request the tile hierarchy of the geometry.

Returns:
Type Description
Boolean If not supported, it is undefined; otherwise, it is true or false.

loadTileDataAvailability(x, y, level){undefined|Promise}

Ensure that we load the availability data of the tiles.

Name Type Description
x Number

Need to request the tile X coordinates of the geometry.

y Number

Need to request the tile Y coordinate of the geometry.

level Number

Need to request the tile hierarchy of the geometry.

Returns:
Type Description
undefined | Promise If no content needs to be loaded, it is undefined; otherwise, it is a promise parsed when all necessary tiles are loaded.

requestTileGeometry(x, y, level, request){Promise.<TerrainData>|undefined}

To obtain the geometric data of the specified terrain tile, call (ready is true) 12 after ArcGISTiledElevationTerrainProvider # ready initialization is completed.

The returned result includes terrain geometry data and sub tile level status.

Name Type Description
x Number

Request the X coordinate of the terrain tile corresponding to the geometric data.

y Number

T requests the X coordinate of the terrain tile corresponding to the geometric data.

level Number

Request tile hierarchy for geometric shapes.

request Request

Request object. For internal use only.

Returns:
Type Description
Promise.<TerrainData> | undefined For the requested geometry, this method returns a Promise. If the method does not return a Promise but returns undefined, it indicates that there are too many pending requests at the moment, and the request will be retried later.