CustomHeightmapTerrainProvider

new Cesium.CustomHeightmapTerrainProvider(options)

一个简单的 TerrainProvider,通过回调函数获取高度值。 它可用于程序化生成地形,或在不创建 TerrainProvider 子类的情况下加载自定义高度图数据。 存在一些限制,例如不支持水掩码、顶点法线和可用性,因此对于这些更复杂的用例,完整的 TerrainProvider 子类更为合适。
Name Type Description
options object 包含以下属性的对象:
Name Type Default Description
callback CustomHeightmapTerrainProvider.GeometryCallback 用于请求瓦片几何体的回调函数。
width number 每个高度图瓦片的列数。
height number 每个高度图瓦片的行数。
tilingScheme TilingScheme optional 指定椭球表面如何分割为瓦片的瓦片方案。如果未提供此参数,则使用 GeographicTilingScheme
ellipsoid Ellipsoid Ellipsoid.default optional 椭球。如果指定了 tilingScheme,则此参数将被忽略,改用瓦片方案的椭球。如果两个参数均未指定,则使用默认椭球。
credit Credit | string optional 数据源的版权信息,将显示在画布上。
Example:
const viewer = new Cesium.Viewer("cesiumContainer", {
  terrainProvider: new Cesium.CustomHeightmapTerrainProvider({
    width: 32,
    height: 32,
    callback: function (x, y, level) {
      return new Float32Array(32 * 32); // all zeros
    },
  }),
});
See:

Members

获取一个可用于确定此提供程序地形可用性的对象,例如在点和矩形区域中查询可用性。 如果不可用性信息,则此属性可能为 undefined。
获取当地形提供程序处于活动状态时要显示的版权信息。通常用于标注地形的来源。
获取当地形提供程序遇到异步错误时引发的事件。通过订阅此事件,您将收到错误通知并可能从中恢复。事件监听器会接收到一个 TileProviderError 实例。

readonly hasVertexNormals : boolean

获取一个值,指示请求的瓦片是否包含顶点法线。 CustomHeightmapTerrainProvider 不支持顶点法线,因此返回值始终为 false。
获取一个值,指示提供程序是否包含水掩码。水掩码用于标识地球表面哪些区域是水域而非陆地, 从而可以将其渲染为带有动画波纹的反射表面。 CustomHeightmapTerrainProvider 不支持水掩码,因此返回值始终为 false。
获取每个高度图瓦片的行数。
获取此提供程序使用的瓦片方案。
获取每个高度图瓦片的列数。

Methods

getLevelMaximumGeometricError(level)number

获取给定层级瓦片允许的最大几何误差。
Name Type Description
level number 要获取最大几何误差的瓦片层级。
Returns:
最大几何误差。

getTileDataAvailable(x, y, level)boolean|undefined

确定瓦片的数据是否可供加载。
Name Type Description
x number 请求几何体瓦片的 X 坐标。
y number 请求几何体瓦片的 Y 坐标。
level number 请求几何体瓦片的层级。
Returns:
如果不支持则返回 undefined,否则返回 true 或 false。

loadTileDataAvailability(x, y, level)undefined|Promise.<void>

确保我们为瓦片加载可用性数据。
Name Type Description
x number 请求几何体瓦片的 X 坐标。
y number 请求几何体瓦片的 Y 坐标。
level number 请求几何体瓦片的层级。
Returns:
如果没有需要加载的内容则返回 undefined,否则返回当所有必需瓦片加载完成时解析的 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

Cesium.CustomHeightmapTerrainProvider.GeometryCallback(x, y, level)Int8Array|Uint8Array|Int16Array|Uint16Array|Int32Array|Uint32Array|Float32Array|Float64Array|Array.<number>|Promise.<(Int8Array|Uint8Array|Int16Array|Uint16Array|Int32Array|Uint32Array|Float32Array|Float64Array|Array.<number>)>|undefined

Name Type Description
x number 请求几何体瓦片的 X 坐标。
y number 请求几何体瓦片的 Y 坐标。
level number 请求几何体瓦片的层级。
Returns:
行主序的高度数组或对应的 Promise。如果返回 undefined,则地球将渲染父瓦片。
Need help? The fastest way to get answers is from the community and team on the Cesium Forum.