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

基于WPF的GIS組件的研究與開發

2010-08-07 08:20:48陳晨李健張濤
網絡安全技術與應用 2010年4期
關鍵詞:動畫界面效率

陳晨 李健 張濤

北京工業大學計算機學院 北京 100124

0 前言

地理信息系統(Geographic Information System,GIS)是一種基于計算機的工具,它可以對在地球上存在的東西和發生的事件進行成圖和分析。GIS是地理和計算機結合的產物,人們的生產和生活中80%以上的信息和地理空間位置有關,GIS近年來得到了廣泛關注和迅猛發展。

近年來 GIS組件化發展趨勢迅速,組件式平臺包括:Microsoft的COM、ActiveX控件,ESRI和MapInfo也分別推出了MapObjects和MapX。但是用戶體驗方面相對薄弱,為此本課題研究選用.Net3.0的 WPF,開發人員和設計人員可以通過 WPF創建更好的視覺效果、不同的用戶體驗。同時為了以后適應更多的基于WPF的GIS相關系統,我們可以直接復用此課題研發的組件,提高開發效率,減少成本。

GDI/GDI+是當今Windows桌面應用程序的主流圖形庫,GDI/GDI+圖形系統已經形成了很多年。它提供了2D圖形和文本功能,以及受限的圖像處理功能。

在WPF中,引入一種新的圖形合成引擎使2D/3D渲染效果以及動畫效果絢麗。高生產效率一直是微軟技術的一貫特點,WPF是對圖像編程更高層次的封裝,因此可以帶來更快的開發速度。使用 GDI/GDI+再加上復雜的幾何學知識,編寫大量代碼實現的效果,在 WPF下面只需要簡單的幾行XAML代碼。WPF也有弱點,由于是對 Direct3D的一層managed的封裝,在2D應用中其繪制效率較之GDI/GDI+相對不高。

1 界面顯示技術

隨著人們對用戶體驗和視覺沖擊力追求不斷地提高,客戶對GIS應用的展示效果要求也逐漸增多,他們的要求不僅限于傳統桌面風格的操作菜單、GIS標繪靜態展現的形式。

無論是實現GIS應用還是GIS組件,對于地理數據的繪制都是實現GIS很重要的一步,能否到選擇合適的界面顯示技術會對GIS組件繪制部分的最終效果以及開發效率造成很大的影響,所以挑選合適的界面顯示技術尤為重要,經過學習調研,對比介紹一下微軟的各種界面顯示技術:

(1)GDI

GDI不僅提供了圖形圖像的繪制功能,同時還對硬件顯示進行了更高層次的抽象。換句話說,它將硬件的復雜性封裝在了GDI API中,用戶使用起來更加方便。

(2)GDI+

顧名思義,GDI+是作為GDI的擴展而被引入到Windows中的。它提供了很多GDI所沒有的擴展功能,例如對JPG和PNG圖像格式支持,漸變陰影和抗鋸齒等。無論是 GDI還是 GDI+,它們最大的局限就是不支持硬件加速,同時無法展現動畫和3D圖像。

(3)DirectX

正如在前面所分析的那樣,GDI及其擴展 GDI+的一個最大問題就是不支持硬件加速和動畫。這對于游戲開發者來說,是無法接受的。為了解決這個問題,微軟開發了DirectX。DirectX能夠很好的利用硬件加速,能夠支持3D,全彩圖像,流媒體等等,非常適合游戲工業等對圖形圖像處理要求比較高的領域。

(4)WPF

WPF是微軟新一代圖形系統,運行在.NET Framework 3.0架構下,為用戶界面、2D/3D 圖形、文檔和媒體提供了統一的描述和操作方法。基于DirectX技術的WPF不僅帶來了前所未有的3D界面,而且其圖形向量渲染引擎也大大改進了傳統的2D界面。因為WPF是在DirectX的基礎上實現的,所以開發人員可以利用WPF創建簡單的UI元素,還可以更進一步,開發自定義的UI元素,例如網格(Grid),流文檔(FlowDocument)和橢圓(Ellipse)等。還可以利用WPF創建輕量級動畫。

