Cesium中的影像图层类
Cesium为我们提供了ImageryLayer、ImageryLayerCollection、ImageryProvider类来加载不同的影像图层 cesium.xin/cesium/en/D…
ArcGisMapServerImageryProvider
ArcGIS在线影像底图
this.viewer.imageryLayers.addImageryProvider(
new ArcGisMapServerImageryProvider({
url: 'http://services.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer',
})
);
WebMapTileServiceImageryProvider
提供由 WMTS 1.0.0 兼容服务器提供的平铺图像。该提供程序支持HTTP KVP编码和RESTful GetTile请求,但尚不支持SOAP编码。比如加载国内的天地图
let url =
'http://t0.tianditu.com/img_w/wmts?service=wmts&request=GetTile&version=1.0.0&LAYER=img&tileMatrixSet=w&TileMatrix={TileMatrix}&TileRow={TileRow}&TileCol={TileCol}&style=default&format=tiles&tk=';
this.viewer.imageryLayers.addImageryProvider(
new WebMapTileServiceImageryProvider({
url: url + this.optionConfig.mapOptions.mapToken,
layer: 'img',
style: 'default',
format: 'tiles',
tileMatrixSetID: 'w',
credit: new Credit('天地图全球影像服务'),
subdomains: ['t0', 't1', 't2', 't3', 't4', 't5', 't6', 't7'],
maximumLevel: 18,
})
UrlTemplateImageryProvider
通过使用指定的URL模板请求图块来提供图像。比如高度地图,google地图等
// 高德地图
this.viewer.imageryLayers.addImageryProvider(
new UrlTemplateImageryProvider({
url: 'https://webst02.is.autonavi.com/appmaptile?style=6&x={x}&y={y}&z={z}',
})
);
// google地图
this.viewer.imageryLayers.addImageryProvider(
new UrlTemplateImageryProvider({
url: 'http://www.google.cn/maps/vt?lyrs=s@800&x={x}&y={y}&z={z}',
tilingScheme: new WebMercatorTilingScheme(),
minimumLevel: 1,
maximumLevel: 20,
})
);
Cesium(1.75版本)支持14种类型的影像图层。目前这几个已经基本满足需求,更多类型的影像图层使用还有待挖掘。