cesium 实战系列之地形

cesium 实战系列之地形 cesium三维地形属于webGL要想加载地形一定要在初始化的时候将webgl打开一个是cesium参数中添加viewer new Cesium.Viewer(cesiumContainer, { geocoder: false, sceneModePicker: false, baseLayerPicker: false, navigationHelpButton: false, animation: false, skyBox: false, //隐藏天空盒 imageryProvider: false, homeButton: false, orderIndependentTranslucency: false, contextOptions: { webgl: { alpha: true, } }, fullscreenButton: false, timeline: true, selectionIndicator: false, infoBox: false })再一个所运行的浏览器或者电脑要支持webgl有些软件内运行需要打开webgl配置重启软件才会生效如浙政钉。常规加载地形//移除三维地形 function removeTerrain() { var ellipsoidProvider new Cesium.EllipsoidTerrainProvider({ name: temp_terrian, }); window.viewer.terrainProvider ellipsoidProvider; window.viewer.scene.globe.depthTestAgainstTerrain false; } //添加地形 function addTerrain(baseUrl) { //加载全球dem // var terrainProvider new Cesium.createWorldTerrain({ // requestVertexNormals: true, //开启地形光照 // requestWaterMask: true, // 开启水面波纹 // }) //加载dem服务 var terrainProvider new Cesium.CesiumTerrainProvider({ url: baseUrl /dem/quzhoudem, requestWaterMask: true, // 请求水体效果所需要的海岸线数据 requestVertexNormals: true, // 请求地形照明数据 }); terrainProvider.maximumLevel 16; window.viewer.terrainProvider terrainProvider; window.viewer.scene.globe.depthTestAgainstTerrain true; // 启用深度测试让地形后面的东西消失。 // window.viewer.scene.globe.enableLighting true; // 对大气和雾启用动态照明效果 }效果地形夸张有些时候为了让地形更加具有冲击力会采用地形夸张的方法其实地形夸张只需要添加一个配置terrainExaggeration: 8,//夸张倍数效果