博客專欄

        EEPW首頁 > 博客 > cesium導航

        cesium導航

        發布人:xyni2023 時間:2023-03-22 來源:工程師 發布文章


        b008217558d4887db701de3951497d01_2-1.png


        推薦:將 NSDT場景編輯器 加入你的3D開發工具鏈

        今天看到 Google Earth 上的導航欄,想起百度地圖,高德地圖,leaflet(插件)等等好像都有提供導航條,但是cesium官方包里面是沒有的,于是上網搜了一下,果然有個大神實現了,名字就叫Cesium-navigation,github地址,有人翻譯了這篇文章 翻譯地址

        看起來好像很簡單,下面我們來試試怎么用:

        1. 下載js文件

        可以在github上下載源碼,自己編譯,官方文檔上有寫

        How to build it?
        run npm install
        run node build.js

        這里我偷懶了,使用cnpm安裝的,當然安裝完也可以把它從node_modules中拷出來

        cnpm install cesium-navigation –save
        1. 新建示例頁面,引入js

            //必須先引入cesium
            <script src="path/to/Cesium.js"></script>
            src="path/to/standalone/viewerCesiumNavigationMixin.js"></script>
        1. 創建對象,官方提供了另種方式,一般使用viewer比較多,我們用viewer

            // 這句不解釋了
            var cesiumViewer = new Cesium.Viewer('cesiumContainer');    var options = {};    //兩種方式設置默認視圖    options.defaultResetView = Cesium.Rectangle.fromDegrees(71, 3, 90, 14);    //options.defaultResetView = new Cesium.Cartographic(Cesium.Math.toRadians(114), Cesium.Math.toRadians(33), 500);

        刷新頁面,發現。。。。。可以了,這就666了,如果使用requirejs,幫助里面也有說明,這里來補充一點東西:

        • 返回按鈕(放大縮小按鈕中間的)可以自行飛向自定義經緯度坐標

        viewer.scene.camera.flyTo({
                    destination: Cesium.Cartesian3.fromDegrees(101.88, 39.78,10000000)
                  });
        • 默認的控件都放在左下角,如果想放在別的位置怎么辦呢? 這里提供一種方式,通過修改css

        <style>
            .compass {
                position: absolute;
                left: 0;
                top: 10px;
            }
        
            .navigation-controls {
                position: absolute;
                left: 30px;
                top: 120px;
                height: 90px;
            }
        </style>

        效果圖:

        參考源碼


        *博客內容為網友個人發布,僅代表博主個人觀點,如有侵權請聯系工作人員刪除。



        關鍵詞: 編輯器 數字孿生 3D

        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 大石桥市| 泰顺县| 宽城| 中山市| 海原县| 巴林左旗| 教育| 镇江市| 阜平县| 芜湖市| 眉山市| 广汉市| 鄂尔多斯市| 苏州市| 大城县| 璧山县| 黔江区| 庆阳市| 银川市| 宁乡县| 滨州市| 普兰店市| 任丘市| 周至县| 贵州省| 宁乡县| 邢台市| 洪雅县| 阿鲁科尔沁旗| 林州市| 景谷| 古田县| 思茅市| 桐庐县| 三穗县| 图木舒克市| 卓尼县| 柳林县| 衡水市| 白城市| 额尔古纳市|