日本啪啪网站_亚洲一区二区三区夜色_国农村精品国产自线拍_两男揉女子乳动态图千乐

Qt跨平臺地圖符號系統測試

發布時間:2020-05-15 10:14:50 作者:臻圖信息 閱讀量:3419

1、原型測試系統實現

1.1 Windows下環境配置

    大多數人對Windows環境比較熟悉,因此,在Windows下完成相關功能編寫和調試。對于Windows開發環境配置如下:

    1)集成開發環境選用VS2010,下載并安裝;

    2)訪問網址http://qt-project.org/downloads根據自己電腦配置下載對應的Qt5.2.0的版本安裝;

3)根據Qt安裝路徑設置環境變量,設置如圖所示:

    4)下載并安裝VS2010插件Visual Studio Add-in 1.2.2 for Qt5,至此就完成了Windows下開發環境的部署。

1.2  windows下設計與實現

    原型測試系統主要包括主界面、符號庫管理界面和圖層管理界面等。主界面由工具條、狀態欄、圖層視圖、主視圖四部分組成。對于工具條提供了添加數據集、符號管理器、圖層屬性、全圖功能。狀態欄主要顯示當前鼠標位置、地圖比例尺和繪制狀態等。圖層視圖顯示了當前地圖的圖層名稱,可以快捷控制圖層的可見性,移動圖層位置,調整圖層的上下關系。主視圖主要用于顯示地圖,進行與用戶進行交互,主界面如下圖所示。

    測試系統為了提供基本的地圖的放大、縮小和平移功能,需要將主視圖的鼠標事件重寫,而對于嵌入式設備需要重寫觸摸屏事件。對于觸摸屏,原型測試系統最多能夠支持三點式觸摸,并通過觸摸屏的手勢來判斷地圖操作的類型。

    對于常用的地圖符號和色帶,將其存儲在SQlite數據庫中,方便用戶的重復使用。地圖符號在數據庫中的存儲是按照符號類型分別創建點符號、線符號、面符號三張表。表主要的信息由符號的唯一ID、名稱和數據流等組成。色帶分為隨機色帶和漸進色帶兩種,使用一張色帶表示兩類色帶。色帶表的信息有色帶的唯一ID、名稱和數據流。完成數據庫結構設計后,使用Qt設計符號庫管理相關界面。

    符號管理器主要包括符號管理主界面、點符號管理界面、線符號管理界面、面符號管理界面、隨機色帶管理界面和漸進色帶管理界面等。

    符號管理主界面主要負責創建符號庫存儲文件、導入已有符號庫存儲文件、插入常用符號、刪除已有符號以及修改已有符號參數等,界面如下圖所示。

點、線、面符號管理界面分別負責點、線、面符號創建與修改。符號庫中的符號可以在視圖中直接使用,也可以根據需要在已有的符號上做修改。點、線、面符號管理界面如下圖所示。

    通過上述的符號管理器創建出一些常用的點、線、面符號實例,效果如下圖所示。

    同樣對于色帶的管理,提供色帶管理界面。色帶使用RGB和HSV顏色空間,主要用于漸進符號的填充以及一些專題圖,其管理界面如下圖所示。

對于符號和色帶查詢、插入、刪除和修改,實質是通過SQL語句對數據信息進行修改,例如符號的插入主要代碼如下:

    圖層管理界面主要負責圖層基本屬性的設置,注記的相關屬性設置和地圖專題顯示設置,其管理界面如下圖所示。

1.3 編寫跨平臺文件

    Windows環境下的測試系統設計與實現已經完成,為了實現在其他系統上能夠運行,需要編寫與平臺無關的文件,而Qt為我們提供了pro文件。

    針對不同操作系統,只需要編寫一份pro文件。在文件中,添加自定義字段P1atFormName,來區分不同的操作系統。這里我們以地圖控件模塊為例說明一下pro文件的編寫方法。

    P1atFormName字段根據編譯環境,區分不同的操作系統;CONFIG(debug,debuglrelease)判斷方案配置;DESTDIR字段設置模塊生成路徑;TEMPLATE字段定義模塊類型,如動態庫賦值為lib;利用TARGET字段設置模塊的名稱,如接口模塊可設置為MapControl;  DEFINES字段定義預處理宏;使用LIBS字段添加模塊依賴庫;INCLUDEPATH字段添加頭文件文件路徑;SOURCES字段添加需要編譯cpp文件。對于pro的文件其他字段說明,可以參考Qt官網的白皮書,這里就不再贅述。

    對于其它模塊,分別按照格式編寫相應的pro文件。有了pro文件,利用QtCreator集成環境開發環境配置相應平臺信息,無需手動去編寫代碼,便可以實現語言之間的互操作,提高了跨平臺的效率。接下來分別介紹各系統環境部署、可執行程序生成和測試。

