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

QGIS插件技術在點狀地圖符號轉換中的應用

2023-10-19 08:23:52陳雅慧
地震地磁觀測與研究 2023年3期
關鍵詞:符號

陳雅慧

(中國北京 100045 中國地震臺網中心)

0 引言

地震系統的核心技術以及軟硬件設備要確保可靠、可信、可控。因此,地震應急業務系統有從商業軟件向開源軟件轉換的迫切需求,制作各類專題地圖是轉換的直接體現。

在地震系統日常業務中,專題圖多采用美國ESRI公司旗下的ArcGIS軟件進行制作,并積累了一套地震數據特有符號庫,該符號庫能夠增強地圖可讀性,豐富地圖的可視化表達,進而傳遞出災區基本情況和災情信息,在地震災害應急指揮及救援管理中發揮著重要作用。但商業軟件昂貴,且難以獲得開發版權,制圖軟件開源化發展成為必然。

地圖符號庫轉換成為跨平臺應用的關鍵問題。為了符合地圖制圖規范,減少符號重復設計等工作,跨平臺的地圖符號共享成為研究熱點(陶陶等,2007)。目前,地圖符號共享的研究主要分為2類,一類是研究不同數據格式之間的符號共享(陳夢琳等,2015;王志強等,2020),另一類是研究統一標準的符號共享,包括通用圖形標準(吳明光等,2011;陳長林,2018)、通用地圖符號(王本林等,2018)、統一行業標準(Liu et al,2016)等,還有對符號共享的可用性評價(廖嫣然等,2022)。

QGIS是基于Python和C++語言研發的開源制圖軟件。其用戶界面友好,支持多類型數據加載,符號編輯功能豐富,在制圖方面更具優勢。而且,QGIS支持插件,可以通過編譯插件擴展軟件的制圖功能。本文將符號讀取、屬性轉換、符號輸出功能集成在QGIS插件內,成功實現ArcGIS符號庫點符號向QGIS的遷移,且遷移前后點符號的制圖功能和效果完全相同。

1 插件構建方法

運用QGIS技術創建的點符號轉換插件主要用于數據處理和分析,且用戶界面只需要文件輸入和輸出部件。

QGIS插件開發主要有2種方式,一種是手動創建,另一種是自動創建。自動創建是利用Plugin Builder生成固定的插件模板,通過對模板文件的編譯實現相應功能,比手動創建簡便。此外,自動創建的插件模板有3個,分別為Tool button with dialog(帶有對話框的工具按鈕)、Tool button with dock widge(t帶部件的工具按鈕),以及Processing Provide(r處理框架)。與前2個模板相比,Processing Provider模板能夠生成固定插件界面,簡化設計界面流程。對比發現,使用Processing Provider自動創建方法能夠更簡單快速地構建插件,且插件既能夠用于數據批處理,也能夠被Python控制臺調用。

2 點符號轉換功能設計

同一類型的符號在ArcGIS和QGIS平臺中使用的函數庫不同,基于QGIS技術設計的點符號轉換插件可以使兩平臺同類型符號匹配。本插件在QGIS平臺生成的新符號與ArcGIS中的同類型符號具有相同的功能、屬性和展示效果。

程序總體流程(圖1)為:①輸入ArcGIS“.style”符號庫文件,對文件中的全部符號進行遍歷循環,提取各類數據;②對數據進行解碼,獲得符號對象的多種屬性信息和guid值(全局唯一標識符,用于識別每個符號的類型,在QGIS創建符號時能夠通過判斷符號類型添加對應的符號屬性);③將解碼得到的各種屬性與QGIS中的相同屬性建立一一對應關系,實現兩平臺符號屬性的轉換;④對多層符號進行符號層疊加,并將全部符號統一輸出為XML文件。根據實際需求,本次只完成點符號中的簡單標記符號和字符標記符號2類符號的轉換。

圖1 QGIS點符號轉換程序流程Fig.1 Flowchart of QGIS point symbol conversion program

