0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

采用SVG技術(shù)在WebGIS系統(tǒng)中的設(shè)計與應(yīng)用

電子設(shè)計 ? 作者:電子設(shè)計 ? 2018-11-16 10:33 ? 次閱讀

引言

隨著Internet 技術(shù)與GIS 技術(shù)的發(fā)展,WebGIS 為GIS的發(fā)展開辟了新的空間,這有助于GIS信息的高度社會化共享盡早實現(xiàn)。不僅如此,也為GIS信息的提供者和使用者提供了便利,從而更加促進了GIS的快速發(fā)展。Internet技術(shù)的支持也使WebGIS的優(yōu)勢更加明顯,比如WebGIS的信息更新頻率更快使得消息到達更加及時、發(fā)布速度更快并且范圍更廣,這些優(yōu)點使得WebGIS明顯優(yōu)于其他傳統(tǒng)地理信息系統(tǒng)。

由于地圖數(shù)據(jù)復(fù)雜且數(shù)量大,為了保證在客戶端能夠通過瀏覽器快捷并高效地查看地圖數(shù)據(jù),必須在地圖數(shù)據(jù)的處理及顯示發(fā)布方法上做更多的改進,這為WebGIS的實現(xiàn)帶來了更大的挑戰(zhàn)。XML技術(shù)為Web地圖矢量數(shù)據(jù)的顯示發(fā)布提供了新的方法,即可縮放矢量圖形SVG,它很好地解決了地圖數(shù)據(jù)共享及互操作的關(guān)鍵問題。

SVG在WebGIS應(yīng)用中最顯著的優(yōu)點是地圖圖像縮放不失真,且地圖數(shù)據(jù)存儲文件小。此外,通過結(jié)合分布式體系結(jié)構(gòu),很好地平衡了服務(wù)器負(fù)載,并充分應(yīng)用了客戶端的處理功能,從而提高了地圖數(shù)據(jù)處理的效率。

1 SVG與WebGIS 技術(shù)介紹

1.1 WebGIS優(yōu)勢及關(guān)鍵技術(shù)

WebGIS訪問范圍很廣泛,這是與較為傳統(tǒng)的基于桌面的GIS 相比較為明顯的優(yōu)勢。即使是多個位于不同位置服務(wù)器的最新數(shù)據(jù),客戶也能夠同時訪問到。這種Internet/Intranet所特有的優(yōu)勢使得GIS的數(shù)據(jù)管理避免了不必要的操作,更為便利;除此之外,其軟件成本與維護成本均較低;并且操作簡單,只需瀏覽器操作即可。

分布式系統(tǒng)服務(wù)器可分散安裝于多臺機器上,且不受空間限制,只要能通過互聯(lián)便可。這種方式的優(yōu)點是分散單個服務(wù)器負(fù)載,優(yōu)化了訪問速度,這便是基于分布式的WebGIS 系統(tǒng)。分布式服務(wù)體系結(jié)構(gòu)可以很好地使客戶端和服務(wù)器端之間的處理負(fù)載保持平衡。

WebGIS的分布式系統(tǒng)結(jié)構(gòu)如圖1所示。

分布式體系結(jié)構(gòu)在一定程度上很好地分擔(dān)了服務(wù)器的數(shù)據(jù)承載量,但是服務(wù)器端的數(shù)據(jù)量仍沒有變化,而基于SVG 的WebGIS 設(shè)計模型則很好地利用了客戶端資源,減少了服務(wù)器端的數(shù)據(jù)量,提高了GIS數(shù)據(jù)的顯示與發(fā)布效率。

1.2 SVG技術(shù)

SVG 運用XML 語言來描述矢量圖形、位圖圖像和文字,它是按照W3C 標(biāo)準(zhǔn)基于XML 的成像模型,它使Web 開發(fā)人員、設(shè)計人員和用戶能夠擺脫HTML 的限制,并通過一個簡單的說明性編程模型創(chuàng)建豐富的視覺內(nèi)容和交互功能。SVG完全支持文檔對象模型,且由程序語言動態(tài)生成,并且可以跨平臺作業(yè)。

采用SVG技術(shù)在WebGIS系統(tǒng)中的設(shè)計與應(yīng)用

SVG提供了大量針對圖形、圖像、動畫的特定標(biāo)記,大大豐富了網(wǎng)頁顯示效果,同時減小了文件長度,縮短了傳輸時間。它還支持腳本語言,尤其是可以創(chuàng)建具有動態(tài)的、數(shù)據(jù)驅(qū)動的、交互式圖形、圖像。它將對圖形效果的編輯和顯示任務(wù)由服務(wù)器端移到客戶端,可充分利用客戶端的資源,從而減輕了服務(wù)器的負(fù)擔(dān)。SVG的諸多優(yōu)點使其非常適合運用于WebGIS.