2、Android系統編譯與測試

    Android系統底層核心模塊采用C或者C++編寫,但其上層應用模塊采用Java語言編寫,這樣使得二次開發必須使用Java語言。Android在發布時,谷歌己經聲明Android的虛擬機支持JNI這種編程方式,這為使用C或者C++開發功能模塊提供了可能。

    Android環境配置如下:

      1)在Android開發官網下載 Android SDK和NDK;

      2)下載并安裝Java開發環境;

      3)在Qt官網下載Qt 5.2.0 for Android (Windows 32-bit)并安裝;

      4)打開Qt安裝目錄下的qtcreator,配置Android開發環境,如下圖所示。

    以上就是部署Android開發相關步驟。將先前編寫好的pro文件加載到qtcreator,設置為Android for armeabi 工程。此時,Android運行版本最低為Android2.1。根據模塊的依賴關系依次編譯生成Android動態庫.so文件,最后編譯主測試程序,打包生成.apk安裝文件。使用手機安裝助手將apk安裝到手機上,并將shp矢量數據拷貝到手機sd卡上。手機選用小米2,其配置為操作系統Android OS 4.1、主屏尺寸4.3英寸、RAM容量2G、 ROM容量為16G。安裝完成后,啟動應用程序,加載矢量數據,對各類符號分別測試。測試效果如下圖所示。

3、Linux和Mac系統編譯與測試

    Linux系統版本有很多,選用比較流行、穩定的Ubuntu 12.04的64位系統。Ubuntu下的編譯器使用gcc,它提供了g++來編譯C++程序。Linux下的開發環境配置相對比較簡單。通過“sudo apt-get install g++”命令下載安裝g++編譯器,并使用“g++ --version”查看是否安裝成功。在Qt官網獲取Qt5.2.0 for Linux 64-bit開發包,便可完成開發環境的配置。接下就是對各個模塊的編譯。將開發程序拷貝到Ubuntu下,使用qcreator加載所有pro文件,依次編譯所有模塊。加載數據,測試效果如下圖所示。

    Mac系統與Linux系統內核有密切的關系,在功能和命令行上有很多相似之處,因此,只需從下載Qt5.2.0 for Mac,其他環境配置與Linux相同。運行結果如下圖所示。

4、 iOS系統編譯與測試

    Qt5.0版本以后,增加了對iOS的支持,但穩定性較差。2013年12份推出的Qt5.2.0正式版,修改了原來版本存在的bug 。Qt5.2要求安裝xcode5.0版本,而xcode5.0只能在Mac 10.8 Mountain Lion及以上版本運行。具體的環境配置如下:

    1)安裝10.8 Mountain Lion系統;

    2)安裝g++編譯器;

    3)安裝xcode5.0集成開發環境;

    4)安裝Qt5.2.0 for iOS。

    iOS開發不像Android,免費對用戶開發。程序人員如果要在真機上測試或發布產品,就必須花費9.9美元購買許可文件,使用期限為一年。有開發環境和許可便可以使用pro文件對各個模塊進行編譯。連接IPad, IPhone或者其他iOS移動設備,編譯主程序便可將其安裝到設備當中。測試效果如下圖所示。

    以上完成了各個系統編譯和測試工作,說明了設計的地圖符號框架具有跨平臺的特性,不僅如此,地圖符號庫也具有跨平臺的特性。例如在Window下,設計一個長城符號,將這個符號庫文件拷貝到其它系統下,便可直接使用。我們使用Window和iOS兩個系統做測試,結果如下圖所示。

5、結語

隨著科技的發展,GIS應用領域越來越廣,已經深入到社會生活的方方面面。通過地圖查詢、定位、導航等功能,方便了人們出行。而地圖是空間數據符號化的結果,其顯示質量影響著地圖服務的效果。但計算機、移動設備等操作系統種類較多,因此,研究跨平臺是非常必要。它不僅方便使用,而且易于管理擴展。

 

 

標簽:Qt  地圖符號  系統測試  

我要評論

熱門標簽

