Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537 Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537 亚洲国产精品成熟老女人,一区视频在线,国产一级毛片亚洲久留木玲

          整合營銷服務商

          電腦端+手機端+微信端=數據同步管理

          免費咨詢熱線:

          WebGIS背景知識!

          概述

          地理信息系統(Geographic information System 簡稱 GIS),是一種在計算機軟硬件的支持下,對整個地球表層空間有關地理發布數據進行采集、存儲、管理、運算、分析等等的技術系統。而網絡地理信息系統(WebGIS)是傳統GIS在網絡上的延伸和擴展,具有傳統GIS的特點,可以實現空間數據的檢索、查詢、繪圖輸出編輯等等。最近項目需要用到webGIS里面的一些功能,當然GIS是一門學科,掌握需要系統且深入的學習。因為在開發中需要用到一些webGIS技術,需要對一些概念和常用技術需要基本了解,所以我查了一些資料,寫一篇筆記記錄一下。

          |OGC

          Open Geospatial Consortium 開放地理信息聯盟。是一個由530家企業、政府機構、研究組織、大學組成的國際性協會。致力于提供地理信息行業軟件和數據服務的標準化工作,推動地理空間位置信息和服務的公平性、可查性、訪問性、交互性、復用性。上面說的有些不明不白,簡單來說OGC是指定GIS行業標準的組織,GIS行業從數據采集制作,到地圖位置服務發布,都要遵循OGC定義和規范。

          |WMS

          WMS(web map service)網絡地圖服務。OGC里最常見的規范就是WMS規范——WMS為網絡地圖的數據格式、圖例樣式、地圖發布、交互設計等等方面制定了一系列規范。

          WMS = WMTS + WFS ; WMTS—— (web map tile service 地圖瓦片服務); WFS ——(web feature service 網絡要素服務)

          地圖瓦片服務:地圖數據量很大所以無法直接傳遞到前端顯示,且電腦顯示器分辨率有限,因此地圖瓦片服務的處理方式是先在后端生成柵格圖片再講圖片傳到前端展示。意思是說每次滾動鼠標滾輪放大縮小的時候后端都有發數據來。WMTS發布的是柵格圖片,柵格內容無法被修改。

          而WFS服務是矢量的,地圖要素為feature;feature是一個可操作的對象,通過WFS可以對數據(幾何+屬性)進行增刪改查等操作。

          |瓦片與瓦片地圖

          跟上面的地圖瓦片服務相關聯,瓦片的意思是后端渲染的圖片一塊一塊傳送到前端,就好像蓋房子一片片的瓦片一樣。瓦片地圖是一種地圖解決方案,為了解決地圖數據很大無法傳送的問題。將一整塊大地圖進行切分,分成相同大小的地圖,用戶訪問的時候再將小地圖拼接在一起還原成大地圖。

          具體來說瓦片地圖就是多個比例尺下配置地圖,然后提前把每個比例尺下的地圖繪制成小地圖,保存在服務器上名為緩存的目錄中。這樣當客戶端訪問地圖時可以直接獲取需要的小塊圖片拼接成的地圖,而不是由服務器動態創建出一幅地圖再發送到客戶端從而極大提高訪問速度。如下圖。

          |LOD

          levels of Detail (細節圖層)

          LOD技術根據物體模型的節點在顯示環境中所處的位置和重要度。決定物體渲染的資源分配,降低非重要物體的面數和細節度從而獲得高效率的渲染運算,LOD在電子游戲中經常運用,對于需要顯示全球地圖的GIS系統而言,更需要應用這項技術。


          |坐標系與投影

          為了表示地球上的某個點,還有點與點之間的關系——我們需要使用坐標系來表示。在WebGIS系統中,常見的坐標系有兩種:一種wkid=102100(102113);一種wkid=4326102100:GCS_WGS_1984_web_mercator是在線網絡地圖常用的坐標系統,它是投影坐標系的一種。百度地圖、高德地圖和大多數ArcGIS提供的在線瓦片地圖采用了這種投影方式。4326:GCS_WGS_1984是地理坐標系統的一種,一般GPS、遙感影像、專業測繪數據等都是采用的這種坐標系類型。

          有了坐標系就來說說投影,我們經常看到EPSG:3857和EPSG:4326兩種投影方式。EPSG:3857實際上是墨卡托投影。墨卡托投影的過程是將地球展開成一個圓柱,再將圓柱展開平面(如下圖);對于墨卡托投影來說,越到高緯度,大小扭曲越嚴重,到兩級會被無限放大,因此無法顯示極地地區。對于EPSG:4326也叫經緯度投影,使用此坐標會導致頁面變形。

          |WKT WKB

          WKT是一種文本標記語言——用于表示矢量幾何對象、空間參照以及空間參照系統之間的轉換。它用二進制表示且符合OGC規定。WKT與geojson分為點線面幾何四種Point,LineString,Polygon,GeometryCollection。

          WKB采用二進制存儲點線面,解決WKT表達冗余的問題,便于傳輸和存儲在數據庫中。


          |GeoJSON

          GeoJson是一種基于JSON格式的地理空間數據交換格式,它定義了幾種類型JSON對象以及它們組合在一起的方法,以表示地理要素、屬性和它們空間范圍的數據。幾何對象包括有點(表示地理位置)、線(表示街道、公路、邊界)、多邊形(表示國家、省、領土)以及以上類型合成的復合幾何圖形。數據庫postgreSQL+postGIS插件可以存儲這種具有地理屬性的數據。


          |Geoserver

          在計算領域,GeoServer是一個用Java編寫的開源服務器,它允許用戶共享、處理和編輯地理空間數據。為了互操作性而設計,它使用開源標準發布來自任何主要空間數據源的數據。

          GeoServer已經發展成為一種將現有信息與Google地球、NASA World Wind等虛擬地球儀以及OpenLayers、Google地圖和必應地圖等基于網絡的地圖連接起來的簡單方法。

          GeoServer的功能是開放地理空間協會Web要素服務(WFS)標準的參考實現,同時也實現了Web地圖服務(WMS)、Web覆蓋服務(WCS)和Web地理信息處理服務(WPS)規范。

          安裝Geoserver除了通過二進制包安裝外,還需要JDK1.8和Tomcat才能運行起來(因為GeoServer是Java寫的)


          |Openlayers

          Openlayers是一個開源的Javascript庫(基于修改過的BSD許可發布),用來在Web瀏覽器顯示地圖。它提供API接口創建類似于Google Maps和Bing Maps的基于web的地理應用。這個庫包括Rico和Prototype框架。運行openlayers也比較簡單(openlayers用js寫的),下載好依賴的包之后npm start直接可以運行。訪問1234端口能看到地圖了。

          |postgreSQL + postGIS

          PostgreSQL是一種特性非常齊全的自由軟件的對象-關系型數據庫管理系統;通過與postGIS配合能夠存儲地理信息。這里使用pgAdmin4作為postgreSQL的可視化界面。

          里以湖北省荊州市為例說明如何用ArcGIS API發布離線谷歌衛星地圖。

          在萬能地圖下載器中選擇湖北省荊州市的行政區劃,然后點擊“下載”按鈕新建下載任務。

          在新建任務對話框中選擇需要下載的級別,一般是從當前行政區劃顯示的級別開始選擇(這里是第9級),一直接選擇到第19級(國內19級清晰度效果最佳,19級以上基于19級放大),由于數據量非常大,這里只為了說明如何用ArcGIS API發布離線衛星地圖的方法,因此這里以選擇到第14級為例。

          在“新建任務”對話框中,點擊“導出設置”可以設置相關導出參數,我們可以選擇導出大圖、導出瓦片和導出離線包等三種方式。由于這里我們用ArcGIS API發布離線衛星地圖需要用的是瓦片格式,因此這里選擇“導出瓦片”選項。

          新建任務詳細參數說明,請參閱:

          新建地圖下載任務參數說明

          在“導出瓦片”選項的相關參數中,我們選擇瓦片格式為“TMS瓦片”、文件格式為PNG,坐標坐標投影為墨認的“WGS84 Web 墨卡托投影”,選擇“邊界范圍裁剪”,背景顏色為“透明”背景。

          導出瓦片詳細參數說明,請參閱:

          導出瓦片參數說明

          分別點擊“確定”按鈕開始下載任務,下載并自動導出后可以看到導出的瓦片目錄為8到13級而不是我們選擇的9到14級,這是因為軟件中的級別編號是從1開始,而標準的TMS瓦片命名規則都是從0開始,因此該情況屬于正常情況,瓦片的行列號編號規則同理。

          在ArcGIS API發布離線衛星地圖的源碼示例中,將“arcgis_js_v321_api.zip”解壓到當前文件夾。

          打開解壓后文件夾中的“install.html”可以查看ArcGIS API的安裝布署說明。

          ArcGIS API可以在Windows和Linux系統中安裝布署,這里我們以Windows為例,點擊“Windows”查看布署方法。

          從ArcGIS API的安裝布署說明中可以看到,需要將“\arcgis_js_api\library”文件復制到IIS默認站點下,該操作的目的是要將ArcGIS API放在Web站點中,說明它需要Web服務器支持。

          另外,文檔中說明了ArcGIS API有兩個版本,一個是普通版,一個是精簡版。

          現在,我們需要布署一個Web服務器,用于布署ArcGIS API源碼。

          一般來講,常用的Web服務器軟件工具有IIS、Apache和Tomcat,這里我們以Windows自帶的IIS為例。

          如何開啟IIS 功能,請參閱:

          如何在Win10中開啟IIS功能

          IIS功能開啟后,在電腦圖標的右鍵菜單中選擇“管理”菜單項。

          在“計算機管理”的功能樹列表中點擊“服務和應用程序\Internet Information”項,然后在“網站”節點的右鍵菜單中選擇“添加網站”項。

          在顯示的“添加網站”對話框中,可以為當前站點指定名稱(這里為“WebGIS”),將物理路徑設置為ArcGIS API解壓后的目錄,這里將端口號設置為“8080”,這樣不會與訪問Web頁面的80端口沖突,如果沒有布署過80端口的網站則不會有沖突。

          點擊新建的Web站點“WebGIS”后,再點擊“內容視圖”可以查看站點文件。

          Web站點布署好之后,我們再回過頭來看ArcGIS API的布署說明文檔,文檔中分別說明了普通版和精簡版中都需要對相關文件作修改編輯,這里我們以普通版本為例。

          根據ArcGIS API布署說明文檔中的說明,在指定的源碼路徑中找到init.js文件,并在右鍵菜單中選擇用記事本打開它。

          按文檔中的說明,將“https:/[HOSTNAME_AND_PATH_TO_JSAP]dojo”字符串修改為“https://<myserver>/arcgis_js_api/library/3.21/3.21/dojo”字符串。

          其中的<myserver>表示服務器地址,由于我們這里是以在本機上布署為例,因此它要相應的改為本機地址,即127.0.0.1或localhost,同時需要加上端口號,即最后的替換結果為:

          http://127.0.0.1:8080/arcgis_js_api/library/3.21/3.21/dojo

          注意:文檔中的Web地址頭為“https”,如果你的服務器不支持安全加密訪問,只需要將地址頭改為“http”即可。

          編輯修改成完成后,需要測試init.js文件是否可以通過Web地址正常訪問。

          在瀏覽器中如果打開以下地址顯示init.js文件內容,說明布署正確。

          http://127.0.0.1:8080/arcgis_js_api/library/3.21/3.21/init.js

          ArcGIS API安裝布署完成后,將ArcGIS API離線地圖發布源碼示例中的“extlayers”文件夾復制到“arcgis_js_v321_api\arcgis_js_api\library.21.21”路徑下。

          將下載的地圖瓦片目錄復制到ArcGIS API發布離線地圖的源碼示例中。

          用專業的WebGIS開發工具Visual Studio Code打開“arcgis_js_v321_api\arcgis_js_api\library.21.21\extlayers\gaodelayer.js”文件,將第133行中的“gaodeTiles”字符串修改為當前的瓦片目錄名稱,即“荊州市谷歌地圖TMS瓦片”。

          Visual Studio Code下載安裝教程,請參閱:

          如何安裝WebGIS開發工具Visual Studio Code

          雙擊ArcGIS API離線地圖發布源碼中的“map.html”文件,可以在瀏覽器中打開ArcGIS API發布的離線地圖結果。

          在瀏覽器中打開離線地圖發布結果如下圖所示。

          在該源碼示例中,除了能離線顯示谷歌衛星地圖外,還包括了基本的地圖標注等相關GIS功能。

          ArcGIS API for JavaScript在線實例請參閱:

          http://api.rivermap.cn/ArcGIS/map.html

          眼間十一長假結束了,

          還沒充分表達對祖國的熱愛之情,

          朋友圈的照片還沒發夠,

          8天假期居然就已經結束了!

          不論國慶你是在外面浪,

          還是在家里蹲,

          都無法逃避、必須面對的就是:

          節!后!上!學!上!班!
          今年可再也沒有長假了哦!

          生命不息,奮斗不止!

          收心養性,繼續努力!

          GISer如何快速收心,

          擺脫假期綜合征

          這些回歸狀態的方法

          親測,很實用喲!

          一、GIS理論知識

          理論基礎能夠決定技術之路能走多遠

          GIS開發人員應具有一定的GIS理論基礎,在開發中常見的地圖坐標系,如大地坐標系統WGS-84、火星坐標系統GCJ-02、百度坐標系統BD-09等,常見的地圖投影方法如墨卡托投影、高斯-克呂格投影等,以及常用的空間分析功能及其作用,如緩沖區分析、可達性分析、最短路徑分析等,這些應該了解一下,最好在大一、大二就掌握清楚,打好基礎!

          1.理解GIS理論,如地圖坐標系、投影、空間分析等概念

          2.熟悉OGC標準,如WMS、WMTS、WCS、WFS等

          3.深入理解地圖可視化及相關知識

          4.深刻理解地圖切片原理

          5.熟悉WebGIS體系結構

          6.掌握地理數據處理能力

          7.了解GIS相關數據格式

          理論入門推薦書籍,僅供參考

          主要是這些書,小編可以免費分享:

          《地理信息系統導論》

          《GIS空間分析指南》

          《GIS 基礎知識:地理信息系統的第一本書》

          《制圖:專題地圖設計》

          《地理信息系統概論》

          《了解 Web GIS》

          二、GIS軟件使用

          軟件的熟練程度,是考察一個GIS工程師的標準之一

          GIS軟件的種類非常多,而且功能相對復雜,部分軟件需要花時間學習才能熟練操作。

          但是對地理信息科學專業來說,日常經常用到的軟件主要有CAD制圖,PS設計軟件,MapGIS、ArcGIS、QGIS、谷歌地球等GIS類軟件,以及ENVI、Erdas等遙感圖像處理軟件這些專業軟件,Smark3D、Benlder、3DMAX等三維建模軟件。

          了解 GIS 軟件,有可以使我們的GIS開發工作更輕松、更快,它們還可以充當測試環境,關鍵是很多GIS軟件的底層原理是相通的,一通百通。

          三、從前端入門GIS開發

          在WebGIS的學習中,Web開發技術尤為重要,是整個項目的基礎。

          1.掌握前端三件套

          對于Web端學習,只要把 HTML + CSS + JavaScript 這前端三件套學好,就基本差不多入門前端了,并且可以利用這三門知識,進一步學習前端框架,達到更高的開發效率。

          對于GIS開發,重點掌握HTML技術、CSS3頁面布局、JavaScript開發、WebAPls編程、JavaScript高級特性

          2.掌握前端框架

          重點需要關注的前端框架,主要有VUE、React、Jquery、Angular,這幾個前端框架至少要掌握一樣。

          Vue(https://vuejs.org/):Vue 以模型-視圖-視圖模型結構構建 UI。對于小白來說,VUE相對比較好入門,觸類旁通再去學習其他框架,應該更容易理解。

          四、熟悉開源GIS類庫

          在WebGIS開發中,在具備一定的前端基礎后,就要開始學會使用各類GIS相關類庫,實現用戶所需功能。

          這就涉及到API的調用,API作為處理系統之間數據傳輸的媒介。我們在開發的過程中,常常調用API接口,這就要求我們必須掌握API的調用,了解API的屬性。如果你能了解這里面的底層開發邏輯更好,可以起到事半功倍的效果。如果你不熟悉,但是學會如何調用,對入門來說也是夠用的。

          熟悉開源GIS類庫,開源GIS相關類庫可以分為三類,二維、三維及AI庫

          1. 二維

          二維類庫中常用的由Echarts、Leaflet、Openlayer、Mapbox、百度地圖API、高德地圖API、天地圖API及Turf等,開發人員通過調用相關類庫,可實現地理數據可視化、GIS空間分析和地圖可視化等功能。

          2. 三維

          三維WebGIS中,應用較為廣泛的由Cesium.js和Three.js。Cesium.js可以實現三維數據加載、三維空間分析等GIS應用所需的功能,能夠承載較大的空間信息量,但視覺效果一般;Three.js為計算機圖形庫,可以實現更加優美的場景,但信息承載能力有限,因此在小場景的可視化如室內中,推薦Three.js,在進行大量地理數據可視化及空間分析等功能時,推薦Cesium。

          在三維WebGIS中,不僅要具有前端和GIS基礎,還要擁有一定的三維建模軟件及三維格式的基礎,如 3dMax/Maya/SketchUp/Blender/Pro-E(三維建模)等軟件的使用,并了解各種軟件生成的模型格式及Cesium.js和Three.js所支持的數據格式。

          3. AI

          AI在大前端領域已經火爆了兩三年了。隨著設備算能的躍升和端側模型的演化,越來越多的AI場景開始涌現。從最初的圖片分類,到而今基于人體的百變特效、嵌入日常的語音識別、大眾津津樂道的自動駕駛,AI已經開始進入我們生活的方方面面。前端AI類庫主要有TensorFlow.js、Ml.js、 Brain.js及Paddle.js 等,TensorFlow.js目前應用較為廣泛。

          前端AI應用領域主要包括人物識別、語義診斷、情緒分析、圖像自動分類等方面,在WebGIS中,主要可應用于圖像自動分類、圖像處理等領域。

          作為GIS小白入門,你不需要學習上面列出的所有庫,建議可以從leaflet或OpenLayers入手。此外,AI庫對小白來說,難度系數比較大,建議可以先重點掌握二維、三維。


          主站蜘蛛池模板: 成人毛片无码一区二区| 国产日韩AV免费无码一区二区三区| 波多野结衣一区二区三区高清av| 国产A∨国片精品一区二区| 无码人妻久久一区二区三区 | 亚洲熟妇av一区二区三区下载| 欧洲精品免费一区二区三区| 国产精品久久久久久麻豆一区| 精品中文字幕一区在线| 成人区人妻精品一区二区不卡网站| 黄桃AV无码免费一区二区三区| 一区二区在线免费观看| 2021国产精品视频一区| 亚洲国模精品一区| 亚洲国产精品一区二区第四页 | 亚洲一区综合在线播放| 精品国产一区二区三区香蕉事| 亚洲A∨精品一区二区三区下载| 人妻无码一区二区三区四区| 水蜜桃av无码一区二区| 国精产品999一区二区三区有限| 波多野结衣av高清一区二区三区| 亚洲AV无码一区二区一二区| 精品国产一区二区三区www| 精品国产一区二区三区久久久狼| 精品福利视频一区二区三区| 国产日韩一区二区三免费高清 | 免费视频精品一区二区三区| 精品一区二区三区色花堂| 久久无码人妻一区二区三区| 亚洲欧美国产国产综合一区| 国产成人精品无码一区二区三区 | 一区二区三区视频观看| 一区二区三区无码被窝影院| 国产a∨精品一区二区三区不卡| 国产在线观看一区二区三区 | 日韩一区二区三区精品| 丰满人妻一区二区三区免费视频| 中文字幕在线观看一区| 亚洲成在人天堂一区二区| 国产一区美女视频|