SVG文檔結(jié)構(gòu)樣式定義了SVG圖元怎樣被渲染,描述了一個對象怎樣被繪制,以及定義了文本參數(shù)、坐標(biāo)系統(tǒng)、SVG視區(qū)、視區(qū)坐標(biāo)系和用戶坐標(biāo)系。圖形對象有直線(line)、路徑(path)、圓(circle)、圖標(biāo)(symbol)、文字(text)、圖像(image)等。路徑是一個圖形的輪廓,它的動作有Moveto、lineto、arc等,其交互性通過腳本控制,腳本可以修改對象屬性。

SVG 瀏覽器的上下文環(huán)境包含的對象有SVG本身作為XML 文檔所包含的DOM 對象,還有因瀏覽器差異而產(chǎn)生的其他對象.具體對象結(jié)構(gòu)如圖2所示。

采用SVG技術(shù)在WebGIS系統(tǒng)中的設(shè)計與應(yīng)用

SVG主要使用的對象變量共有5個,分別是Window、Document、rootElement、contextMunu、element.Window顧名思義,指的是WebGIS 瀏覽器運行窗口,Document主要負(fù)責(zé)對SVG 文檔的操作與處理,通過腳本來完成。contextMenu 變量的作用與Document類似,只是擴展了鼠標(biāo)右鍵操作彈出菜單功能。rootElement和element均是對SVG 元素進行操作,只是前者是對根元素進行操作,而后者是對節(jié)點元素進行操作。

2 基于SVG的WebGIS 系統(tǒng)設(shè)計與實現(xiàn)

2.1 系統(tǒng)設(shè)計模型

基于SVG 的WebGIS 系統(tǒng)主要由基于服務(wù)器端的WebService和基于客戶端的SVG 腳本文件及Web頁面兩部分構(gòu)成。系統(tǒng)具體結(jié)構(gòu)圖如圖3所示。

采用SVG技術(shù)在WebGIS系統(tǒng)中的設(shè)計與應(yīng)用

服務(wù)器端WebService 的主要作用是:從地圖基本信息庫中取得一副圖指定層的數(shù)據(jù),然后取得指定圖幅中的層列表、指定圖幅的范圍及元數(shù)據(jù),同時可根據(jù)地名查找到圖幅位置。地圖基本信息庫數(shù)據(jù)的主要是SVG地圖數(shù)據(jù)文件和SGY源數(shù)據(jù)文件??蛻舳四_本文件的主要作用是:地圖圖像的顯示控制、圖層控制、地圖數(shù)據(jù)的下載以及圖幅拼湊。服務(wù)器端和客戶端的通信協(xié)議主要是HTTP,本地的JSP程序通過HTTP協(xié)議向服務(wù)器發(fā)送請求元數(shù)據(jù)信息,獲得元數(shù)據(jù)信息后生成元數(shù)據(jù)顯示界面,客戶端直接請求元數(shù)據(jù)頁面并顯示地圖圖像。

由于地圖數(shù)據(jù)信息量大,因此必須得到GIS數(shù)據(jù)庫的支持。本文采用的GIS 數(shù)據(jù)庫并不是常用的關(guān)系數(shù)據(jù)庫,而是SVG文檔??蛻舳伺c服務(wù)器端通過HTTP協(xié)議連接后,服務(wù)器端解析客戶端的數(shù)據(jù)請求,并通過讀取SVG 文檔獲得地圖矢量數(shù)據(jù),然后服務(wù)器端將客戶端請求的矢量地圖輸入嵌入式Web 頁面,最后回復(fù)給客戶端瀏覽器。

2.2 腳本動態(tài)操作SVG

采用腳本動態(tài)操作SVG 文檔是開發(fā)基于SVG 的WebGIS 系統(tǒng)需要重點解決的問題。對于SVG 文檔的DOM 對象,主要有兩種操作方法[5]:使用JavaScript 在SVG 文檔內(nèi)部處理;在Batik 環(huán)境下,首先通過相關(guān)接口獲取當(dāng)前顯示SVG 視圖的DOM 對象,然后引用使用Java 語言對SVG 文檔進行處理。本文采用前一種方式。下面對腳本動態(tài)操作SVG的主要函數(shù)做簡單介紹。

在JavaScript 環(huán)境下,通過DOM 定義的接口,在SVG 的XML 樹中漫游,可以對找到的節(jié)點屬性重新賦值,還可以在當(dāng)前文檔中刪除節(jié)點或添加新創(chuàng)建的節(jié)點。

