• Cesium教程10把影像和天空改成背景图片


    在使用Cesium引擎时,我们经常要使用大屏适配导致地球或者模型的黑色天空盒和大屏的样式不匹配造成场景不好看的情况,这样就可以用到我们修改Cesium的天空为纯色背景,与大屏更适配,直接上代码。

    <!DOCTYPE html>
    <html xmlns="http://www.w3.org/1999/xhtml">
    
    <head>
      <meta charset="UTF-8" />
      <meta http-equiv="X-UA-Compatible" content="IE=edge" />
      <meta name="viewport"
        content="width=device-width, initial-scale=1, maximum-scale=1, minimum-scale=1, user-scalable=no" />
      <title>加载纯色背景</title>
      <link href="../../Build/Cesium/Widgets/widgets.css" rel="stylesheet" />
      <script src="../../Build/Cesium/Cesium.js"></script>
      <style>
        html,
        body,
        #cesiumContainer {
           100%;
          height: 100%;
          margin: 0;
          padding: 0;
          overflow: hidden;
        }
      </style>
    </head>
    
    <body>
     <!-- 设置你需要的背景图片 -->
      <div id="cesiumContainer" class="fullSize" style="background-image: url(../../img/back.png);"></div>
      <script>
        var viewer = new Cesium.Viewer('cesiumContainer', {
          //需要进行可视化的数据源的集合
          selectionIndicator: false,//关闭绿色点击框
          animation: false, //是否显示动画控件
          shouldAnimate: true,
          homeButton: false, //是否显示Home按钮
          fullscreenButton: false, //是否显示全屏按钮
          baseLayerPicker: false, //是否显示图层选择控件
          geocoder: false, //是否显示地名查找控件
          timeline: false, //是否显示时间线控件
          sceneModePicker: false, //是否显示投影方式控件
          navigationHelpButton: false, //是否显示帮助信息控件
          infoBox: false, //是否显示点击要素之后显示的信息
          requestRenderMode: true, //启用请求渲染模式
          scene3DOnly: false, //每个几何实例将只能以3D渲染以节省GPU内存
          sceneMode: 3, //初始场景模式 1 2D模式 2 2D循环模式 3 3D模式  Cesium.SceneMode
          fullscreenElement: document.body, //全屏时渲染的HTML元素 暂时没发现用处
          //加载谷歌影像地图,UrlTemplateImageryProvider该接口是加载谷歌地图服务的接口
          imageryProvider: new Cesium.ArcGisMapServerImageryProvider({
            url: "https://map.geoq.cn/arcgis/rest/services/ChinaOnlineStreetPurplishBlue/MapServer",
          }),
          //需要纯色背景必须设置
          contextOptions: {
            webgl: {
              alpha: true,
            }
          },
        })
        viewer.scene.skyBox.show = false //关闭天空盒,否则会显示天空颜色
        //背景透明
        viewer.scene.backgroundColor = new Cesium.Color(0.0, 0.0, 0.0, 0.0);
        
        //关闭大气
        viewer.scene.skyAtmosphere.show = false
        //抗锯齿
        viewer.scene.fxaa = true;
        viewer.scene.postProcessStages.fxaa.enabled = true;
        //清除月亮太阳
        viewer.scene.moon.show = false
        viewer.scene.sun.show = false
      </script>
    </body>
    
    </html>
  • 相关阅读:
    【BZOJ1452】【JSOI2009】count
    【BZOJ1030】【JSOI2007】文本生成器
    【BZOJ2427】【HAOI2010】软件安装
    从【BZOJ4173】谈做题技巧
    小A的旅行(绿豆蛙的归宿)【期望DP】
    甜点 【多重背包】
    洛谷 [P1154] 奶牛分厩
    POJ [P2631] Roads in the North
    洛谷 [P3258] 松鼠的新家
    洛谷 [P3398] 仓鼠找sugar
  • 原文地址:https://www.cnblogs.com/tiandi/p/16824488.html
Copyright © 2020-2023  润新知