代码改变世界

影像服务——加载CESIUM自带的影像服务

2019-03-01 08:47  yangol  阅读(2215)  评论(0编辑  收藏  举报

1、加载arcgis数据——ArcGisMapServerImageryProvider

var viewer = new Cesium.Viewer("cesiumDiv",{
imageryProvider:new Cesium.ArcGisMapServerImageryProvider({
                url:'http://atlasmaps.esri.com/arcgis/rest/services/Esri/USA_Population_Density/MapServer',
                enablePickFeatures:false
     }),
             baseLayerPicker:false  //这句不加可能会出错
});
2、加载OSM数据——createOpenStreetMapImageryProvider
var viewer = new Cesium.Viewer("cesiumDiv",{
imageryProvider:new Cesium.createOpenStreetMapImageryProvider({
                url:'https://a.tile.openstreetmap.org/'
            }),
            baseLayerPicker:false
});
3、加载MapBox数据——MapboxImageryProvider
var viewer = new Cesium.Viewer("cesiumDiv",{
imageryProvider:new Cesium.MapboxImageryProvider({
                mapId:'mapbox.satellite'
            }),
            baseLayerPicker:false
});
4、加载离线的影像服务——SingleTileImageryProvider

在Provider上多做一些文章,比如搞一张透明的图片,达到一些虚幻的效果,

或者在近地面实现一种类似平面的浏览效果,毕竟2D和3D在相机,数据单位上是有区别的。

比如隐藏地球主体后,叠加一些矢量面,突出主题.

var viewer = new Cesium.Viewer("cesiumDiv",{
    skyBox:false,
            skyAtmosphere:false,
            baseLayerPicker:false,
            imageryProvider:new Cesium.SingleTileImageryProvider({
                url:'globe.jpg'
            }),
            contextOptions:{
                webgl:{
                    alpha:true
                }
            }
});
viewer.scene.backgroundColor = Cesium.Color.TRANSPARENT;    //背景色变成近似白色
viewer.scene.globe.baseColor = Cesium.Color.TRANSPARENT;