采用SVG技術(shù)在WebGIS系統(tǒng)中的設(shè)計與應(yīng)用

getURL 函數(shù)是window 對象提供的方法,該方法可以實現(xiàn)從指定的URL路徑實時加載數(shù)據(jù)。getURL方法是由Adobo實現(xiàn)的,在加載文件的時候,該方法可以判斷所加載文件的文件類型和編碼方式,對于gzip壓縮的xml文件,用戶也可以加載。又比如對于壓縮存儲格式的。svgz文件,用戶加載后會自動進行必要的解壓操作;加載文本文件時,還能根據(jù)加載文件的編碼格式(ASCII,UTF-8,UTF-16)進行自動識別。這些都在很大程度上提供了便利。

處理實時加載的文件調(diào)用函數(shù)fileLoaded,實現(xiàn)方式如下:

采用SVG技術(shù)在WebGIS系統(tǒng)中的設(shè)計與應(yīng)用

采用SVG技術(shù)在WebGIS系統(tǒng)中的設(shè)計與應(yīng)用

代碼中的data 參數(shù)表示的是一個關(guān)于指定URL文件信息的對象,該對象的success 屬性可以標(biāo)識是否成功加載了用戶指定的文件;content 屬性記錄了所加載文件的文本內(nèi)容;contentType 屬性用于標(biāo)識文件類型。

2.3 應(yīng)用拓展

基于SVG 的WebGIS 系統(tǒng)的實現(xiàn)為智能交通及物流信息化發(fā)展提供了契機。WebGIS系統(tǒng)與導(dǎo)航系統(tǒng)結(jié)合,再加上云計算服務(wù),可制定動態(tài)導(dǎo)航系統(tǒng)。用戶能在Web頁面查看到當(dāng)前的交通狀況,根據(jù)WebGIS界面做出預(yù)測,選擇交通暢通的道路行駛,這將為智能交通行業(yè)的發(fā)展起到很大的促進作用?,F(xiàn)在已經(jīng)有很多科研機構(gòu)開始著手研究WebGIS在城市交通中的應(yīng)用,比如同濟大學(xué)研究了WebGIS 下的城市智能交通實時發(fā)布系統(tǒng)。同時在物流行業(yè),WebGIS 方便的監(jiān)測物流配送情況為信息化物流提供了技術(shù)保證。

3 結(jié)語

SVG 作為WebGIS實現(xiàn)的新方法,很好地平衡了服務(wù)器負(fù)載,并充分地利用了客戶端資源,相比于傳統(tǒng)WebGIS 的實現(xiàn)方式有著明顯的優(yōu)勢?;赟VG 的WebGIS 系統(tǒng)將在各個領(lǐng)域得到廣泛應(yīng)用,特別是在智能交通及物流行業(yè),將會迎來新的發(fā)展機遇。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • Web
    Web
    +關(guān)注

    關(guān)注

    2

    文章

    1253

    瀏覽量

    69059
  • Internet
    +關(guān)注

    關(guān)注

    0

    文章

    400

    瀏覽量

    36715
  • 瀏覽器
    +關(guān)注

    關(guān)注

    1

    文章

    1007

    瀏覽量

    34979
