要构造一个 CesiumTerrainProvider,请调用
一个 CesiumTerrainProvider.fromIonAssetId 或 CesiumTerrainProvider.fromUrl。请勿直接调用构造函数。
TerrainProvider,用于访问 Cesium 地形格式的地形数据。
地形格式可以是以下之一:
| Name | Type | Description |
|---|---|---|
options |
CesiumTerrainProvider.ConstructorOptions | optional 描述初始化选项的对象 |
- createWorldTerrain
- CesiumTerrainProvider.fromUrl
- CesiumTerrainProvider.fromIonAssetId
- TerrainProvider
Example:
// Create Arctic DEM terrain with normals.
try {
const viewer = new Cesium.Viewer("cesiumContainer", {
terrainProvider: await Cesium.CesiumTerrainProvider.fromIonAssetId(3956, {
requestVertexNormals: true
})
});
} catch (error) {
console.log(error);
}
See:
Members
readonly availability : TileAvailability
获取一个可以用来确定此提供者的地形可用性的对象,例如在点和矩形中。
如果没有可用性信息,则此属性可能是未定义的。请注意,这反映了当前已知可用的瓦片。
未来可能会发现更多可用的瓦片,例如,如果可用性信息存在于树的更深层,而不是都可以在根部发现。但是,现在可用的瓦片在将来不会变为不可用。
readonly credit : Credit
获取当该地形提供者处于活动状态时显示的信用信息。通常用于表彰地形的来源。
readonly errorEvent : Event
获取当地形提供者遇到异步错误时引发的事件。通过订阅该事件,您将收到错误通知,并可以可能从中恢复。事件监听器会收到一个
TileProviderError 的实例。
获取一个值,指示请求的瓦片是否包含元数据。
获取一个值,指示请求的瓦片是否包含顶点法线。
获取一个值,指示提供者是否包含水掩模。水掩模指示地球上哪些区域是水而不是陆地,以便可以将其渲染为具有动画波纹的反射表面。
布尔标志,指示客户端是否应从服务器请求元数据。
仅当客户端请求元数据且服务器提供元数据时,元数据才会附加到标准瓦片网格数据中。
布尔标志,指示客户端是否应从服务器请求顶点法线。
仅当客户端请求顶点法线且服务器提供顶点法线时,顶点法线数据才会附加到标准瓦片网格数据中。
布尔标志,指示客户端是否应从服务器请求水掩模。
仅当客户端请求水掩模且服务器提供水掩模时,水掩模数据才会附加到标准瓦片网格数据中。
readonly tilingScheme : GeographicTilingScheme
获取该提供者使用的分块方案。
Methods
static Cesium.CesiumTerrainProvider.fromIonAssetId(assetId, options) → Promise.<CesiumTerrainProvider>
从 Cesium ion 资产 ID 创建一个
TerrainProvider,以访问 Cesium 地形格式的地形数据。
地形格式可以是以下之一:
| Name | Type | Description |
|---|---|---|
assetId |
number | Cesium ion 资产 ID。 |
options |
CesiumTerrainProvider.ConstructorOptions | optional 描述初始化选项的对象。 |
Returns:
Throws:
-
RuntimeError : layer.json 未指定格式
-
RuntimeError : layer.json 指定了未知格式
-
RuntimeError : layer.json 指定了不支持的量化网格版本
-
RuntimeError : layer.json 未指定瓦片属性,或指定了空数组
-
RuntimeError : layer.json 未指定任何瓦片 URL 模板
Example:
// Create Arctic DEM terrain with normals.
try {
const viewer = new Cesium.Viewer("cesiumContainer", {
terrainProvider: await Cesium.CesiumTerrainProvider.fromIonAssetId(3956, {
requestVertexNormals: true
})
});
} catch (error) {
console.log(error);
}
static Cesium.CesiumTerrainProvider.fromUrl(url, options) → Promise.<CesiumTerrainProvider>
创建一个
TerrainProvider,用于访问 Cesium 地形格式的地形数据。
地形格式可以是以下之一:
| Name | Type | Description |
|---|---|---|
url |
Resource | String | Promise.<Resource> | Promise.<String> | Cesium 地形服务器的 URL。 |
options |
CesiumTerrainProvider.ConstructorOptions | optional 描述初始化选项的对象。 |
Returns:
Throws:
-
RuntimeError : layer.json 未指定格式
-
RuntimeError : layer.json 指定了未知格式
-
RuntimeError : layer.json 指定了不支持的量化网格版本
-
RuntimeError : layer.json 未指定瓦片属性,或指定了空数组
-
RuntimeError : layer.json 未指定任何瓦片 URL 模板
Example:
// Create Arctic DEM terrain with normals.
try {
const viewer = new Cesium.Viewer("cesiumContainer", {
terrainProvider: await Cesium.CesiumTerrainProvider.fromUrl(
Cesium.IonResource.fromAssetId(3956), {
requestVertexNormals: true
})
});
} catch (error) {
console.log(error);
}
获取给定级别的瓦片允许的最大几何误差。
| Name | Type | Description |
|---|---|---|
level |
number | 要获取最大几何误差的瓦片级别。 |
Returns:
最大几何误差。
确定瓦片的数据是否可加载。
| Name | Type | Description |
|---|---|---|
x |
number | 请求几何数据的瓦片的 X 坐标。 |
y |
number | 请求几何数据的瓦片的 Y 坐标。 |
level |
number | 请求几何数据的瓦片的级别。 |
Returns:
如果不支持或可用性未知则为 undefined,否则返回 true 或 false。
确保我们加载瓦片的可用性数据
| Name | Type | Description |
|---|---|---|
x |
number | 请求几何数据的瓦片的 X 坐标。 |
y |
number | 请求几何数据的瓦片的 Y 坐标。 |
level |
number | 请求几何数据的瓦片的级别。 |
Returns:
如果没有需要加载的内容则为 undefined,或者返回一个 Promise,该 Promise 在所有必需的瓦片加载时解析。
requestTileGeometry(x, y, level, request) → Promise.<TerrainData>|undefined
请求给定瓦片的几何数据。结果必须包含地形数据,并且可以选择性地包含水掩模和可用子瓦片的指示。
| Name | Type | Description |
|---|---|---|
x |
number | 请求几何数据的瓦片的 X 坐标。 |
y |
number | 请求几何数据的瓦片的 Y 坐标。 |
level |
number | 请求几何数据的瓦片的级别。 |
request |
Request | optional 请求对象。仅供内部使用。 |
Returns:
请求几何数据的 Promise。如果此方法返回 undefined 而不是 Promise,则表示已经有太多的请求在等待中,请求将稍后重试。
Type Definitions
CesiumTerrainProvider 构造函数的初始化选项
Properties:
| Name | Type | Attributes | Default | Description |
|---|---|---|---|---|
requestVertexNormals |
boolean |
<optional> |
false | 标志,指示客户端是否应向服务器请求额外的光照信息,以每个顶点法线的形式(如果可用)。 |
requestWaterMask |
boolean |
<optional> |
false | 标志,指示客户端是否应向服务器请求每个瓦片的水掩模(如果可用)。 |
requestMetadata |
boolean |
<optional> |
true | 标志,指示客户端是否应向服务器请求每个瓦片的元数据(如果可用)。 |
ellipsoid |
Ellipsoid |
<optional> |
Ellipsoid.default | 椭球体。如果未指定,则使用默认椭球体。 |
credit |
Credit | string |
<optional> |
数据源的信用信息,将显示在画布上。 |
