sampleTerrain (terrainProvider, level, positions) → Promise.<Array.< Cartographic >>
对
Cartographic
位置数组进行地形高度查询向地形提供者请求图块,采样和插值。插值与用于在指定级别渲染地形的三角形匹配。查询异步发生,因此此函数返回一个promise,当查询完成。每个点的高度都已修改。如果高度不能确定是因为该位置的指定级别没有可用的地形数据,或发生另一个错误,高度设置为不确定。正如典型的
Cartographic
类型,提供的高度是参考椭球上方的高度(例如
Ellipsoid.WGS84
),而不是高于平均海平面的高度。其他换句话说,如果在海洋中采样,则不一定为0.0。此功能需要如果需要精确获取地形的高度,请输入地形的详细程度作为输入尽可能(即具有最高的详细程度)使用
sampleTerrainMostDetailed
。
Name | Type | Description |
---|---|---|
terrainProvider
|
TerrainProvider | 用于查询高度的地形提供程序。 |
level
|
Number | 用于查询地形高度的地形细节级别。 |
positions
|
Array.< Cartographic > | 根据地形高度更新的位置。 |
Returns:
查询完成后,可解析为提供的位置列表的承诺。
Example:
// Query the terrain height of two Cartographic positions
var terrainProvider = Cesium.createWorldTerrain();
var positions = [
Cesium.Cartographic.fromDegrees(86.925145, 27.988257),
Cesium.Cartographic.fromDegrees(87.0, 28.0)
];
var promise = Cesium.sampleTerrain(terrainProvider, 11, positions);
Cesium.when(promise, function(updatedPositions) {
// positions[0].height and positions[1].height have been updated.
// updatedPositions is just a reference to positions.
});