I3SDataProvider

new Cesium.I3SDataProvider(options)

An I3SDataProvider is the main public class for I3S support. The url option should return a scene object. Currently supported I3S versions are 1.6 and 1.7/1.8 (OGC I3S 1.2). I3SFeature and I3SNode classes implement the Object Model for I3S entities, with public interfaces.
Name Type Description
options Object Object with the following properties:
Name Type Default Description
url Resource | String The url of the I3S dataset.
name String optional The name of the I3S dataset.
show Boolean true optional Determines if the dataset will be shown.
geoidTiledTerrainProvider ArcGISTiledElevationTerrainProvider optional Tiled elevation provider describing an Earth Gravitational Model. If defined, geometry will be shifted based on the offsets given by this provider. Required to position I3S data sets with gravity-related height at the correct location.
traceFetches Boolean false optional Debug option. When true, log a message whenever an I3S tile is fetched.
cesium3dTilesetOptions Object optional Object containing options to pass to an internally created Cesium3DTileset. See Cesium3DTileset for list of valid properties. All options can be used with the exception of url and show which are overridden by values from I3SDataProvider.
Examples:
const i3sData = new I3SDataProvider({
  url: 'https://tiles.arcgis.com/tiles/z2tnIkrLQ2BRzr6P/arcgis/rest/services/Frankfurt2017_vi3s_18/SceneServer/layers/0'
});
viewer.scene.primitives.add(i3sData);
const geoidService = new Cesium.ArcGISTiledElevationTerrainProvider({
  url: "https://tiles.arcgis.com/tiles/z2tnIkrLQ2BRzr6P/arcgis/rest/services/EGM2008/ImageServer",
});
let i3sData = new I3SDataProvider({
  url: 'https://tiles.arcgis.com/tiles/z2tnIkrLQ2BRzr6P/arcgis/rest/services/Frankfurt2017_vi3s_18/SceneServer/layers/0',
  geoidTiledTerrainProvider: geoidService
});
viewer.scene.primitives.add(i3sData);

Members

Gets the I3S data for this object.
Gets the extent covered by this I3S.
The terrain provider referencing the GEOID service to be used for orthometric to ellipsoidal conversion.
Gets the collection of layers.
Gets a human-readable name for this dataset.
When true, the I3S scene is loaded. This is set to true right before I3SDataProvider#readyPromise is resolved.
Gets the promise that will be resolved when the I3S scene is loaded.
The resource used to fetch the I3S dataset.
Determines if the dataset will be shown.
Gets or sets debugging and tracing of I3S fetches.

Methods

Destroys the WebGL resources held by this object. Destroying an object allows for deterministic release of WebGL resources, instead of relying on the garbage collector to destroy this object.

Once an object is destroyed, it should not be used; calling any function other than isDestroyed will result in a DeveloperError exception. Therefore, assign the return value (undefined) to the object as done in the example.

Throws:
  • DeveloperError : This object was destroyed, i.e., destroy() was called.
See:

isDestroyed()Boolean

Returns true if this object was destroyed; otherwise, false.

If this object was destroyed, it should not be used; calling any function other than isDestroyed will result in a DeveloperError exception.

Returns:
true if this object was destroyed; otherwise, false.
See:
Need help? The fastest way to get answers is from the community and team on the Cesium Forum.