Terrain

new Cesium.Terrain(terrainProviderPromise)

用于管理地形提供者异步操作的辅助类。
Name Type Description
terrainProviderPromise Promise.<TerrainProvider> 解析为地形提供者的 Promise
Examples:
// 创建
const viewer = new Cesium.Viewer("cesiumContainer", {
  terrain: new Cesium.Terrain(Cesium.CesiumTerrainProvider.fromUrl("https://myTestTerrain.com"));
});
// 处理加载事件
const terrain = new Cesium.Terrain(Cesium.CesiumTerrainProvider.fromUrl("https://myTestTerrain.com"));

scene.setTerrain(terrain);

terrain.readyEvent.addEventListener(provider => {
  scene.globe.enableLighting = true;

  terrain.provider.errorEvent.addEventListener(error => {
    alert(`加载地形图块时遇到错误!${error}`);
  });
});

terrain.errorEvent.addEventListener(error => {
  alert(`创建地形时遇到错误!${error}`);
});
See:

Members

获取当地形提供者遇到异步错误时引发的事件。通过订阅 该事件,您将收到错误通知并有可能从中恢复。事件监听器 将接收抛出的错误实例。
为地球提供表面几何形状的地形提供者。在 Terrain.readyEvent 引发之前请勿使用。

readonly ready : boolean

当地形提供者成功创建时返回 true,否则返回 false。
获取当地形提供者成功创建时引发的事件。事件监听器 将接收创建的 TerrainProvider 实例。

Methods

static Cesium.Terrain.fromWorldBathymetry(options)Terrain

Cesium World Bathymetry 创建 Terrain 实例。
Name Type Description
options object optional 具有以下属性的对象:
Name Type Default Description
requestVertexNormals boolean false optional 标志,指示客户端是否应在可用时从服务器请求额外的光照信息。
Returns:
CesiumTerrainProvider 的异步辅助对象
Examples:
// 使用默认设置创建 Cesium World Bathymetry
const viewer = new Cesium.Viewer("cesiumContainer", {
  terrain: Cesium.Terrain.fromWorldBathymetry)
});
// 创建带有法线的 Cesium World Terrain。
const viewer1 = new Cesium.Viewer("cesiumContainer", {
  terrain: Cesium.Terrain.fromWorldBathymetry({
     requestVertexNormals: true
   });
});
// 处理加载事件
const bathymetry = Cesium.Terrain.fromWorldBathymetry();

scene.setTerrain(bathymetry);

bathymetry.readyEvent.addEventListener(provider => {
  scene.globe.enableLighting = true;

  bathymetry.provider.errorEvent.addEventListener(error => {
    alert(`加载水深地形图块时遇到错误!${error}`);
  });
});

bathymetry.errorEvent.addEventListener(error => {
  alert(`创建水深地形时遇到错误!${error}`);
});
See:

static Cesium.Terrain.fromWorldTerrain(options)Terrain

Cesium World Terrain 创建 Terrain 实例。
Name Type Description
options object optional 具有以下属性的对象:
Name Type Default Description
requestVertexNormals boolean false optional 标志,指示客户端是否应在可用时从服务器请求额外的光照信息。
requestWaterMask boolean false optional 标志,指示客户端是否应在可用时从服务器请求每个图块的水面遮罩。
Returns:
CesiumTerrainProvider 的异步辅助对象
Examples:
// 使用默认设置创建 Cesium World Terrain
const viewer = new Cesium.Viewer("cesiumContainer", {
  terrain: Cesium.Terrain.fromWorldTerrain()
});
// 创建带有水面和法线的 Cesium World Terrain。
const viewer1 = new Cesium.Viewer("cesiumContainer", {
  terrain: Cesium.Terrain.fromWorldTerrain({
     requestWaterMask: true,
     requestVertexNormals: true
   });
});
// 处理加载事件
const terrain = Cesium.Terrain.fromWorldTerrain();

scene.setTerrain(terrain);

terrain.readyEvent.addEventListener(provider => {
  scene.globe.enableLighting = true;

  terrain.provider.errorEvent.addEventListener(error => {
    alert(`加载地形图块时遇到错误!${error}`);
  });
});

terrain.errorEvent.addEventListener(error => {
  alert(`创建地形时遇到错误!${error}`);
});
See:

Type Definitions

Cesium.Terrain.ErrorEventCallback(err)

发生错误时调用的函数。
This:
Name Type Description
err Error 一个包含所发生错误详细信息的对象。

Cesium.Terrain.ReadyEventCallback(provider)

提供者创建完成时调用的函数
This:
Name Type Description
provider TerrainProvider 已创建的地形提供者。
Need help? The fastest way to get answers is from the community and team on the Cesium Forum.