數字孿生  智慧城市  三維可視化  城市大腦  智慧社區  三維GIS  新基建  智慧交通  智慧園區  3DGIS  智慧環保  智慧安防  大數據  市域治理  地理信息  物聯網  數字化  智慧大腦  GIS  智慧物流  智慧旅游  智能化  5G  智慧管廊  GIS地理信息  管理系統  智慧消防  應急指揮  智慧電網  gis系統  3DGIS+BIM  智慧展館  服務平臺  智慧建筑  GIS+BIM  智慧樓宇  智慧工廠    智慧港口  gis技術  煙草  智慧管理  gis  智慧景區  智慧水務  智慧電力  3dgis  三維gis  三維gis系統  ZTMapGIS仿真地圖  GIS技術  智能交通  供應鏈  gis行業  應急管理  BIM  智能建筑  工業互聯網  智慧監獄  元宇宙  智慧工地  綜合治理  地理信息系統  智慧停車  智慧校園  三維gis平臺  智慧農業  gis三維可視化  智慧能源  三維管網管線  室內地圖  地下綜合管廊  室內導航  智慧文旅  BIM+3DGIS  智慧醫療  智慧養老  管理平臺  智慧機房  互聯網  市域社會治理  三維可視化平臺  區塊鏈  GIS系統  智慧照明  商業地產  綜合管控治理  室內地圖導航  人工智能  智慧房產  智慧展覽  智慧物業  3D-GIS  gis平臺  gis平臺系統  BIM輕量化  gis數據  三維GIS技術  gis三維系統  三維gis開發  三維gis技術  三維gis軟件  智慧國土  三維GIS、智慧社區  智慧燈桿  應急指揮系統  商場可視化  智能監所  智慧林業  土地規劃gis  動態渲染  智慧醫院  智慧物流園區  智能電網   智慧公交  三維渲染  二三維一體化  VR全景可視化  資產可視化  二三維GIS地理信息平臺  一網統管  智慧管廊綜合監管平臺  現代化  智能化建筑  map  三維GIS開發  GIS開發  城市規劃建設  三維GIS軟件  市域社會治理現代化  3D  三維可視化管理平臺  智慧海洋  三維gis渲染平臺  二三維GIS地理信息  智能熱網  三維融合渲染平臺  VR全景  綜治  黨校地圖導航  機管局資產管理  兜逛VR  ZTmap3D  智慧商場  商業地產可視化  虛擬展館  智慧路燈  室內地圖定位  室內定位  綜合管網  綜合管廊  三位可視化  環境監測  ZTMap 3DGIS  bim  智慧電廠  智慧小區  3Dgis  ZTMapGIS  智慧鐵路  智慧監測  智慧機場  實景三維  智慧服務區域  2.5D-GIS  地質災害  三維管廊  智慧交通、數字孿生、3DGIS  智慧工廠、安全生產管理、3DGIS+BIM  數字孿生技術  智慧管網  三維地圖  信用社GIS  交通仿真  ZTMAP3D  工業園區管理  信用社地理信息系統  智慧變電站  三維管網  管廊BIM  智慧制造  園區招商  2.5D地圖  三維可視化渲染   GIS+BIM  BIM三維模型  安全管理  數字電網  智慧倉儲  環保GIS  云gis  gis的基本功能  Webgis  gis地圖  BIM平臺  智慧環境  城市規劃  數據管理  事故救援  業務功能  總體設計  Qt  技術詳情  地下管廊  系統改造  gis地圖服務  平臺構建  電子沙盤  地圖符號  系統測試  三維gis平臺功能  電力巡檢  三維gis二次開發 三維gis接口  管網GIS系統  管網管理GIS服務平臺  高校GIS系統  電網GIS行業  配電網gis系統  gis市場  gis設備  gis信息系統  gis平臺監控  BIM與GIS集成應用  gis軟件系統  移動GIS  視頻監控  房產交易地圖  VR虛擬現實  GIS應用平臺  GIS管網系統  消防GIS系統  管網gis系統  gis服務平臺  公共安全  gis高壓設備  數字經濟  基礎設施建設  無人機  系統架構  GIS平臺  gis空間分析  環保可視化  三維GIS平臺  gis專業  gis地理信息系統  三維gis軟件系統  gis三維平臺  CIM  數字城市  頂層設計  gis應用  交通運輸  數字化城市  三維gis模型  建筑產業  信息物理系統  自動化  城市應急  大數據可視化  系統管理  景觀設計  gis應用實例  gis是什么  可視化技術  開源gis軟件  可視化  假三維地圖  智能樓宇  gis開發  gis空間數據  新零售  導航  應急預案  地產  gis服務  產業鏈  gis行業發展  gis軟件  實景三維gis  
上海臻圖攀恒科技有限公司
滬ICP備2024107645號-1