收藏 人收藏

    評論

    相關(guān)推薦

    【分享】EasyGo 鏈?zhǔn)?b class='flag-5'>SVG系統(tǒng)的實時仿真應(yīng)用

    一、鏈?zhǔn)?b class='flag-5'>SVG簡介電力系統(tǒng)的無功步長裝置發(fā)展到今天,從早期的電容器,同步調(diào)相機,到靜止無功步長裝置SVC,以及現(xiàn)在的靜止無功發(fā)生器SVG. SVG
    發(fā)表于 02-21 17:31

    SVG監(jiān)控系統(tǒng)

    SVG監(jiān)控系統(tǒng)SVG監(jiān)控系統(tǒng)SVG監(jiān)控系統(tǒng)
    發(fā)表于 04-03 16:25

    SVG無功補償裝置生活的應(yīng)用

    惡化,同時諧波還會引起配電網(wǎng)保護控制系統(tǒng)發(fā)生“拒動”、“誤動”等不利情況發(fā)生,降低配電網(wǎng)供電可靠性。存在大量諧波分量的配電網(wǎng)系統(tǒng),進行無功補償和諧波治理是非常必要
    發(fā)表于 11-26 15:27

    下載離線地圖和webGIS的應(yīng)用

    openlayes 離線地圖下載和webGIS簡單應(yīng)用
    發(fā)表于 04-17 10:52

    HarmonyOS應(yīng)用開發(fā)-Svg組件體驗

    基礎(chǔ)容器,主要作為svg的根節(jié)點使用,也可以svg嵌套使用。屬性:支持Svg組件通用屬性和以下屬性,設(shè)置的通用屬性會傳遞給子組件。名稱類
    發(fā)表于 01-12 14:13

    基于SVG標(biāo)準(zhǔn)的WebGIS地圖應(yīng)用研究

    利用SVG標(biāo)準(zhǔn)技術(shù)解決了基于WebGIS重大危險源系統(tǒng)的地圖顯示問題。提出基于SVG的地圖符號描述模型,重點描述點、線、面3種類型對象,通過
    發(fā)表于 04-16 10:53 ?34次下載

    基于XML的開放式WebGIS系統(tǒng)設(shè)計

    基于XML 的開放式WebGIS系統(tǒng)設(shè)計是解決傳統(tǒng)WebGIS 數(shù)據(jù)共享、服務(wù)互操作問題的好方法。本文分析了基于XML 的開放式WebGIS
    發(fā)表于 05-30 10:28 ?17次下載

    基于WebGIS的社區(qū)就業(yè)系統(tǒng)的設(shè)計

    基于WebGIS的社區(qū)就業(yè)系統(tǒng)的設(shè)計:作為社區(qū)就業(yè)的基礎(chǔ)平臺,社區(qū)綜合就業(yè)服務(wù)信息系統(tǒng)的設(shè)計具有重要的現(xiàn)實意義.論述系統(tǒng)構(gòu)建的必要性和可行
    發(fā)表于 10-26 11:13 ?13次下載

    WebGIS技術(shù)公共信息服務(wù)的應(yīng)用研究

    WebGIS是基于Web環(huán)境的GIS,利用WebGIS技術(shù)發(fā)布公共信息,是實現(xiàn)面向公眾的數(shù)字化信息服務(wù)的重要方式。本文闡述了利用WebGIS開發(fā)公共信息
    發(fā)表于 12-07 13:38 ?14次下載

    對象池技術(shù)WebGIS的應(yīng)用

    文章分析了現(xiàn)有WebGIS的缺陷,闡述了對象池技術(shù)的思路和特點,設(shè)計了對象池最大閾值計算方法,提高了現(xiàn)有系統(tǒng)的并發(fā)能力,并且.NET環(huán)境下進行了實現(xiàn)和測試。事實證明,合理設(shè)置對
    發(fā)表于 07-23 10:36 ?12次下載

    WebGIS實時監(jiān)控的通用框架改進

    針對傳統(tǒng)WEBGIS實時監(jiān)控應(yīng)用的問題,引入AJAX和SVG技術(shù)進行改造,并對這兩種技術(shù)
    發(fā)表于 05-26 16:21 ?24次下載
    <b class='flag-5'>WebGIS</b>實時監(jiān)控的通用框架改進

    基于SVG企業(yè)任務(wù)管理系統(tǒng)應(yīng)用

    針對組織人與任務(wù)互動過程任務(wù)管理部分,總結(jié)模擬方法和手段的基礎(chǔ)上,通過可縮放矢量圖形技術(shù)SVG)與JavaScript腳本代碼技術(shù)(JS)相結(jié)合的方式,將基于
    發(fā)表于 11-10 16:39 ?6次下載

    基于GeoJSON的輕量級WebGIS

    針對傳統(tǒng)WebGIS矢量數(shù)據(jù)瀏覽器可視化缺乏統(tǒng)一標(biāo)準(zhǔn)以及采用地圖切片方式響應(yīng)速度慢的現(xiàn)狀,引入了HTML5 Canvas和GeojSON技術(shù)
    發(fā)表于 12-18 11:36 ?0次下載
    基于GeoJSON的輕量級<b class='flag-5'>WebGIS</b>

    基于WEBGIS技術(shù)的地址滑坡實時監(jiān)測系統(tǒng)

    基于WEBGIS技術(shù)的地址滑坡實時監(jiān)測系統(tǒng)
    發(fā)表于 06-30 14:48 ?17次下載

    新風(fēng)光SVG煤礦瓦斯發(fā)電系統(tǒng)的應(yīng)用

    SVG設(shè)備并聯(lián)到電網(wǎng),采集系統(tǒng)電壓、電流信號,計算系統(tǒng)無功功率和功率因數(shù),根據(jù)系統(tǒng)的變化,自動調(diào)節(jié)輸出,使功率因數(shù)穩(wěn)定在設(shè)置的范圍內(nèi),整個
    的頭像 發(fā)表于 12-15 16:07 ?685次閱讀