2.1 符號讀取

調用Access數據庫軟件打開“.style”符號庫文件,查看每個符號屬性表,其中包括ID、Name、Category、Tags和Object,Tags中記錄了符號層數(多圖層)、色彩模式(rgb、hsv等)、顏色值(藍色、白色、綠色等)、符號類別(字符、簡單)和字體(ESRI Default Marker等)等屬性。參考這些標簽,在符號屬性轉換模塊中定義相應的轉換函數。

通過對Object進行后臺解碼,獲取每個符號的二進制數據(BLOB),這些數據包含了Tags中涉及的全部符號屬性信息,這些不同類型的屬性信息(int、string、double、uchar等類型)需要通過創建對應的讀取方法獲得其屬性值。調用這些方法可以得到簡單標記符號(Simple Marker Symbol)的符號層數、點類型Style、符號大小Size、X和Y的偏移量Offset和輪廓線Outline等屬性;得到字符標記符號(Character Marker Symbol)的符號層數、Unicode值、旋轉角度Angle等屬性。

在符號的二進制數據中還能夠提取guid值。在ArcGIS中每類符號具有唯一guid值,如簡單標記符號為“7914e5fe-c892-11d0-8bb6-080009ee4e41”,若待轉換符號的guid值與之相匹配,則判斷該符號為簡單標記符號,進而按簡單標記符號的創建方法添加符號屬性。這種方法能夠確保符號類型的唯一性,便于快速識別并創建符號。

2.2 符號屬性轉換

在符號屬性轉換模塊中,本插件定義了多種轉換函數,這些函數通過調用QGIS提供的各種類庫和函數接口,將ArcGIS符號屬性轉換為QGIS中相同的符號屬性,實現兩軟件平臺符號屬性的統一。

2.2.1 簡單標記符號。ArcGIS中的Simple Marker Symbol簡單標記符號類型對應QGIS中的Simple Marker類型。簡單標記符號的屬性參數有Color、Style、Size、X Offset、Y Offset、Outline Color和Outline Size。在兩平臺中,有些屬性參數能夠直接進行關聯,關聯方法是,導入QGIS中的core、gui等核心包和模塊,調用相應方法給參數賦值。如:代碼(a)為創建參數點類型(Style)轉換方法,其中ArcGIS中的“X”形狀對應QGIS中的“Cross2”形狀。有些屬性參數轉換需要通過數學運算來實現,如:代碼(b)為顏色轉換,QGIS軟件中只有HSV和RGB2種色彩模式,因此對ArcGIS中的部分以CMYK顯示顏色的點符號來說,需要考慮不同色彩模式的成色原理,實現參數Color的轉換。

代碼(a):

2.2.2 字符標記符號。ArcGIS中的Character Marker Symbol字符標記符號類型對應QGIS中的Font Marker類型。字符標記符號的屬性參數有Font、Unicode、Size、Angle、Color和Offset。與簡單標記符號的轉換類似,除了要轉換能夠直接關聯的屬性參數外,還需要運用數學運算完成符號角度參數的轉換。在ArcGIS中,隨著角度數值的增大,符號呈逆時針轉動,而在QGIS中則相反,角度數值增加,符號順時針轉動。由此通過數學運算中的角度換算,定義了角度轉換函數,用360°減去ArcGIS中的符號角度值則為QGIS中的符號角度值。這些數學運算實現了兩平臺符號角度的一致性。

2.3 符號創建及輸出

符號創建包括單層符號和多層符號,本插件定義了符號(層)創建函數,通過調用符號屬性轉換模塊中的屬性轉換方法,為符號的每一層添加轉換后的屬性參數,調用qgis.core核心包中的QgsSimpleMarkerSymbolLayer和QgsFontMarkerSymbolLayer方法創建對應的2類點符號(層)。

