日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

局域网Cesium离线影像及瓦片影像地图加载【转】

發布時間:2023/12/20 编程问答 54 豆豆
生活随笔 收集整理的這篇文章主要介紹了 局域网Cesium离线影像及瓦片影像地图加载【转】 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

http://www.mamicode.com/info-detail-2161992.html

1、Cesium簡介

優點:

  • cesium展示地圖數據效果比較好,解析2D地圖各種不同服務類型的數據源,比如百度地圖、天地圖、arcgis地圖、BingMap、openStreetMap、MapBox等等;解析地形圖加載;解析3D模型,包括動態加載以及3Dtitles切片形式加載展示,尤其是3Dtitles,大大的加快了展示3D模型的展示效率;
  • Cesium封裝部分地圖控件,直接調用即可,不用自己寫;
  • 缺點:

  • 跟商業3DGIS軟件對比,比如skyline,cesium三維分析功能較弱, cesium官網關于三維分析的例子難以找到(需要自己底層去實現),大多是以展示數據以及渲染數據為主的例子;
  • 尚未提供交互式標繪工具Draw接口,2DGIS一般都是提供Draw工具的,比如arcgis api以及openlayer api;cesium想要繪制點、線、面,只能通過代碼來繪制,貌似不能在線手動畫;
  • 沒有地圖量算工具、地圖比例尺、拉框縮放等,這些地圖基本工具,在cesium都需要自己來寫實現。
  • ?

    ?

    2、軟件下載瓦片并發布地圖服務方式

    軟件環境:

    cesium1.25,tomcat7

    1,首先使用XX地圖下載器,破解版4.6,下載全球高德影像圖,我下載1-7級,大概幾百兆,比較快,第八級1個多G,指數級增長,學習階段不需要太多。

    下載操作:首先縮小地圖,框選全球地圖,雙擊,彈出下載頁面,經緯度可以手動調整,-180,180 -90 90,確定即可下載。其它都默認。

    2,下載完成后,如下圖:

    ?

    ?

    點擊導出按鈕,如上右圖。存儲格式選擇“瓦片:tms”,圖片格式png即可,選擇保存位置,導出。

    3,將導出的瓦片目錄復制到tomcat wabapps目錄下,文件名GlobalTMS,下面1-7級瓦片。

    4,Cesium中顯示影像,代碼如下:

    var url=‘http://localhost:8080/geoserver/wms‘; //Geoserver URL var viewer = new Cesium.Viewer(‘cesiumContainer‘,{ imageryProvider:new Cesium.WebMapServiceImageryProvider({ url : url, layers: ‘nurc:Arc_Sample‘// Here just give layer name }), baseLayerPicker:false }); var layers = viewer.imageryLayers; var blackMarble = layers.addImageryProvider(Cesium.createTileMapServiceImageryProvider({ url : ‘/GlobalTMS‘, credit : ‘北京市昌平區‘ }));

    ?5,保存文件后,顯示效果:

    ?

    ?

    3、爬蟲瓦片下載方式

    使用Cesium可以直觀的看基于DEM切片產生的Terrain地形數據,有種身臨其境的感覺,但缺點是Cesium默認缺省加載了微軟Bing提供的地形以及遙感影像數據,可以跟蹤日志,總提示讓你申請微軟的Bing地圖Key。如果Cesium在絕對離線,即不連接互聯網的情況下,第一步加載Bing地形圖時候就拋出了異常,后面的圖層也無法加載,整個地圖區域將顯示漆黑的天空,這就意味著需要在底層,取消對Bing地形圖的訪問。

      由于Cesium超乎尋常的大,未壓縮情況下有6Mb多,好處是 可以看清楚代碼結構。這樣就可以跟蹤分析,如何取消對Bing地圖的訪問(如采用一般的文本編輯器,基本會死掉,Sublime也會經常卡死,因此我使用宇宙中最強大的IDE-VS2015)。打開Cesium.js后搜索代碼行,有一個createDefaultImageryProviderViewModels函數,里面加載在線地圖服務近10多種,其中一些就是Bing地圖,還有其他互聯網在線地圖商提供的地圖服務。由于我的場景是物理隔絕的網絡,即不能使用在線地圖服務,因此,全部將這些代碼注釋掉,返回空的providerViewModels。

    ?

    ?

    ?

    注釋后保存,編寫測試代碼發現加載后的地圖有黑色天空變成了藍色,當然,很丑陋。

    為了避免藍色地球,預先加載了一張全球地圖作為背景效果如上右圖。

    接下來,采用爬蟲爬取谷歌地形圖和影像圖,硬盤越大越好,縮放級別越高越好,使用IIS發布后,調用如下接口在Cesium中顯示地形圖,代碼如下:

    ?layersTerrainMap.addImageryProvider(Cesium.createTileMapServiceImageryProvider({
    ?  url: ‘http://192.168.198.183/Google_DEM/‘,
    ?  credit: ‘Google_DEM‘
    ?}));

    ?

    總結

    以上是生活随笔為你收集整理的局域网Cesium离线影像及瓦片影像地图加载【转】的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。