webGIS-資訊時代的地理大發現
在現代的網頁應用中,地圖應用已經成為了不可或缺的網頁元素,一個現代網頁中,有了地圖應用,可以讓使用者查詢空間資訊;開發者亦可實踐各種LBS(Location Based Services)及IOT(Internet of Things)的應用。
目前網路上有許多開發資源可以協助我們建構一些地圖應用,並且透過資料視覺化及UI/UX,使空間資訊有效地呈現給user,user也可以request資訊,讓系統是雙向互動的,相關的應用國內外都有很多案例。
然而,目前線上整合這些資源且能涵蓋背後相關技術的完整介紹並不多,我們團隊希望藉由2018 IT邦鐵人賽機會,除整合資源應用外,再加碼一些GIS相關技術面探討,目標是運用開源軟體,30天打造一個webGIS系統。
本文是參加鐵人賽的文章,同步發表於 “2018鐵人賽-30天打造我的WebGIS系列”
地圖應用與webGIS
GIS是地理資訊系統(Geographical Information System)的英文縮寫,GIS在學術及產業應用上發展已經蓬勃發展數十年,而webGIS簡單來說就是把GIS應用在網頁相關平台上。
根據GIS應用軟體供應商龍頭Esri的定義:
In its simplest form, web GIS can be defined as any GIS that uses web technology to communicate between a server and a client (Esri)
更具體一點,Esri認為webGIS包含以下元素
- The server has a URL so that clients can find it on the web.
- The client relies on HTTP specifications to send - requests to the server.
- The server performs the requested GIS operations and > sends responses to the client via HTTP.
- The format of the response sent to the client can be in many formats, such as HTML, binary image, XML (Extensible Markup Language), or JSON (JavaScript Object Notation).
上述文字基本上描述了webGIS的核心,在此我們可以加以擴充,有了webGIS技術,配合前後端技術的整合,得以讓網頁加入地圖應用元素。
參考文獻: http://www.geo-jobe.com/videos/web-gis-explained-5-essential-elements-web-gis/
規劃架構
以下是擬定的架構,希望能完整走過:
- 開發之前,先暸解資料:GIS資料基本概念、資料處理、如何自製資料
- 一些既有的線上SDK: CARTO, Google Fusion table
- webGIS開發資源: 資源介紹, 創造資源(OSM)
- 資源實作: 開始整合各種接API
- 進階處理: 空間資料庫處理、空間運算
- 綜合演練
關於作者
服務於國內知名工程顧問公司的GIS應用開發團隊,希望藉由此次經驗,強化自己對開源軟體及本身核心技術的暸解!