sampleTerrain(terrainProvider, level, positions) → Promise.<Array.<Cartographic>>
为
Cartographic
位置数组发起地形高度查询。
从地形提供程序请求贴图,采样和插值。插值匹配用于在指定关卡渲染地形的三角形。
查询异步发生,因此此函数返回一个Promise,该Promise在查询完成时每个点的高度都被就地修改。
若光有高度可不行,由于没有该地点指定级别的地形数据,或者发生其他错误,高度设置为未定义。
是典型的Cartographic
类型,提供的高度是参考椭球之上的高度(例如Ellipsoid.WGS84
),而不是平均海平面以上的高度。如果在海洋中取样,它不一定是0.0。
Name | Type | Description |
---|---|---|
terrainProvider |
TerrainProvider | 用于查询高度信息的地形Provider。 |
level |
Number | The terrain 用于查询地形高度的详细级别。 |
positions |
Array.<Cartographic> | 要用地形高度更新的位置。 |
Returns:
当地形查询完成时解析到所提供的位置列表的Promise。
Example:
// Query the terrain height of two Cartographic positions
var terrainProvider = new SuperMap3D.SuperMapTerrainProvider({
url : 'https://assets.agi.com/stk-terrain/v1/tilesets/world/tiles'
});
var positions = [
SuperMap3D.Cartographic.fromDegrees(86.925145, 27.988257),
SuperMap3D.Cartographic.fromDegrees(87.0, 28.0)
];
var promise = SuperMap3D.sampleTerrain(terrainProvider, 11, positions);
SuperMap3D.when(promise, function(updatedPositions) {
// positions[0].height and positions[1].height have been updated.
// updatedPositions is just a reference to positions.
});