依據客戶的客觀要求即實現類似游戲界面風格的GIS應用展示系統,以及上述界面顯示技術對比來分析:現在大部分流行的GIS應用系統和GIS組件界面整體還是沒有改變傳統Windows的風格,即便開發人員通過圖片資源進行美化,用戶體驗方面也沒有改變傳統的對話框、菜單等操作方式,這樣的系統適合應用,但是不適合絢麗的展示;開發人員也想到應用DirectX進行GIS應用展示系統的界面顯示進行實現,憑借DirectX對硬件加速、動畫、3D方面的支持,DirectX絕對可以制作出絢麗的界面,但是我們所開發的GIS應用展示系統很大一部分還在于功能,應用DirectX開發界面需要編寫大量的代碼去實現預期的效果,這樣大量的工作量則被消耗在界面編寫上;在來看封裝了DirectX的WPF,WPF支持開發人員創建特殊的 UI元素,所以設計人員可以大膽的想象華麗的顯示界面和獨特的界面用戶體驗,還可以輕松創建輕量級的動畫展示流程、演練相關的需求。應用 WPF開發適合于客戶對于界面的展示需求,而且應用 WPF制作界面的開發效率要遠高于DirectX,基于對界面展示效果和開發效率的考慮,所以選用WPF技術開發GIS應用展示系統是一種趨勢。

2 GIS組件整體架構

本文通過研究、學習國內外成功GIS組件范例的思想和方法,并且結合以前已有的相關開發經驗,研究、設計GIS組件的總體結構。主要的設計原則:要將各個功能系統劃分獨立,在保證良好性能的同時,兼顧可擴展性。組件設計框架如圖1。

圖1 基于WPF的GIS組件體系結構

應用面向對象的數據結構存儲從GIS數據讀出的信息,線、面、文字等信息,然后通過 WPF底層繪制函數繪制幾何圖元,在此需要研究找到 WPF中比底層的繪制方案,經過對WPF的學習,并進行性能方面的測試得到下述結論:

(1)應用WPF中的System.Windows.Shapes.Polyline類對解析后的線進行繪制。

(2)應用WPF中的System.Windows.Shapes.Polygon類對解析后的區域進行繪制。

(3)應用WPF中的System.Windows.Controls.TextBlock類對解析后的文字進行繪制。

3 GIS組件實現的關鍵技術

3.1 繪制數據實體

應用面向對象的數據結構存儲從GIS數據讀出的信息,線、面、文字等信息,然后通過 WPF底層繪制函數繪制幾何圖元,在此需要研究找到 WPF中比底層的繪制方案,經過對WPF的學習,并進行性能方面的測試得到下述結論:

(1)應用WPF中的System.Windows.Shapes.Polyline類對解析后的線進行繪制。

(2)應用WPF中的System.Windows.Shapes.Polygon類對解析后的區域進行繪制。

(3)應用WPF中的System.Windows.Controls.TextBlock類對解析后的文字進行繪制。

3.2 繪制算法優化

實踐證明WPF的繪制效率不是很高,由于是對Direct3D的一層managed的封裝,性能成為我們關心的問題,尤其是在用戶交互的過程中,比如用戶對地圖進行拖拽,實現拖拽比較簡單的方法是以用戶拖拽到位置的中心點進行重新繪制,GIS數據相當龐大,如果頻繁重新繪制,會使拖拽效果很不流暢,所以需要繪制部分有很強的調度能力,實現通過提前繪制屏幕面積4倍的區域,如圖2所示,使用戶在一定范圍內拖拽流暢。通過二維矩陣變換的方式對原有屏幕上的圖元進行平移變換。

圖2 預繪制區域

4 總結

隨著人們對用戶體驗和視覺沖擊力追求不斷地提高,GIS組件將會被應用到更炫的應用程序中,然而,由于當今的大部分GIS組件界面仍是基于Windows窗口創建通過GDI實現,導致應用程序中的視感官效果受到了很大限制。為了實現 GIS組件效果的更廣泛使用,本文以如何開發基于.Net3.0的WPF技術的GIS基本組件功能為主要內容,希望能對不同的用戶提供參考。

