Terrain

new Cesium.Terrain(terrainProviderPromise)

用于管理 terrain 提供程序的异步操作的帮助程序。
Name Type Description
terrainProviderPromise Promise.<TerrainProvider> A promise which resolves to a terrain provider
Examples:
// Create
const viewer = new Cesium.Viewer("cesiumContainer", {
  terrain: new Cesium.Terrain(Cesium.CesiumTerrainProvider.fromUrl("https://myTestTerrain.com"));
});
// Handle loading events
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(`Encountered an error while loading terrain tiles! ${error}`);
  });
});

terrain.errorEvent.addEventListener(error => {
  alert(`Encountered an error while creating terrain! ${error}`);
});
See:

Members

获取 terrain 提供程序遇到异步错误时引发的事件。 通过订阅 时,您将收到错误通知,并可能从中恢复。 事件侦听器 的实例。
为地球提供表面几何图形的 terrain 提供程序。在引发 Terrain.readyEvent 之前不要使用。

readonly ready : boolean

成功创建 terrain 提供程序后返回 true。否则,返回 false。
获取在成功创建 terrain 提供程序时引发的事件。事件侦听器 的 TerrainProvider 的创建实例。

Methods

static Cesium.Terrain.fromWorldBathymetry(options)Terrain

为 {@link@link https://cesium.com/content/#cesium-world-bathymetry|Cesium World Bathymetry}.
Name Type Description
options Object optional 对象,具有以下属性:
Name Type Default Description
requestVertexNormals Boolean false optional 指示客户端是否应从服务器请求其他照明信息(如果可用)的标志。
Returns:
CesiumTerrainProvider 的异步辅助对象
Examples:
// Create Cesium World Bathymetry with default settings
const viewer = new Cesium.Viewer("cesiumContainer", {
  terrain: Cesium.Terrain.fromWorldBathymetry)
});
// Create Cesium World Terrain with normals.
const viewer1 = new Cesium.Viewer("cesiumContainer", {
  terrain: Cesium.Terrain.fromWorldBathymetry({
     requestVertexNormals: true
   });
});
// Handle loading events
const bathymetry = Cesium.Terrain.fromWorldBathymetry();

scene.setTerrain(bathymetry);

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

  bathymetry.provider.errorEvent.addEventListener(error => {
    alert(`Encountered an error while loading bathymetric terrain tiles! ${error}`);
  });
});

bathymetry.errorEvent.addEventListener(error => {
  alert(`Encountered an error while creating bathymetric terrain! ${error}`);
});
See:

static Cesium.Terrain.fromWorldTerrain(options)Terrain

为 {@link@link https://cesium.com/content/#cesium-world-terrain|Cesium 世界地形}。
Name Type Description
options Object optional 对象,具有以下属性:
Name Type Default Description
requestVertexNormals Boolean false optional 指示客户端是否应从服务器请求其他照明信息(如果可用)的标志。
requestWaterMask Boolean false optional 指示客户端是否应从服务器请求每个图块水面具(如果可用)的标志。
Returns:
CesiumTerrainProvider 的异步辅助对象
Examples:
// Create Cesium World Terrain with default settings
const viewer = new Cesium.Viewer("cesiumContainer", {
  terrain: Cesium.Terrain.fromWorldTerrain()
});
// Create Cesium World Terrain with water and normals.
const viewer1 = new Cesium.Viewer("cesiumContainer", {
  terrain: Cesium.Terrain.fromWorldTerrain({
     requestWaterMask: true,
     requestVertexNormals: true
   });
});
// Handle loading events
const terrain = Cesium.Terrain.fromWorldTerrain();

scene.setTerrain(terrain);

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

  terrain.provider.errorEvent.addEventListener(error => {
    alert(`Encountered an error while loading terrain tiles! ${error}`);
  });
});

terrain.errorEvent.addEventListener(error => {
  alert(`Encountered an error while creating terrain! ${error}`);
});
See:

Type Definitions

Cesium.Terrain.ErrorEventCallback(err)

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

Cesium.Terrain.ReadyEventCallback(provider)

在创建提供程序时调用的函数
This:
Name Type Description
provider TerrainProvider 创建的 terrain 提供程序。
Need help? The fastest way to get answers is from the community and team on the Cesium Forum.