《電子技術應用》
您所在的位置:首頁 > 模擬設計 > 設計應用 > 基于marble的三維可視化技術研究
基于marble的三維可視化技術研究
2016年微型機與應用第09期
程延鋒,王俊江,曹紅艷,王艷俠
(中國電波傳播研究所,山東 青島 266107)
摘要: 隨著三維可視化技術的高速發展和廣泛應用,很多應用工程領域需要三維地理信息系統顯示空間數據。據此介紹了marble的特點和應用方式,詳細論述使用VS2008和Qt構建marble源碼的基本過程。應用實例表明,基于marble的空間數據三維圖形顯示真實、形象、直觀。
Abstract:
Key words :

  程延鋒,王俊江,曹紅艷,王艷俠

  (中國電波傳播研究所,山東 青島 266107)

  摘要:隨著三維可視化技術的高速發展和廣泛應用,很多應用工程領域需要三維地理信息系統顯示空間數據。據此介紹了marble的特點和應用方式,詳細論述使用VS2008Qt構建marble源碼的基本過程。應用實例表明,基于marble的空間數據三維圖形顯示真實、形象、直觀。

  關鍵詞:三維可視化;marble;Qt;VS2008

0引言

  隨著計算機技術和圖形技術的進步,三維可視化技術得到了迅速的發展,并廣泛應用到了軍事、地理和礦產等諸多領域[16]。為了對空間數據進行可視化應用研究,相對于虛擬的二維地球平面載體,虛擬的三維地球模型作為載體更具有直觀性和真實性,所以選擇三維地球模型作為載體。考慮如果從底層開始建立比較實用的三維地球模型,則需要大量的人力在很好的硬件環境下花費大量的時間和精力才可完成開發工作,但是所做出的效果也不一定比目前流行的軟件好。比如谷歌的Google Earth[5]就是一個典型的代表。然而,Guogle Earth也有自身問題,如存在三維數據的數據量巨大、代碼數量大、操作繁瑣、瀏覽速度慢及難以脫離專業軟件環境等缺點,而GNU下的marble[8]為解決這一問題提供了一個有效的途徑。

1marble簡介和特點

  marble是一個地理地圖集和虛擬桌面地球儀,具有一套完整的地理位置信息,可以使用marble查找地點,輕松地創建地圖、測量距離以及檢索與位置相關細節。marble帶有一個小型數據庫,如果可以連接互聯網,marble可以連接到流行的互聯網百科全書“維基百科”。marble提供了多種不同的視圖,可以在線瀏覽地球上的地圖區域,也可以把地圖區域下載下來,然后離線使用。marble的所有特性都是由libMarble庫所提供的。libMarble是基于Qt框架所建立的庫,Qt是一個多平臺的C++圖形用戶界面應用程序框架,它為程序員開發多平臺應用程序提供了方便[9]。marble還有三個非常突出的優點:

  (1)marble是一個跨平臺的開源軟件,支持的操作系統包括Linux、Windows、Mac OS X和MeeGo Qt/C++;

  (2)由于libMarble是基于模塊和插件的,可根據需要在marble中嵌入自己所編寫的插件;

  (3)可以對由Keyhole標記語言(Keyhole Markup Language, KML)所編寫的文件進行解釋,把文件中所描述和保存的地理信息如點、線、面和3D模型展現出來。

2marble應用方式和源碼構建

  2.1marble應用方式

  基于marble自身的特點,有兩種方式可以對空間數據進行可視化應用研究。

  (1) 在marble中,根據需要可以編寫特定功能的插件,將對空間數據可視化的功能作為一個獨立的插件嵌入到marble中;

  (2) 通過編譯源代碼,生成對應的動態庫,在動態庫的基礎上建立一個獨立的程序實現對空間數據可視化的應用研究。

  本文采用第二種方法實現對空間數據可視化的應用研究,其主要包括以下兩個方面。

  (1) 下載marble的源代碼,然后通過cmake、Qt4和VS2008進行編譯和建立相應的動態庫marblewidgetd.dll,在建立的程序中,調用動態庫marblewidgetd.dll提供的MarbleWidget和zoomView等API生成虛擬三維地球模型。

  (2) marble分層進行顯示,可通過生成不同的層,顯示對應的不同場景,繼承LayerInterface類,在層上實現三維圖形的顯示、旋轉、平移、縮放和漫游等功能。

  2.2marble源碼構建

  以下是編譯marble的具體步驟,操作系統采用Windows。

  (1)安裝所需要的軟件以及配置相關環境

  ①安裝VS2008;

  ②安裝Qt,同時把安裝路徑加入到系統的環境變量中;

  ③安裝QtVSaddin;

  ④安裝cmake;

  ⑤下載marble源代碼。

  (2)cmake marble源代碼,在cmake gui配置文件中,輸入marble源代碼的位置和marble源代碼的構建位置。

  (3)在cmake中點擊“configure”按鈕,選擇Visual Studio 9 2008。

  (4)點擊“Generate”生成marble對應的工程。

  (5)用VS2008打開上步生成的marble工程,進行構建。

  (6)構建完成后,進行安裝,從而將庫和可執行文件默認安裝在C:\\Program Files\\marble。

  此時,可以采用調用其生成的動態庫marblewidgetd.dll和靜態庫marblewidgetd.lib進行三維可視化的應用。