[1] 胡振文.地理信息系統原理與應用.中國鐵道出版社.2006.

[2] Charles Petzold.A Guide to the Microsoft Window Presentation Foundation. Publishing House of Electronics Industry.2008.

[3] 李勝樂.Mapinfo地理信息系統二次開發實例.電子工業出版社.2004.

[4] 王占全.地理信息系統(GIS)開發工程案例精選.人民郵電出版社.2006.

[5] Charles Petzold著,蔡學鏞譯.Windows Presentation Foundation程序設計指南.2008.

猜你喜歡
動畫界面效率
做個動畫給你看
動畫發展史
提升朗讀教學效率的幾點思考
甘肅教育(2020年14期)2020-09-11 07:57:42
國企黨委前置研究的“四個界面”
當代陜西(2020年13期)2020-08-24 08:22:02
我的動畫夢
文苑(2019年22期)2019-12-07 05:28:56
基于FANUC PICTURE的虛擬軸坐標顯示界面開發方法研究
人機交互界面發展趨勢研究
我是動畫迷
學生天地(2016年9期)2016-05-17 05:45:06
手機界面中圖形符號的發展趨向
新聞傳播(2015年11期)2015-07-18 11:15:04
跟蹤導練(一)2
主站蜘蛛池模板: 欧美成人二区| 国产精品一区二区在线播放| 欧美中日韩在线| 日韩国产一区二区三区无码| 美女被操91视频| 国产精品hd在线播放| 韩日午夜在线资源一区二区| 手机在线国产精品| 性喷潮久久久久久久久| 人人妻人人澡人人爽欧美一区 | 欧美日韩北条麻妃一区二区| 亚洲天堂免费| a级毛片网| 成人av手机在线观看| 中文无码精品a∨在线观看| 国产三区二区| 日韩欧美高清视频| 亚洲精品午夜无码电影网| 亚洲精品无码久久久久苍井空| 囯产av无码片毛片一级| 2020国产在线视精品在| 秋霞一区二区三区| 中文字幕 91| 国内精品伊人久久久久7777人| 国产导航在线| 丰满少妇αⅴ无码区| 国产免费黄| 黄色成年视频| 国产精品香蕉在线观看不卡| 成人毛片免费观看| 午夜激情福利视频| 色婷婷综合在线| 成人午夜免费视频| 国产在线自乱拍播放| 九九热精品在线视频| 欧美自慰一级看片免费| 亚洲欧美日本国产综合在线| 视频在线观看一区二区| 亚洲精品无码av中文字幕| 二级特黄绝大片免费视频大片| 一区二区三区国产精品视频| 国产精欧美一区二区三区| 亚州AV秘 一区二区三区| 欧美日韩精品一区二区视频| 成人午夜天| 色香蕉影院| www.精品视频| 看av免费毛片手机播放| a色毛片免费视频| 亚洲 日韩 激情 无码 中出| 国产乱人伦精品一区二区| 成年女人a毛片免费视频| 免费在线视频a| av色爱 天堂网| 日韩欧美国产综合| 日韩精品毛片人妻AV不卡| 免费观看精品视频999| 久久人人97超碰人人澡爱香蕉| 国产午夜人做人免费视频| 日韩色图区| 熟妇丰满人妻av无码区| 久久久噜噜噜| 91精品人妻一区二区| 毛片免费在线视频| 久久亚洲国产一区二区| 亚洲黄色激情网站| 欧美日韩午夜| 青草午夜精品视频在线观看| 五月天婷婷网亚洲综合在线| 国产高清在线丝袜精品一区| 97综合久久| 欧美一区二区福利视频| 99热这里只有精品国产99| 精品一区二区三区波多野结衣| 日本一区二区三区精品国产| 久久国产av麻豆| 亚洲最猛黑人xxxx黑人猛交| 最近最新中文字幕免费的一页| 99久久精品免费观看国产| 欧洲欧美人成免费全部视频| 91极品美女高潮叫床在线观看| 日本国产一区在线观看|