亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于開源GIS的天地圖前置服務(wù)平臺(tái)的集成與應(yīng)用

        2016-01-24 02:28:38吳多朋王曉輝
        北京測(cè)繪 2016年2期
        關(guān)鍵詞:數(shù)據(jù)服務(wù)空間數(shù)據(jù)開源

        吳多朋 王 錚 王曉輝

        (吉林省基礎(chǔ)地理信息中心,吉林 長春130062)

        1 引言

        “天地圖”是國家測(cè)繪地理信息局主導(dǎo)建設(shè)的,為政府、企業(yè)、公眾提供權(quán)威、可信、統(tǒng)一的地理信息服務(wù)平臺(tái)。截止2014年底,全國共有30個(gè)省份建成了天地圖省級(jí)節(jié)點(diǎn),145個(gè)市(含縣級(jí)市)建立了市級(jí)節(jié)點(diǎn),天地圖省級(jí)節(jié)點(diǎn)僅在政府部門的應(yīng)用達(dá)684個(gè)[1]?!疤斓貓D·吉林”是天地圖省級(jí)節(jié)點(diǎn)之一,項(xiàng)目成果應(yīng)用推廣過程中因商業(yè)GIS軟件平臺(tái)使用和維護(hù)成本高,導(dǎo)致應(yīng)用推廣難度大,針對(duì)該情況探索基于開源GIS軟件構(gòu)建前置服務(wù)平臺(tái)的可行性,實(shí)現(xiàn)從數(shù)據(jù)存儲(chǔ)管理、服務(wù)發(fā)布管理到應(yīng)用展現(xiàn)的一套技術(shù)解決方案。平臺(tái)構(gòu)建模式是:數(shù)據(jù)庫存儲(chǔ)管理-PostgreSQL+PostGIS;地圖服務(wù)發(fā)布與管理-GeoServer;應(yīng)用端地圖表現(xiàn)-Openlayers.基于該技術(shù)架構(gòu)設(shè)計(jì)開發(fā)了吉林省地理省情信息系統(tǒng)應(yīng)用項(xiàng)目,運(yùn)行效果表明,基于開源GIS平臺(tái)的前置平臺(tái)能夠滿足天地圖中小規(guī)模應(yīng)用需求,具有成本優(yōu)勢(shì),值得推廣。

        2 開源GIS軟件介紹

        近年開源GIS發(fā)展迅速,國外FreeGIS網(wǎng)站統(tǒng)計(jì)約有356種開源GIS軟件[3],產(chǎn)品涉及桌面應(yīng)用軟件、數(shù)據(jù)庫、類庫、中間件、移動(dòng)GIS和WebGIS等。具有代表性的開源GIS項(xiàng)目有:GIS桌面軟件GRASS、QGIS,空間數(shù)據(jù)庫PostgreSQL/Post GIS、MySQL/MySQL Spatial,Web地圖服務(wù)器Geoserver、Mapserver,Web客戶端軟件Openlayers、Mapbuilder,中間件Geo Tools、Mapwindow,類庫GDAL等等。以下主要介紹前置平臺(tái)開發(fā)技術(shù)路線中使用的開源GIS軟件。

        2.1 地圖服務(wù)器Geoserver

        Geoserver是一個(gè)J2EE開發(fā)的Open GIS Web服務(wù)器,它遵循OGC多項(xiàng)開放地理信息服務(wù)規(guī)范,如網(wǎng)絡(luò)地圖服務(wù)(WMS)、網(wǎng)絡(luò)要素服務(wù)(WFS)和網(wǎng)絡(luò)覆蓋服務(wù)(WCS)等,實(shí)現(xiàn)數(shù)據(jù)作為maps/images來發(fā)布(WMS),矢量要素?cái)?shù)據(jù)也可以直接發(fā)布實(shí)際數(shù)據(jù)形式(WFS),支持用戶通過網(wǎng)絡(luò)訪問如遙感影像、數(shù)字高程模型等柵格數(shù)據(jù)(WCS),同時(shí)提供了對(duì)數(shù)據(jù)修改、刪除和新增功能(WFS-T)。通過GeoServer可以比較容易在不同用戶之間迅速共享空間地理信息。

        2.2 WebGIS客戶端Openlayers

        Opnelayers是一個(gè)專為WebGIS客戶端開發(fā)提供的JavaScript類庫包,用于實(shí)現(xiàn)標(biāo)準(zhǔn)格式發(fā)布的地圖數(shù)據(jù)訪問,它支持多種來源的地圖數(shù)據(jù),如OpenGIS的WMS、WFS等及商業(yè)性地圖服務(wù)(如 Google Maps,Bing Maps等),Openlayers實(shí)現(xiàn)在網(wǎng)絡(luò)瀏覽器上顯示瀏覽地圖,并實(shí)現(xiàn)地圖放大、縮小、漫游等基本操作,同時(shí)還可進(jìn)行點(diǎn)線面選取、要素查詢、圖層疊加等不同操作,也可對(duì)它已有的操作和數(shù)據(jù)支持類型進(jìn)行開發(fā)擴(kuò)充,實(shí)現(xiàn)更多的功能。

        2.3 空間數(shù)據(jù)庫PostGIS

        Post GIS是基于PostgreSQL開發(fā)的功能強(qiáng)大的開源空間數(shù)據(jù)庫,實(shí)現(xiàn)對(duì)關(guān)系型數(shù)據(jù)庫系統(tǒng)PostgreSQL存儲(chǔ)空間數(shù)據(jù)能力的擴(kuò)展,類似于Oracle中的Oracle Spatial,它提供空間對(duì)象、空間索引、空間操作函數(shù)和空間操作符等空間信息服務(wù)功能,同時(shí)實(shí)現(xiàn)并遵循OpenGIS規(guī)范,是目前比較著名的開源GIS數(shù)據(jù)庫。

        3 前置平臺(tái)集成架構(gòu)

        平臺(tái)采用B/S結(jié)構(gòu)體系,主要分為表現(xiàn)層、服務(wù)層和數(shù)據(jù)層三層架構(gòu),集成方案選擇GeoServer為地圖服務(wù)器,Apache+Tomcat為Web服務(wù)器,PostgreSQL+Post GIS為業(yè)務(wù)數(shù)據(jù)和空間數(shù)據(jù)管理平臺(tái),Open Layers為客戶端開發(fā)包。

        平臺(tái)集成架構(gòu)各層基本功能:

        1)表現(xiàn)層:主要是基于web瀏覽器實(shí)現(xiàn)數(shù)據(jù)信息的可視化表現(xiàn),為用戶提供一個(gè)交互界面。如可利用開源JavaScript類庫包Openlayers向服務(wù)器端發(fā)出服務(wù)請(qǐng)求,返回請(qǐng)求結(jié)果在瀏覽器中顯示,同時(shí)也可以基于桌面端請(qǐng)求數(shù)據(jù)服務(wù),比如udig,qgis等桌面客戶端。

        2)服務(wù)層:主要由GIS服務(wù)器和 WEB服務(wù)器構(gòu)成,對(duì)外提供標(biāo)準(zhǔn)的數(shù)據(jù)服務(wù)。GIS服務(wù)采用GeoServer構(gòu)建并對(duì)其進(jìn)行集成擴(kuò)展,可對(duì)外提供地圖服務(wù)符合OGC標(biāo)準(zhǔn)的空間數(shù)據(jù)互操作接口規(guī)范(WMS、WMTS、WFS),業(yè)務(wù)邏輯通過WEB服務(wù)方式實(shí)現(xiàn)。

        3)數(shù)據(jù)層:實(shí)現(xiàn)對(duì)業(yè)務(wù)數(shù)據(jù)和空間數(shù)據(jù)統(tǒng)一化存儲(chǔ)和管理,業(yè)務(wù)關(guān)系數(shù)據(jù)采用PostgreSQL關(guān)系表存儲(chǔ)管理,空間數(shù)據(jù)使用Post GIS進(jìn)行存儲(chǔ)管理,其中地圖瓦片數(shù)據(jù)采用文件形式管理。

        4 技術(shù)難點(diǎn)及解決方案

        4.1 空間數(shù)據(jù)庫創(chuàng)建

        在Post GIS中,數(shù)據(jù)層對(duì)應(yīng)空間數(shù)據(jù)表,可以支持點(diǎn)、線、多邊形、多點(diǎn)、多線、多多變形和集合對(duì)象集等空間數(shù)據(jù)類型,可以通過四種方式實(shí)現(xiàn)數(shù)據(jù)庫數(shù)據(jù)的讀寫;①使用PostgreSQL內(nèi)嵌的命令行工具psql語言實(shí)現(xiàn)讀寫;②使用一些小工具,如自身安裝目錄下的shp2pgsql和pgsql2shp,例如導(dǎo)入命令:PostgreSQL\bin>shp2pgsql-s 4236-c D:\test.shp public.vector|psql-d postgis-U postgres-W;③其他GIS軟件讀寫,使用QGIS連接Post GIS實(shí)現(xiàn)讀寫,其他軟件也可如u Dig,Grass等;④利用接口在應(yīng)用程序中讀寫,利用PostgreSQL的jdbc庫或者libpq使用Java和C進(jìn)行數(shù)據(jù)讀寫。系統(tǒng)空間數(shù)據(jù)使用shp2pgsql批量導(dǎo)入,實(shí)現(xiàn)空間數(shù)據(jù)的數(shù)據(jù)庫管理。另外,也探索了基于Arc-GIS直連開源關(guān)系數(shù)據(jù)庫PostgreSQL,實(shí)現(xiàn)空間數(shù)據(jù)在關(guān)系數(shù)據(jù)庫中的存儲(chǔ)。測(cè)試版本ArcGIS 10.1直連Postgres9.0(64位)數(shù)據(jù)庫。

        4.2 數(shù)據(jù)服務(wù)發(fā)布

        利用Geoserver實(shí)現(xiàn)OGC標(biāo)準(zhǔn)地圖服務(wù)的發(fā)布,服務(wù)發(fā)布需要進(jìn)行名稱空間、數(shù)據(jù)、樣式類型的配置,實(shí)現(xiàn)地圖數(shù)據(jù)在客戶端的顯示效果的定義。對(duì)于WFS和WFS-T服務(wù)發(fā)布樣式顯示配置采用開源桌面軟件Udig,利用udig對(duì)地圖顯示樣式文件SLD進(jìn)行編輯設(shè)置。對(duì)于WMS和WMTS服務(wù)發(fā)布采用GeoWebCache預(yù)緩存文件,GeoWebCache相當(dāng)于是客戶端與服務(wù)器端之間的中介,實(shí)現(xiàn)提高地圖顯示速度,減輕GeoServer服務(wù)器工作負(fù)荷,對(duì)天地圖已有的瓦片成果通過開發(fā)工具轉(zhuǎn)換成預(yù)緩存支持的瓦片結(jié)構(gòu),修改geowebcache.xml配置文件實(shí)現(xiàn)緩存數(shù)據(jù)服務(wù)發(fā)布。前置服務(wù)中基礎(chǔ)要素底圖數(shù)據(jù)和遙感影像數(shù)據(jù)發(fā)布為WMTS服務(wù),要素查詢與分析的地名地址、道路等發(fā)布為WFS服務(wù)。

        4.3 客戶端地圖服務(wù)應(yīng)用

        基于Openlayers在瀏覽器端實(shí)現(xiàn)數(shù)據(jù)服務(wù)顯示,業(yè)務(wù)信息與空間信息集成表現(xiàn)。對(duì)于弱GIS部門的Web GIS應(yīng)用系統(tǒng)主要實(shí)現(xiàn)數(shù)據(jù)服務(wù)加載顯示、客戶端服務(wù)聚合、業(yè)務(wù)與空間的關(guān)聯(lián)查詢定位與要素分析等基本功能。

        4.3.1 地圖服務(wù)數(shù)據(jù)加載

        加載 WMS、WFS、WMTS等OGC服務(wù)數(shù)據(jù)源。

        var wms=new Open Layers.Layer.WMS

        (“l(fā)ayername”,”url”,”params”,”options”)

        var wfs=new Open Layers.Layer.Vector

        (“WFS”,{strategies:[],projection:new Open Layer.Projection(“”),protocol:new Open-Layers.Protocol.WFS({Version:””,

        url:””,……}})

        var wmts=new Open Layers.Layers.

        WMTS ({name:””, url:””,layer:””,style:””

        Matrixset:””})

        4.3.2 客戶端服務(wù)聚合

        客戶端服務(wù)聚合是通過客戶端服務(wù)訪問組件獲取第三方地圖服務(wù)信息,然后客戶端服務(wù)聚合器將系統(tǒng)本身的服務(wù)和第三方服務(wù)進(jìn)行整合,提供給當(dāng)前客戶端或其他客戶端訪問[4]。實(shí)現(xiàn)客戶端GeoServer、ArcGISSever、百度地圖地圖、Google地圖等不同數(shù)據(jù)服務(wù)的聚合。聚合天地圖數(shù)據(jù)服務(wù)地址信息:

        get URL:function(bounds){

        var level=this.get LevelFor Resolution(this

        .map.get Resolution());

        var coef=360/Math.pow(2,level);

        var x_num=this.top TileFrom X<this.top Tile ToX?Math.round((bounds.leftthis.top TileFrom X )/coef ): Math.round((this.top TileFrom X-bounds.right)/coef);

        var y_num=this.top TileFrom Y<

        this.top TileTo Y? Math.round((bounds.bottom

        -this.top TileFrom Y)/coef):Math.round ((this.top TileFrom Y -bounds.top)/coef);

        4.3.3 業(yè)務(wù)與空間關(guān)聯(lián)查詢

        業(yè)務(wù)數(shù)據(jù)與空間數(shù)據(jù)通過關(guān)聯(lián)字段建立關(guān)聯(lián),實(shí)現(xiàn)業(yè)務(wù)與空間的掛接,指定條件進(jìn)行查詢定位,關(guān)鍵實(shí)現(xiàn)代碼為:

        markslayer=new Open Layers.Layer.Vector (″ WFS″, { strategies : [ new Open Layers.Strategy.BBOX()],

        protocol:new Open Layers.Protocol.WFS({

        url:″″ }),style Map:new Open Layers.Style Map({externalGraphic : 'img/markertarget.png',

        graphicWidth:20,graphic Height:24,

        graphic YOffset:-24,

        }),//顯示樣式

        filter:new Open Layers.Filter.Comparison({

        type:

        Open Layers.Filter.Comparison.LIKE,

        property:″NAME″,

        value:"*"+searchstr+"*"

        })//查詢條件

        });

        map.add Layer(markslayer);

        4.4 成果應(yīng)用

        結(jié)合2014年“天地圖·吉林”應(yīng)用示范項(xiàng)目建設(shè)內(nèi)容,利用以上技術(shù)路線,采用桌面GIS(QGIS)+數(shù)據(jù)庫(postgis+Postgres)+GIS服務(wù)器(GeoServer)+客戶端應(yīng)用(Openlayers)的技術(shù)路線,開發(fā)構(gòu)建了“吉林省地理省情信息系統(tǒng)”。系統(tǒng)基于B/S的三層架構(gòu),以J2EE技術(shù)規(guī)范作為標(biāo)準(zhǔn),利用“天地圖·吉林”基本數(shù)據(jù)服務(wù)資源,采用空間數(shù)據(jù)服務(wù)前置的方式,構(gòu)建地理省情信息發(fā)布系統(tǒng)。系統(tǒng)顯示效果如圖1所示:

        5 結(jié)論

        本文通過對(duì)基于開源GIS軟件系統(tǒng)架構(gòu)和功能進(jìn)行深入探討和研究,選擇GeoServer+PostGIS+Openlayers等開源軟件技術(shù)路線構(gòu)建天地圖前置服務(wù)系統(tǒng),并應(yīng)用在吉林省地理省情信息系統(tǒng)建設(shè)中,探索建設(shè)了一套可將“天地圖·吉林”和數(shù)字城市建設(shè)成果應(yīng)用到前置服務(wù)機(jī)上的地圖服務(wù)發(fā)布平臺(tái)和與之相配套的客戶端軟件系統(tǒng),探索研究了各開源軟件實(shí)現(xiàn)原理和機(jī)制,并基于開源地理信息軟件實(shí)現(xiàn)從數(shù)據(jù)存儲(chǔ)管理、數(shù)據(jù)服務(wù)發(fā)布到應(yīng)用展現(xiàn)的一整套技術(shù)解決方案。利用開源項(xiàng)目,搭建GIS應(yīng)用系統(tǒng),在系統(tǒng)開發(fā)和測(cè)試過程中,表現(xiàn)出極大的靈活性。隨著國內(nèi)外開源項(xiàng)目的不斷發(fā)展,其在小、巧離線、準(zhǔn)在線和在線GIS應(yīng)用系統(tǒng)中的應(yīng)用將更加突顯。

        猜你喜歡
        數(shù)據(jù)服務(wù)空間數(shù)據(jù)開源
        地理空間大數(shù)據(jù)服務(wù)自然資源調(diào)查監(jiān)測(cè)的方向分析
        五毛錢能買多少頭牛
        如何運(yùn)用稅收大數(shù)據(jù)服務(wù)供給側(cè)結(jié)構(gòu)性改革
        中國商論(2016年34期)2017-01-15 14:24:18
        基于頻繁子圖挖掘的數(shù)據(jù)服務(wù)Mashup推薦
        大家說:開源、人工智能及創(chuàng)新
        開源中國開源世界高峰論壇圓桌會(huì)議縱論開源與互聯(lián)網(wǎng)+創(chuàng)新2.0
        元數(shù)據(jù)驅(qū)動(dòng)的多中心空間數(shù)據(jù)同步方法研究
        開源計(jì)算機(jī)輔助翻譯工具研究
        一種基于數(shù)據(jù)服務(wù)超鏈進(jìn)行情景數(shù)據(jù)集成的方法*
        基于文件系統(tǒng)的分布式海量空間數(shù)據(jù)高效存儲(chǔ)與組織研究
        玩弄丰满奶水的女邻居| 午夜精品人妻中字字幕| 国产一区二区三区在线男友| 国产后入清纯学生妹| 国产va免费精品观看| 亚洲va欧美va人人爽夜夜嗨| 亚洲综合中文日韩字幕| 18岁日韩内射颜射午夜久久成人| 特黄a级毛片免费视频| 一区二区三区婷婷在线| 免费av一区男人的天堂| 东北少妇不戴套对白第一次| 国产精品天天在线午夜更新| 亚洲人成网站久久久综合 | av网站韩日在线观看免费| 欧美黑人巨大videos精品| 国产做a爱片久久毛片a片| 亚洲AV肉丝网站一区二区无码| 天堂影院久久精品国产午夜18禁| 丰满人妻熟妇乱又仑精品| 国产精品美女久久久久| 国产成年无码久久久免费| 日本av不卡一区二区三区| 亚洲精品国产一区二区| 中文在线√天堂| 性感人妻中文字幕在线| 男女裸体做爰视频高清| 精品无码久久久久成人漫画| 波多野结衣一区二区三区视频| 国内精品毛片av在线播放| 欧美日韩精品久久久久| 国产精品黄网站免费观看| 久久精品人妻嫩草av蜜桃| 国产小视频在线看不卡| 夜夜嗨av一区二区三区| 无码伊人久久大蕉中文无码| 亚洲国产av一区二区四季| 亚洲人成影院在线观看| 伊人亚洲综合网色AV另类| 美女被黑人巨大入侵的的视频| 国产成人亚洲综合无码品善网|