首页 > 其他 > 详细

cesium【04-自定义图层选择器】

时间:2020-04-18 23:30:45      阅读:178      评论:0      收藏:0      [点我收藏+]

自定义baseLayerPicker(图层选择器)

设置自定义图层需要设置 imageryProviderViewModels属性,前提是baseLayerPicker =true(图层选择器)

设置地形需要terrainProviderViewModels属性

技术分享图片

 

 

var viewer = new Cesium.Viewer(‘cesiumContainer‘,{
    //图层选择器
    baseLayerPicker:true,
    //获取或设置可用于图像选择的ProviderViewModel实例数组。
    imageryProviderViewModels:getImageryProviderArr(),
    //获取或设置可用于地形选择的ProviderViewModel实例数组。
    terrainProviderViewModels:getTerrainProviderViewModelsArr(),
});

//图层
function getImageryProviderArr(){
    return [
        new Cesium.ProviderViewModel({
            //图层的名称。
            name:‘图层一‘,
            //显示项目被隐藏的工具提示
            tooltip:‘图层一‘,
            //代表图层的图标
            iconUrl:‘img/1.jpg‘,
            //一个函数或命令,用于创建一个或多个提供程序,这些提供程序将在选择此项目时添加到地球仪中。
            creationFunction:function(){
                return new Cesium.ArcGisMapServerImageryProvider({
                    url:‘https://services.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer‘
                })
            }
        }),
        new Cesium.ProviderViewModel({
            //图层的名称
            name:‘图层二‘,
            //显示项目被隐藏的工具提示
            tooltip:‘图层二‘,
            //代表图层的图标
            iconUrl:‘img/2.jpg‘,
            //一个函数或命令,用于创建一个或多个提供程序,这些提供程序将在选择此项目时添加到地球仪中
            creationFunction:function(){
                return new Cesium.ArcGisMapServerImageryProvider({
                    url:‘https://services.arcgisonline.com/ArcGIS/rest/services/World_Street_Map/MapServer‘,
                })
            }
        })
    ]
}

//地形
function getTerrainProviderViewModelsArr(){
    return[
        new Cesium.ProviderViewModel({
            //图层的名称
            name:‘无地形‘,
            //显示项目被隐藏的工具提示
            tooltip:‘WGS84标准球体‘,
            //代表图层的图标
            iconUrl:‘img/3.jpg‘,
            //一个函数或命令,用于创建一个或多个提供程序,这些提供程序将在选择此项目时添加到地球仪中
            creationFunction:function(){
                return new Cesium.EllipsoidTerrainProvider({
                    ellipsoid:Cesium.Ellipsoid.WGS84
                })
            }
        }),
        new Cesium.ProviderViewModel({
            //图层的名称
            name:‘地形‘,
            //显示项目被隐藏的工具提示
            tooltip:‘STK在线地形‘,
            //代表图层的图标
            iconUrl:‘img/4.jpg‘,
            //一个函数或命令,用于创建一个或多个提供程序,这些提供程序将在选择此项目时添加到地球仪中
            creationFunction:function(){
                return new Cesium.CesiumTerrainProvider({
                    url:Cesium.IonResource.fromAssetId(1),
                    requestWaterMask:!0,
                    requestVertexNormals:!0
                })
            }
        })
    ]
}

 

cesium【04-自定义图层选择器】

原文:https://www.cnblogs.com/MaShuai666/p/12727844.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!