此外,定義符號創建函數對符號的層數進行判斷,單層符號直接創建,多層符號疊加后創建。點符號轉換插件的輸出結果為“.xml”格式文件,通過調用QgsStyle.exportXml方法將新創建的全部點符號打包輸出為XML格式符號庫。轉換后的符號庫能夠在QGIS軟件的樣式管理器中直接導入使用。

2.4 運行調試

2.4.1 插件激活。在QGIS的插件管理器中識別并啟用已經編譯的點符號轉換插件“Marker Symbol”。插件置于Processing ToolBox菜單欄,激活后雙擊運行。

2.4.2 插件調試。插件初次運行程序經常報錯,需不斷調試并反復修改。使用插件重載器插件(Plugin Reloader),可對自定義插件執行重載、加載和卸載的指令,無需重啟QGIS軟件即可實現自定義插件的修改和測試。

3 符號轉換結果對比

以目前地震應急專題圖系統在用的“ArcGIS災情信息標繪符號庫”為例,運行點符號轉換插件進行符號轉換。共讀取符號192個,其中點符號141個,由插件運行日志中記錄的符號轉換進度,141個點符號按符號ID順序依次讀取、轉換、輸出,用時小于3 s。與人工制作符號相對比,運用QGIS插件技術縮短了符號轉換時間,實現了地圖符號從ArcGIS向QGIS的快速批量遷移。將插件運行后生成的.xml文件導入QGIS插件管理器,導入結果見圖2。

圖2 點符號轉換結果Fig.2 Result of point symbol conversion

在符號外觀方面,與原ArcGIS符號庫(圖3)相比,127個點符號完全轉換成功,14個符號在顏色、形狀和大小上也完成轉換,但仍有少量符號層偏移現象,如“中型水庫”符號,需人工調整。存在符號層偏移的原因可能有:①ArcGIS與QGIS軟件的符號單位不一致,如QGIS支持用像素為單位設置符號尺寸,而ArcGIS用點,二者之間的轉換關系需進一步研究;②在編寫符號轉換插件過程中,算法參數不適用,需根據實際情況調整。整體來說,本次符號外觀轉換成功率大于90%。此外,QGIS符號的顏色渲染和美觀度優于ArcGIS,符號整體效果更簡潔清晰。

圖3 原ArcGIS符號庫Fig.3 Original ArcGIS symbol library

在符號功能方面,ArcGIS中的符號為矢量格式,能夠根據圖幅比例調整符號大小,并且能夠更改符號顏色。經插件轉換后的QGIS點符號同樣支持基礎的屬性修改功能,包括顏色、透明度、大小、偏移量、旋轉角度等參數設置,證實了用QGIS插件技術完成點符號轉換能夠達到平臺間符號共享的目的。

4 成果應用

“災情信息標繪符號庫”QGIS轉換版已在地震應急日常業務工作中得到應用,如震前準備圖件制作、專題圖模板的快速產出制作等。最新部署的地震應急快速評估與協同系統配置了QGIS版本的多個專題圖模板,其使用的點狀地圖符號均由本點符號轉換插件“Marker Symbol”生成。以2022年9月5日四川瀘定MS6.8地震為例,系統自動產出A3、A4幅面震后第一時段專題圖共14張,文中繪出地震快速評估影響范圍圖,見圖4中右側圖件,左圖為ArcGIS產出圖件,對比可見,QGIS產出圖件符號顏色顯示更均勻,對比度柔和,各要素間無遮蓋,整體成圖效果簡潔、清晰。

圖4 評估系統產出的四川瀘定MS 6.8地震影響范圍專題圖Fig.4 Thematic maps of the influence area of the Luding MS 6.8 earthquake in Sichuan from assessment system

5 結束語

