CesiumTerrainProvider
是 Cesium
中用于加载地形数据的提供者。此提供者可以加载本地的 Terrain
数据,也可以加载网络上的 Terrain
数据服务。
new Cesium.CesiumTerrainProvider(options);
options
:Object
类型,包含以下属性之一或多个,表示构造函数的选项。
url
:String
类型,加载 Terrain
数据的服务地址。默认值为 undefined
。requestVertexNormals
:Boolean
类型,表示是否请求三角形面的法线数据。默认值为 false
。requestWaterMask
:Boolean
类型,表示是否请求水面的蒙版数据。默认值为 false
。requestTileGeometry
:Boolean
类型,表示是否请求每个瓦片的几何数据。默认值为 true
。var terrainProvider = new Cesium.CesiumTerrainProvider({
url : '//assets.agi.com/stk-terrain/world'
});
ready
:Boolean
类型,表示当前 Terrain
数据是否已经加载完成。credit
:Credit
类型,表示加载的 Terrain
数据来源的版权信息。requestTileGeometry(x, y, level, throttleRequests)
:请求指定瓦片的几何数据。
x
:Number
类型,表示瓦片所处的列号。y
:Number
类型,表示瓦片所处的行号。level
:Number
类型,表示瓦片所处的层级。throttleRequests
:Boolean
类型,表示是否限制同时请求的瓦片个数。默认为 true
。Promise
类型,包含以下属性。
url
:String
类型,表示请求的数据地址。headers
:Object
类型,表示请求的头信息。buffer
:ArrayBuffer
类型,表示请求得到的原始数据。error
:Error
类型,表示请求过程中的错误信息。function requestTile(terrainProvider, x, y, level) {
var promise = terrainProvider.requestTileGeometry(x, y, level);
if (!Cesium.defined(promise)) {
return;
}
promise.then(function(data) {
// TODO:使用请求得到的瓦片几何数据。
}).otherwise(function(error) {
console.log(error);
});
}