• Cesium 初始化Viewer


    <pre name="code" class="javascript"><script>  
        var viewer = new Cesium.Viewer('cesiumContainer');  
         viewer._cesiumWidget._creditContainer.style.display="none";   
      </script></pre>  
    <pre></pre>  
    <p><br>  
    </p>  
    <pre></pre>  
            仅仅一句代码我们就可以加载进来一个地球和各种地图,但是有很多功能可能是需要关闭或者开启的~  
    <p></p>  
    <p>        详细的设置可以参考如下,这部分内容我没有再去查API,而是直接引用了GISEarth的博客中的这部分说明,供大家参考。由于我不需要多余的按钮,所以我就把Cesium本来带的组件全部隐藏啦~</p>  
    <p></p>  
    <pre name="code" class="javascript">var viewer = new Cesium.Viewer( 'cesiumContainer', {    
        animation : false,//是否创建动画小器件,左下角仪表    
        baseLayerPicker : false,//是否显示图层选择器    
        fullscreenButton : false,//是否显示全屏按钮    
        geocoder : false,//是否显示geocoder小器件,右上角查询按钮    
        homeButton : false,//是否显示Home按钮    
        infoBox : false,//是否显示信息框    
        sceneModePicker : false,//是否显示3D/2D选择器    
        selectionIndicator : false,//是否显示选取指示器组件    
        timeline : false,//是否显示时间轴    
        navigationHelpButton : false,//是否显示右上角的帮助按钮    
        scene3DOnly : true,//如果设置为true,则所有几何图形以3D模式绘制以节约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 : '//192.168.0.89:5539/planet-satellite/'    
        } ),//图像图层提供者,仅baseLayerPicker设为false有意义    
        terrainProvider : new Cesium.EllipsoidTerrainProvider(),//地形图层提供者,仅baseLayerPicker设为false有意义    
        skyBox : new Cesium.SkyBox({    
            sources : {    
              positiveX : 'Cesium-1.7.1/Skybox/px.jpg',    
              negativeX : 'Cesium-1.7.1/Skybox/mx.jpg',    
              positiveY : 'Cesium-1.7.1/Skybox/py.jpg',    
              negativeY : 'Cesium-1.7.1/Skybox/my.jpg',    
              positiveZ : 'Cesium-1.7.1/Skybox/pz.jpg',    
              negativeZ : 'Cesium-1.7.1/Skybox/mz.jpg'    
            }    
        }),//用于渲染星空的SkyBox对象    
        fullscreenElement : document.body,//全屏时渲染的HTML元素,    
        useDefaultRenderLoop : true,//如果需要控制渲染循环,则设为true    
        targetFrameRate : undefined,//使用默认render loop时的帧率    
        showRenderLoopErrors : false,//如果设为true,将在一个HTML面板中显示错误信息    
        automaticallyTrackDataSourceClocks : true,//自动追踪最近添加的数据源的时钟设置    
        contextOptions : undefined,//传递给Scene对象的上下文参数(scene.options)    
        sceneMode : Cesium.SceneMode.SCENE3D,//初始场景模式    
        mapProjection : new Cesium.WebMercatorProjection(),//地图投影体系    
        dataSources : new Cesium.DataSourceCollection()    
        //需要进行可视化的数据源的集合    
    } );    
    </pre><br>  
    <p></p>  
    <p>        对camera进行设置,我们就可以定义初始化时的镜头、视角~下面这段代码就是将镜头定位在经纬度为(111.07,39.05)的地方,高度为1万公里,下面的heading、pitch和roll就是镜头相对于xyz轴的角度,比如pitch为-90°而另外两个为0时,就是90°向下俯视地球。</p>  
    <p></p>  
    <pre name="code" class="javascript">        viewer.camera.setView({  
                destination: Cesium.Cartesian3.fromDegrees(111.07, 39.05, 10000),  
                orientation: {  
                    heading : Cesium.Math.toRadians(0),  
                pitch : Cesium.Math.toRadians(-90),  
                roll : Cesium.Math.toRadians(0)                            
                }  
            });  </pre>          
    <p></p>  
    <p>        最后得到的就是下图所示的效果,很多按钮都被隐藏了,打开时也不再是整个地球,而是只有我需要的这一小部分,这样子就更方便后面的操作啦~</p>  
    <p>        ps:如果是没有学过web的初学者,上面那一大串代码都放在<script></script>标签里就可以啦~当年我是纯小白的时候,看到一段一段的代码也是云里雾里,因为总是不知道放在哪里>///<<br>  
    <img src="http://img.blog.csdn.net/20171018161516803?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvemx4MzEy/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt=""><br>  
    </p>  
    <p>这一节就到这里啦,地图有了,下一步就是希望在gis地图上搞事情啦啦啦~~</p>  
    <link rel="stylesheet" href="http://static.blog.csdn.net/public/res-min/markdown_views.css?v=2.0"> 

    原文:http://blog.csdn.net/zlx312/article/details/78273537

  • 相关阅读:
    clear session on close of browser jsp
    [SQL Server]从 varchar 数据类型到 datetime 数据类型的转换产生一个超出范围的值。
    Windows Server 2012上安装.NET Framework 3.5
    SqlServer安装时的选项说明
    js 动态控制 input 框 的只读属性
    svn备份与还原_脚本_(dump命令)
    几种任务调度的 Java 实现方法与比较
    在WordPress正文顶端或者末尾插入固定的内容
    TODO
    fileUpload(草稿)
  • 原文地址:https://www.cnblogs.com/xulei1992/p/7729117.html
Copyright © 2020-2023  润新知