Cesium Viewer常用属性介绍

2020-03-01  本文已影响0人  写前端的大叔

之前在做大屏系统的时候,包含了一个三维地图,前端使用的地图引擎用的是Cesium,一直想抽时间来研究下Cesium,作为三维地图,以后的用途就会越来越广,还是很有必要来好好深耕的。Cesium是一款开源的基于JavaScript3D地图框架。其实他就是一个地图可视化框架,CesiumJS 是一款用于创建虚拟场景的3D地理信息平台。目标是用于创建以基于 Web的地图动态数据可视化。目前尽力提升平台的性能、准确率、虚拟化能力、易用性以及平台的各种支持。其中ViewerCesium渲染器的核心功能,直接将地图和场景显示在浏览器中。下面对Viewer中的属性做了简单介绍,方便以后配置相关参数的时候能用到。

var viewer = new Cesium.Viewer('cesiumContainer',{
        animation:false,//是否显示左下角的仪表盘
        baseLayerPicker:false,//是否显示图层选择器按钮,右上角那个地图图标
        fullscreenButton:false,//是否显示全屏按钮
        vrButton:false,//是否显示VR按钮
        geocoder:false,//是否显示搜索按钮
        homeButton:false,//是否显示主页按钮
        infoBox:false,//是否显示提示信息
        sceneModePicker:false,//是否显示右上角的模式切换按钮
        selectionIndicator:false,//是否显示选取指示器组件
        timeline:false,//是否显示下边的时间轴
        navigationHelpButton:false,//是否显示右上角的帮助按钮
        navigationInstructionsInitiallyVisible:true,//是不显示导航
        scene3DOnly:true,//是否指定仅为三维模式,全部使用三维模式可节约GPU资源
        clock : new Cesium.Clock(),//用于控制当前时间的时钟对象  
        selectedImageryProviderViewModel:undefined,//当前图象图层的显示模型,设置baseLayerPicker为true才生效
        imageryProviderViewModels : Cesium.createDefaultImageryProviderViewModels(),//可供BaseLayerPicker选择的图像图层ProviderViewModel数组
        selectedTerrainProviderViewModel:undefined,//当前地形图层的显示模型,设置baseLayerPicker为true才生效
        terrainProviderViewModels:Cesium.createDefaultTerrainProviderViewModels(),//可供BaseLayerPicker选择的地形图层ProviderViewModel数组
        // imageryProvider : new Cesium.OpenStreetMapImageryProvider( {    
        //     credit :'',    
        //     url : ''    
        // } ),//图像图层提供者
        terrainProvider : new Cesium.EllipsoidTerrainProvider(),//地形图层提供者,
        // skyBox : new Cesium.SkyBox({    
        //     sources : {
        //         positiveX : 'stars/TychoSkymapII.t3_08192x04096_80_px.jpg',
        //         negativeX : 'stars/TychoSkymapII.t3_08192x04096_80_mx.jpg',
        //         positiveY : 'stars/TychoSkymapII.t3_08192x04096_80_py.jpg',
        //         negativeY : 'stars/TychoSkymapII.t3_08192x04096_80_my.jpg',
        //         positiveZ : 'stars/TychoSkymapII.t3_08192x04096_80_pz.jpg',
        //         negativeZ : 'stars/TychoSkymapII.t3_08192x04096_80_mz.jpg'
        //     } 
        // }),//用于渲染星空的SkyBox对象  
        skyAtmosphere:new Cesium.SkyAtmosphere(),//设置天空大气层
        fullscreenElement:document.body,//全屏时指定的元素
        useDefaultRenderLoop:true,//是否开启默认的循环渲染器
        targetFrameRate:10,//使用默认渲染循环时的目标帧速率
        showRenderLoopErrors:true,//显示渲染错误信息
        useBrowserRecommendedResolution:false,//使用浏览器的分辨率进行渲染
        automaticallyTrackDataSourceClocks : true,//自动追踪最近添加的数据源的时钟设置  
        contextOptions : undefined,//传递给Scene对象的上下文参数
        sceneMode:Cesium.SceneMode.SCENE3D,//设置地图场景模式
        mapProjection:new Cesium.GeographicProjection(),//设置地图投影坐标系
        // globe:false,//在场景中使用的地球仪。如果设置为false,则不会添加地球仪。
        orderIndependentTranslucency:true,//设置无关的透明性
        creditContainer:null,//设置包含CreditDisplay的DOM元素或ID。
        dataSources:new Cesium.DataSourceCollection(),//设置数据源
        terrainExaggeration:1.0,//用来放大地形的标量
        shadows:true,//设置阴影是否由光源投射。
        terrainShadows:Cesium.ShadowMode.RECEIVE_ONLY,//设置地形图的阴影
        mapMode2D:Cesium.MapMode2D.INFINITE_SCROLL,//设置二维地图是可旋转的还是可以在水平方向无限滚动。
        projectionPicker:false,//是否显示投影选择器
        requestRenderMode:true,//如果为true,则仅当根据场景中的更改确定需要时才会渲染帧
        maximumRenderTimeChange:true,//设置请求呈现之前允许的最大模拟时间更改
    });
上一篇下一篇

猜你喜欢

热点阅读