3應用實例

  下面通過繪制地域網格實例說明基于marble的應用開發方法及其三維效果。以三維圖形組件庫為基礎,子類化marble的MarbleWidget類,實現了三維可視化窗體空間,該控件可以插入到其他Qt窗體控件中,通過Qt中信號和槽的消息通信機制實現三維的顯示和交互,具體步驟如下。

  (1) marblewidgetd.dll、marblewidgetd.lib和相關數據文件放到繪制地域網格工程目錄之下;

  (2) 在定義MarbleWidget類的對象的頭文件中,加入如下代碼:

  //定義MarbleWidget類的頭文件

  #include <marble/MarbleWidget.h>

  //定義繼承LayerInterface類的頭文件

  #include "reglayer.h"

  using namespace Marble;

  MarbleWidget* m_pWgt;

  reglayer * m_pLayer;

  (3) 在定義MarbleWidget類的源文件中,主要加入如下代碼:

  //申請marble對象

  m_pWgt = newMarbleWidget(this);

  m_pWgt->setGeometry(QRect(0,0,500,500));

  //加入主題地圖紋理

  m_pWgt->setMapThemeId("earth/srtm.dgml")

  //marble初始大小

  m_pWgt->zoomView(1500);

  ……

  //申請對應的圖層

  m_pLayer = new QregLayer(m_pWgt);

  //圖層加入marble

  m_pWgt->map()->addLayer(m_pLayer);

  (4)在定義的reglayer層中,render()是主要的繪制地域網格等圖形三維顯示的函數;以經度50°、緯度10°為圖1基于marble的地域網格中心,6°一個方位(60個方位),400 km一個距離段(10個距離段),繪制一個圓形的地域網格,其效果圖如圖1所示。

001.jpg

4結論

  本文進行了基于marble的三維可視化研究,包括marble的編譯、安裝以及如何應用;基于marble的空間數據顯示真實、形象、直觀,三維可視化效果好。基于marble的三維顯示已應用在很多實際項目中,解決了很多實際問題,具有很好的實用與經濟價值。

參考文獻

  [1] 楊富民,萬剛,李鋒.復雜戰場電磁態勢三維可視化研究[J].測繪工程,2012, 21(2): 3538.

  [2] 潘立武.基于地理信息系統技術的潰壩洪水三維可視化研究[J].北京聯合大學學報,2013, 27(4): 1923.

  [3] 宋潔華,郝君,趙志忠,等.基于ArcGIS Engine的三維地理信息軟件設計與應用[J].海南師范大學學報(自然科學版), 2009, 22(3): 326330.

  [4] 申皓,劉青昆,龔蔚青.基于OSG的油藏三維可視化系統研究[J].微型機與應用,2014, 23(8) : 3234.

  [5] 史曉亮.基于Google Earth的潘家窯工區煤田三維地震勘探的技術應用[J].工程地理物理學報,2014, 11(4): 457461.

  [6] 劉家學,鄧飛.基于OSG的飛機3D維修多場景動態調度方法[J].電子技術應用,2014, 40(2):118121.