QGIS插件技術在點狀地圖符號轉換中的應用,證明基于QGIS插件技術能夠提高符號轉換效率,減少重復工作,實現快速批量轉換,且符號轉換成功率較高。經插件轉換后的點狀地圖符號具有以下優勢:①符號分辨率高、圖案清晰;②符號形狀標準、大小可調;③符號顏色鮮明、色彩可換;④符號信息齊全、屬性可更改;⑤符號功能完備,專題圖件要素完整、表達精確;⑥符號適用于不同比例尺、不同地圖幅面的專題圖制作;⑦符號制圖效果與在ArcGIS軟件中相同,甚至優于ArcGIS,達到直接應用的標準。由此可見,QGIS插件技術具有較強的可操作性,是ArcGIS平臺向QGIS平臺轉換的重要工具,不但可以實現不同平臺間的符號共享,還可在其他行業和領域中實現更廣泛的應用。

然而,采用QGIS插件技術轉換后的部分符號會出現符號層偏移現象,可能與兩平臺符號單位不同有關。此外,特殊字體轉換差異可能導致符號轉換錯誤。以上問題仍需進一步研究。

猜你喜歡
符號
幸運符號
符號神通廣大
學符號,比多少
幼兒園(2021年6期)2021-07-28 07:42:14
“+”“-”符號的由來
靈魂的符號
散文詩(2017年17期)2018-01-31 02:34:20
怎樣填運算符號
變符號
倍圖的全符號點控制數
圖的有效符號邊控制數
草繩和奇怪的符號
主站蜘蛛池模板: 亚洲成aⅴ人在线观看| 日本爱爱精品一区二区| 国产高潮视频在线观看| 91麻豆国产视频| 欧美精品一区在线看| 制服丝袜亚洲| 91成人在线免费观看| 亚洲天堂自拍| 国产精品浪潮Av| 色婷婷天天综合在线| 精品国产免费人成在线观看| 色视频国产| 久久黄色一级视频| 国产AV毛片| 在线欧美日韩国产| 日韩欧美91| 特级做a爰片毛片免费69| 国产av一码二码三码无码 | 欧美日韩在线观看一区二区三区| 91视频区| 91精品国产情侣高潮露脸| 国产激爽大片高清在线观看| 一区二区日韩国产精久久| 青青操国产| 亚洲性日韩精品一区二区| 国产三级a| 伊人丁香五月天久久综合| 欧美成人一级| 亚洲国产日韩视频观看| 欧美日韩在线成人| 熟妇无码人妻| 日韩在线视频网站| 午夜国产精品视频黄| 亚洲成人免费在线| 欧美日韩国产一级| 午夜精品区| 久久久四虎成人永久免费网站| 国产精品久久久久久搜索| 沈阳少妇高潮在线| 精品国产自在现线看久久| 97se亚洲| 99精品国产高清一区二区| 成年人免费国产视频| 亚洲精品日产AⅤ| 777午夜精品电影免费看| 国产精品无码AV片在线观看播放| 中文字幕乱妇无码AV在线| 国产免费久久精品99re不卡| 综合色区亚洲熟妇在线| 亚洲日本一本dvd高清| 久草网视频在线| 国产成人亚洲无吗淙合青草| 国产成人在线无码免费视频| 精品人妻无码区在线视频| 成人va亚洲va欧美天堂| 欧美中文字幕无线码视频| 国产精品人莉莉成在线播放| 一级高清毛片免费a级高清毛片| 亚洲欧洲日韩国产综合在线二区| 欧美久久网| 国产91小视频| 亚洲欧美日韩天堂| 欧美亚洲中文精品三区| 四虎国产精品永久在线网址| 亚洲人成网站观看在线观看| 毛片免费观看视频| 五月天综合婷婷| 91国内视频在线观看| 亚洲精品午夜天堂网页| 欧美一区福利| 午夜国产理论| 亚洲综合片| 无码精油按摩潮喷在线播放| 亚洲综合第一页| 午夜高清国产拍精品| 国产精品欧美激情| 成AV人片一区二区三区久久| 99精品在线看| 尤物午夜福利视频| 成年人免费国产视频| 欧美a在线看| 亚洲欧美综合在线观看|