999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于開(kāi)源技術(shù)的地圖應(yīng)用設(shè)計(jì)與實(shí)現(xiàn)
——以天地圖·合肥醫(yī)療衛(wèi)生為例

2022-09-02 02:20:50胡正星
城市勘測(cè) 2022年4期
關(guān)鍵詞:數(shù)據(jù)庫(kù)功能服務(wù)

胡正星

(合肥市測(cè)繪設(shè)計(jì)研究院,安徽 合肥 230061)

1 引 言

按照安徽省地理信息公共服務(wù)平臺(tái)(天地圖)市級(jí)節(jié)點(diǎn)2020年綜合技術(shù)評(píng)估要求,升級(jí)平臺(tái)的統(tǒng)一門戶建設(shè)服務(wù)能力,天地圖·合肥需要新增醫(yī)療衛(wèi)生作為示范應(yīng)用。本文探討基于開(kāi)源GIS技術(shù)棧構(gòu)建地理信息服務(wù)應(yīng)用平臺(tái),該方式兼?zhèn)潇`活、開(kāi)放的優(yōu)點(diǎn)。

本文詳細(xì)闡述如何使用GeoServer、OpenLayers、QGIS、PostgreSQL等開(kāi)源GIS軟件快速構(gòu)建地理信息服務(wù),實(shí)現(xiàn)天地圖·合肥醫(yī)療衛(wèi)生示范應(yīng)用。

2 開(kāi)源GIS框架

2.1 GeoServer

GeoServer是OpenGIS Web服務(wù)器規(guī)范的J2EE實(shí)現(xiàn),利用GeoServer可以方便地發(fā)布地圖數(shù)據(jù),允許用戶對(duì)特征數(shù)據(jù)進(jìn)行更新、刪除、插入操作,通過(guò)GeoServer可以比較容易地在用戶之間迅速共享空間地理信息。GeoServer是社區(qū)開(kāi)源項(xiàng)目,可以直接通過(guò)社區(qū)網(wǎng)站下載相關(guān)資料。

GeoServer支持OGC標(biāo)準(zhǔn)規(guī)范的系列服務(wù),支持PostgreSQL、MySQL等數(shù)據(jù)庫(kù)以及ArcSDE、Shapefile等中間件和文件資源,能夠?qū)⒕W(wǎng)絡(luò)地圖輸出為JPEG、PNG、KML等多種圖片和數(shù)據(jù)格式,可以運(yùn)行在任何基于J2EE/Servlet的容器之上,支持多種客戶端框架。

2.2 OpenLayers

OpenLayers是一個(gè)專為WebGIS客戶端開(kāi)發(fā)提供的前端類庫(kù),用于訪問(wèn)以標(biāo)準(zhǔn)格式發(fā)布的地圖數(shù)據(jù),實(shí)現(xiàn)訪問(wèn)空間數(shù)據(jù)的方法都符合行業(yè)標(biāo)準(zhǔn)。

OpenLayers是一個(gè)開(kāi)源項(xiàng)目,其目的是為互聯(lián)網(wǎng)客戶端提供強(qiáng)大的地圖展示功能,包括地圖數(shù)據(jù)顯示與相關(guān)操作,并具有靈活的擴(kuò)展機(jī)制。目前OpenLayers封裝了部分公共地圖數(shù)據(jù),如OpenSteetMap、Bing地圖的數(shù)據(jù)源等。

2.3 QGIS

QGIS是一個(gè)跨平臺(tái)的桌面端開(kāi)源GIS軟件,支持?jǐn)?shù)據(jù)的可視化、管理、編輯、分析等功能。通過(guò)QGIS進(jìn)行圖層的樣式配置,將圖層效果導(dǎo)出為符合OGC標(biāo)準(zhǔn)的SLD樣式文件,在Geoserver中導(dǎo)入SLD文件,完成地理空間數(shù)據(jù)發(fā)布后的地圖渲染效果。QIS也支持向PostgreSQL中導(dǎo)入SHP數(shù)據(jù)。

2.4 PostgreSQL和PostGIS

PostgreSQL是一個(gè)強(qiáng)大的、開(kāi)源的對(duì)象-關(guān)系數(shù)據(jù)庫(kù)系統(tǒng)。PostGIS則是PostgreSQL的一個(gè)擴(kuò)展插件,目的是使PostgreSQL支持空間數(shù)據(jù)的存儲(chǔ)和使用。PostGIS提供了上百個(gè)空間運(yùn)算的SQL方法,可用于空間數(shù)據(jù)的關(guān)系運(yùn)算、處理、編輯等功能。

3 系統(tǒng)設(shè)計(jì)

3.1 設(shè)計(jì)思路與目標(biāo)

天地圖·合肥醫(yī)療衛(wèi)生應(yīng)用系統(tǒng)建設(shè)目標(biāo)包括以下幾方面:①是圍繞醫(yī)療衛(wèi)生信息可瀏覽、可定位、可查詢的基本工作目標(biāo),借助開(kāi)源GIS,應(yīng)用“天地圖”地理信息服務(wù)和功能,構(gòu)建覆蓋全市范圍醫(yī)療衛(wèi)生信息管理新模式;②是梳理和處理全市各區(qū)域的醫(yī)院、社區(qū)診所、急診點(diǎn)、藥店、醫(yī)療器械點(diǎn)等數(shù)據(jù),構(gòu)建統(tǒng)一的醫(yī)療衛(wèi)生信息資源數(shù)據(jù)庫(kù)。

3.2 系統(tǒng)體系架構(gòu)

天地圖·合肥醫(yī)療衛(wèi)生應(yīng)用的整體架構(gòu)如圖1所示。應(yīng)用以公共地圖數(shù)據(jù)服務(wù)、醫(yī)療衛(wèi)生相關(guān)數(shù)據(jù)為基礎(chǔ),客戶端使用OpenLayers框架,后臺(tái)使用.NET框架,從而構(gòu)建一個(gè)涵蓋地圖顯示與操作、醫(yī)療衛(wèi)生查詢展示等功能的WebGIS系統(tǒng)。

圖1 醫(yī)療衛(wèi)生應(yīng)用的整體架構(gòu)

3.3 系統(tǒng)功能設(shè)計(jì)

根據(jù)設(shè)計(jì)需求,醫(yī)療衛(wèi)生應(yīng)用采用B/S架構(gòu),以Visual Studio平臺(tái)作為開(kāi)發(fā)工具,采用.NET Core和JavaScript進(jìn)行編程,利用OpenLayers進(jìn)行Web開(kāi)發(fā)。應(yīng)用的功能主要包括:地圖管理、醫(yī)療衛(wèi)生信息瀏覽與查詢等,如圖2所示。

圖2 系統(tǒng)功能設(shè)計(jì)示意圖

4 多源異構(gòu)數(shù)據(jù)集成

天地圖·合肥醫(yī)療衛(wèi)生應(yīng)用涉及五類數(shù)據(jù),分別是:綜合醫(yī)院、社區(qū)診所、急診點(diǎn)、藥店和醫(yī)療器械。其中綜合醫(yī)院為面狀數(shù)據(jù),其他均為點(diǎn)狀數(shù)據(jù)。

4.1 空間數(shù)據(jù)庫(kù)整合

空間數(shù)據(jù)庫(kù)因其具備空間位置、拓?fù)潢P(guān)系等空間特性,其存儲(chǔ)方式一般采用文件型方式,但隨著關(guān)系型數(shù)據(jù)庫(kù)的不斷流行,且主流關(guān)系型數(shù)據(jù)庫(kù)均支持存儲(chǔ)空間數(shù)據(jù),開(kāi)源數(shù)據(jù)庫(kù)PostgreSQL及其空間擴(kuò)展PostGIS能夠提供對(duì)空間數(shù)據(jù)的完美支持。本文利QGIS客戶端,連接PostgreSQL數(shù)據(jù)庫(kù),進(jìn)行數(shù)據(jù)的空間檢查、整理與導(dǎo)入,如圖3所示。

圖3 PostgreSQL數(shù)據(jù)庫(kù)

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

GeoServer采用登錄GeoServer,新建工作區(qū)和數(shù)據(jù)存儲(chǔ),發(fā)布圖層。服務(wù)發(fā)布成功后,可以在GeoServer中預(yù)覽圖層,如圖4所示。

圖4 GeoServer預(yù)覽服務(wù)

5 應(yīng)用搭建

醫(yī)療衛(wèi)生應(yīng)用主要功能包括地圖數(shù)據(jù)的顯示操作、醫(yī)療衛(wèi)生數(shù)據(jù)的查詢定位,地名地址周邊醫(yī)療衛(wèi)生點(diǎn)查詢等。本應(yīng)用使用JavaScript的客戶端方式,結(jié)合開(kāi)源框架.NET Core開(kāi)發(fā)模式實(shí)現(xiàn)。

5.1 加載天地圖數(shù)據(jù)

天地圖提供免費(fèi)開(kāi)放的基礎(chǔ)地圖服務(wù),為瓦片地圖形式,在應(yīng)用中作為底圖直接調(diào)用。本應(yīng)用加載天地圖的在線地圖作為底圖,默認(rèn)顯示天地圖的矢量底圖,通過(guò)底圖列表實(shí)現(xiàn)切換天地圖數(shù)據(jù)類型的功能,如圖5所示。

圖5 地圖加載

5.2 基礎(chǔ)功能

(1)縮放功能

底圖縮放都是由OpenLayers的View類中的setZoom方法實(shí)現(xiàn),縮放的級(jí)數(shù)由setZoom方法的參數(shù)設(shè)置。首先通過(guò)view.getZoom()獲得當(dāng)前地圖的級(jí)數(shù),然后調(diào)用setZoom方法進(jìn)行縮放,通過(guò)view.setZoom(zoom-1)可將地圖縮小一級(jí),通過(guò)view.setZoom(zoom+1)可將地圖放大一級(jí)。

(2)測(cè)量功能

測(cè)量功能包括距離測(cè)量與面積測(cè)量。距離測(cè)量是指計(jì)算鼠標(biāo)繪制的線條實(shí)際長(zhǎng)度,面積測(cè)量則是指計(jì)算鼠標(biāo)繪制范圍的實(shí)際面積大小。OpenLayers的測(cè)量功能沒(méi)有提供封裝好的測(cè)量控件,但提供了相應(yīng)接口,需要基于幾何對(duì)象的相應(yīng)接口并結(jié)合圖形繪制功能來(lái)實(shí)現(xiàn),如圖6所示。

圖6 量測(cè)

(3)搜索功能

搜索功能調(diào)用天地圖的地名搜索服務(wù)。天地圖的地名搜索服務(wù)API是一類簡(jiǎn)單的HTTP/HTTPS接口,包括普通搜索、視野內(nèi)搜索、周邊搜索、拉框搜索、普通建議詞搜索等。使用搜索服務(wù)前需要申請(qǐng)自己的Key。

圖7 地名搜索

5.3 聚合功能

聚合標(biāo)準(zhǔn)是指在不同地圖分辨率下,通過(guò)聚合方式展現(xiàn)標(biāo)注點(diǎn)信息的一種方式,其目的是為了減少當(dāng)前視窗下地圖添加標(biāo)注點(diǎn)的數(shù)量,提升客戶端渲染速度。如果在地圖上添加很多標(biāo)注點(diǎn),當(dāng)?shù)貓D縮放到小級(jí)別時(shí)則會(huì)出現(xiàn)標(biāo)注點(diǎn)重疊的現(xiàn)象,既不美觀,多點(diǎn)渲染的效率也會(huì)受到影響。此時(shí),可以根據(jù)地圖縮放級(jí)數(shù)的大小,將當(dāng)前視窗的標(biāo)注點(diǎn)聚合顯示。

OpenLayers提供了相應(yīng)的聚合標(biāo)注功能,以此方式來(lái)提升速度,增強(qiáng)用戶體驗(yàn)。OpenLayers封裝了聚合數(shù)據(jù)源(ol.source.Cluster),可通過(guò)此數(shù)據(jù)源實(shí)現(xiàn)矢量要素的聚合功能,如圖8、圖9所示。

圖8 藥店聚合分布

圖9 社區(qū)診所聚合分布

5.4 醫(yī)療衛(wèi)生服務(wù)查詢

醫(yī)療衛(wèi)生服務(wù)查詢調(diào)用GeoServer的WFS服務(wù),將結(jié)果展示在地圖上,點(diǎn)擊結(jié)果行,彈出相應(yīng)Popup標(biāo)注,如圖10、圖11所示。

圖10 醫(yī)療衛(wèi)生查詢面板

圖11 醫(yī)院查詢結(jié)果

5.5 周邊搜索功能

在用戶搜索地名地址時(shí),能查找到該地名地址周邊一定距離的醫(yī)療衛(wèi)生點(diǎn),如圖12所示。該功能用Post GIS計(jì)算空間距離。對(duì)應(yīng)的SQL語(yǔ)句為:

圖12 周邊搜索

select st_astext(geom) as geometry,* from table where ST_DWithin(st_astext(geom),('POINT(X,Y)'),radius/ (2 *PI * 6371004) * 360)=true ;

猜你喜歡
數(shù)據(jù)庫(kù)功能服務(wù)
也談詩(shī)的“功能”
服務(wù)在身邊 健康每一天
服務(wù)在身邊 健康每一天
服務(wù)在身邊 健康每一天
招行30年:從“滿意服務(wù)”到“感動(dòng)服務(wù)”
商周刊(2017年9期)2017-08-22 02:57:56
關(guān)于非首都功能疏解的幾點(diǎn)思考
數(shù)據(jù)庫(kù)
數(shù)據(jù)庫(kù)
數(shù)據(jù)庫(kù)
數(shù)據(jù)庫(kù)
主站蜘蛛池模板: 亚洲人成网站观看在线观看| 夜夜爽免费视频| 99精品久久精品| 午夜a级毛片| 国产激情在线视频| 日韩免费中文字幕| 精品综合久久久久久97超人该| 欧美午夜网| 中文字幕2区| 九色最新网址| 区国产精品搜索视频| 亚洲人成网站在线播放2019| 欧美成人精品一级在线观看| 久久综合亚洲色一区二区三区| 亚洲成人在线免费观看| 色亚洲成人| 丰满人妻中出白浆| 国产嫖妓91东北老熟女久久一| 亚洲国产成人精品青青草原| 黄片一区二区三区| 免费全部高H视频无码无遮掩| 大学生久久香蕉国产线观看| 一级做a爰片久久免费| 日本成人精品视频| 99精品免费在线| 国产精品国产三级国产专业不| 国产一区二区精品福利| 四虎影视永久在线精品| 国产精品主播| 色窝窝免费一区二区三区| 奇米影视狠狠精品7777| 91丨九色丨首页在线播放| 高潮毛片无遮挡高清视频播放| 亚洲无码高清视频在线观看| 九色综合视频网| 国产日韩久久久久无码精品| 91国内外精品自在线播放| 在线另类稀缺国产呦| 亚洲天堂色色人体| 视频一区亚洲| 欧美国产日本高清不卡| 在线播放精品一区二区啪视频| 欧美日韩一区二区三区在线视频| 国产va在线观看| 亚洲天堂免费观看| 精品国产一区91在线| 偷拍久久网| 亚洲天堂精品在线观看| 亚洲精选无码久久久| 婷婷综合缴情亚洲五月伊| 国产区在线观看视频| 婷婷亚洲天堂| www亚洲天堂| 玖玖精品在线| 亚洲色图欧美激情| 日韩无码视频专区| 精品视频一区二区三区在线播| 国产精品第一区| 成人va亚洲va欧美天堂| 久久精品免费国产大片| 在线观看国产网址你懂的| 狠狠色综合久久狠狠色综合| 爱做久久久久久| 国产一区二区精品福利| 2020最新国产精品视频| 天天综合天天综合| 国产精品亚洲αv天堂无码| 亚洲国产亚综合在线区| 亚洲综合一区国产精品| 72种姿势欧美久久久大黄蕉| 日韩免费毛片视频| 2020国产精品视频| 狠狠躁天天躁夜夜躁婷婷| 三上悠亚一区二区| 日韩精品无码一级毛片免费| 自慰网址在线观看| 亚洲伦理一区二区| 精品少妇三级亚洲| 国产一区二区三区精品欧美日韩| 中文字幕有乳无码| 国产91麻豆免费观看| www.国产福利|