此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
在线视频亚洲欧美| 久久精品国产免费| 欧美与欧洲交xxxx免费观看 | 亚洲精选成人| 亚洲高清一二三区| 今天的高清视频免费播放成人| 国产麻豆精品theporn| 国产精品ⅴa在线观看h| 欧美三级电影大全| 欧美日韩日韩| 欧美日本不卡视频| 欧美精品二区三区四区免费看视频| 蜜桃av噜噜一区| 美女黄网久久| 欧美黄色影院| 欧美日韩国产一中文字不卡| 欧美女主播在线| 欧美日韩国产123区| 欧美日韩精品免费观看视频完整| 欧美日本一道本| 欧美日本亚洲视频| 国产精品videosex极品| 欧美亚一区二区| 国产精品视频福利| 国产欧美在线观看一区| 国产亚洲精品资源在线26u| 国产亚洲精品久久久久婷婷瑜伽| 国产资源精品在线观看| 伊人春色精品| 亚洲激情成人网| 日韩香蕉视频| 亚洲午夜极品| 午夜在线成人av| 久久精品亚洲精品国产欧美kt∨| 亚洲国产成人av好男人在线观看| 亚洲人成网站精品片在线观看| 亚洲国产一成人久久精品| 最新国产成人在线观看| 亚洲区在线播放| 一本色道久久99精品综合| 亚洲图中文字幕| 国产精品卡一卡二| 国产精品对白刺激久久久| 国产精品综合| 影音先锋亚洲视频| 亚洲欧洲久久| 国产一区二区精品久久91| 一区二区三区在线视频观看| 亚洲国产欧洲综合997久久| 亚洲免费观看在线视频| 亚洲一区二区三区三| 久久精品国产欧美亚洲人人爽| 亚洲精品美女久久久久| 亚洲一品av免费观看| 久久成人人人人精品欧| 麻豆成人91精品二区三区| 欧美精品成人| 国产欧美不卡| 最新国产成人av网站网址麻豆| 亚洲网站在线播放| 亚洲第一在线| 亚洲一区二区三区在线视频| 久久久久久久综合色一本| 欧美高清在线视频| 国产精品日韩欧美大师| 在线观看视频日韩| 一本色道久久综合精品竹菊 | 亚洲日本一区二区| 亚洲免费在线播放| 亚洲国产乱码最新视频| 亚洲一区在线直播| 久久琪琪电影院| 欧美三级在线视频| 黄色精品一区| 亚洲一区二区三区色| 亚洲精品字幕| 欧美在线一级视频| 欧美日韩精品一区二区三区四区| 国产亚洲一区精品| 日韩午夜电影| 最新国产精品拍自在线播放| 欧美一区二区三区婷婷月色| 欧美激情在线观看| 国产日韩欧美日韩大片| 亚洲日本在线视频观看| 久久国产一区二区| 亚洲欧美日韩一区在线| 欧美精品免费在线| 国内精品久久久久久影视8| 一区二区三区免费看| 91久久黄色| 久久人人看视频| 国产精品一区二区三区乱码| 亚洲免费观看高清在线观看| 最新亚洲电影| 久久久亚洲国产美女国产盗摄| 国产精品国产三级国产专播精品人 | 亚洲欧洲日本国产| 久久精品国产精品亚洲综合| 午夜久久资源| 欧美三级在线视频| 亚洲人成网站色ww在线| 亚洲国产精彩中文乱码av在线播放| 欧美一区二区三区视频免费| 欧美亚州在线观看| 亚洲乱码久久| 日韩午夜电影在线观看| 欧美电影打屁股sp| 欧美成人亚洲| 国内外成人在线| 欧美一区1区三区3区公司| 香蕉久久国产| 欧美亚州在线观看| 9色精品在线| 亚洲无毛电影| 欧美日韩亚洲三区| 亚洲伦理在线| 99视频有精品| 欧美日韩国产系列| 日韩视频中文字幕| 99re热精品| 欧美日韩成人一区二区三区| 亚洲日本电影| aaa亚洲精品一二三区| 欧美日韩成人激情| 99伊人成综合| 亚洲一区在线观看免费观看电影高清 | 国产精品视频精品视频| 亚洲一区三区视频在线观看| 亚洲曰本av电影| 国产精品国产三级欧美二区| 亚洲视频999| 午夜精品一区二区三区电影天堂| 国产精品国产一区二区| 亚洲欧美日韩精品综合在线观看| 香蕉精品999视频一区二区| 国产欧美日韩视频一区二区三区| 亚洲欧美日韩国产综合在线| 久久精品亚洲精品| 黄色成人在线| 亚洲精品一区二| 欧美日韩国产成人精品| 9久草视频在线视频精品| 亚洲欧美综合| 国内精品久久国产| 亚洲日本视频| 欧美午夜激情视频| 亚洲一区二区高清视频| 欧美一区免费视频| 国内精品福利| 亚洲精品一区二区三区在线观看| 欧美日本国产一区| 亚洲在线成人精品| 久久免费99精品久久久久久| 亚洲福利av| 中文在线资源观看网站视频免费不卡 | 亚洲国产精品黑人久久久| 欧美成人精品h版在线观看| 亚洲精品一区二区三区不| 亚洲综合色噜噜狠狠| 国产亚洲第一区| 亚洲黄色免费电影| 欧美日韩一二三区| 欧美伊久线香蕉线新在线| 欧美成人影音| 中日韩高清电影网| 久久精品国产成人| 91久久极品少妇xxxxⅹ软件| 亚洲综合色噜噜狠狠| 精品动漫3d一区二区三区免费| 99精品国产福利在线观看免费 | 亚洲视频免费看| 久久久久这里只有精品| 亚洲精品一区二| 久久精品动漫| 日韩亚洲国产欧美| 久久久美女艺术照精彩视频福利播放| 亚洲国产精品久久人人爱蜜臀| 亚洲欧美清纯在线制服| 狠狠噜噜久久| 亚洲视频精选| 伊人成综合网伊人222| 亚洲无亚洲人成网站77777| 国产一区二区三区在线免费观看 | 亚洲天堂成人在线观看| 久久一区视频| 国产精品99久久99久久久二8| 久色成人在线| 亚洲色无码播放| 欧美成人免费一级人片100| 亚洲欧美国产制服动漫| 欧美精品一区二区视频| 欧美一区高清| 国产精品成人一区| 亚洲精品乱码久久久久| 国产婷婷色一区二区三区在线| 这里只有精品丝袜| 影音先锋久久| 欧美自拍偷拍| 一区二区av|