亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于WPF的GIS組件的研究與開(kāi)發(fā)

        2010-08-07 08:20:48陳晨李健張濤
        關(guān)鍵詞:開(kāi)發(fā)人員繪制組件

        陳晨 李健 張濤

        北京工業(yè)大學(xué)計(jì)算機(jī)學(xué)院 北京 100124

        0 前言

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

        近年來(lái) GIS組件化發(fā)展趨勢(shì)迅速,組件式平臺(tái)包括:Microsoft的COM、ActiveX控件,ESRI和MapInfo也分別推出了MapObjects和MapX。但是用戶(hù)體驗(yàn)方面相對(duì)薄弱,為此本課題研究選用.Net3.0的 WPF,開(kāi)發(fā)人員和設(shè)計(jì)人員可以通過(guò) WPF創(chuàng)建更好的視覺(jué)效果、不同的用戶(hù)體驗(yàn)。同時(shí)為了以后適應(yīng)更多的基于WPF的GIS相關(guān)系統(tǒng),我們可以直接復(fù)用此課題研發(fā)的組件,提高開(kāi)發(fā)效率,減少成本。

        GDI/GDI+是當(dāng)今Windows桌面應(yīng)用程序的主流圖形庫(kù),GDI/GDI+圖形系統(tǒng)已經(jīng)形成了很多年。它提供了2D圖形和文本功能,以及受限的圖像處理功能。

        在WPF中,引入一種新的圖形合成引擎使2D/3D渲染效果以及動(dòng)畫(huà)效果絢麗。高生產(chǎn)效率一直是微軟技術(shù)的一貫特點(diǎn),WPF是對(duì)圖像編程更高層次的封裝,因此可以帶來(lái)更快的開(kāi)發(fā)速度。使用 GDI/GDI+再加上復(fù)雜的幾何學(xué)知識(shí),編寫(xiě)大量代碼實(shí)現(xiàn)的效果,在 WPF下面只需要簡(jiǎn)單的幾行XAML代碼。WPF也有弱點(diǎn),由于是對(duì) Direct3D的一層managed的封裝,在2D應(yīng)用中其繪制效率較之GDI/GDI+相對(duì)不高。

        1 界面顯示技術(shù)

        隨著人們對(duì)用戶(hù)體驗(yàn)和視覺(jué)沖擊力追求不斷地提高,客戶(hù)對(duì)GIS應(yīng)用的展示效果要求也逐漸增多,他們的要求不僅限于傳統(tǒng)桌面風(fēng)格的操作菜單、GIS標(biāo)繪靜態(tài)展現(xiàn)的形式。

        無(wú)論是實(shí)現(xiàn)GIS應(yīng)用還是GIS組件,對(duì)于地理數(shù)據(jù)的繪制都是實(shí)現(xiàn)GIS很重要的一步,能否到選擇合適的界面顯示技術(shù)會(huì)對(duì)GIS組件繪制部分的最終效果以及開(kāi)發(fā)效率造成很大的影響,所以挑選合適的界面顯示技術(shù)尤為重要,經(jīng)過(guò)學(xué)習(xí)調(diào)研,對(duì)比介紹一下微軟的各種界面顯示技術(shù):

        (1)GDI

        GDI不僅提供了圖形圖像的繪制功能,同時(shí)還對(duì)硬件顯示進(jìn)行了更高層次的抽象。換句話(huà)說(shuō),它將硬件的復(fù)雜性封裝在了GDI API中,用戶(hù)使用起來(lái)更加方便。

        (2)GDI+

        顧名思義,GDI+是作為GDI的擴(kuò)展而被引入到Windows中的。它提供了很多GDI所沒(méi)有的擴(kuò)展功能,例如對(duì)JPG和PNG圖像格式支持,漸變陰影和抗鋸齒等。無(wú)論是 GDI還是 GDI+,它們最大的局限就是不支持硬件加速,同時(shí)無(wú)法展現(xiàn)動(dòng)畫(huà)和3D圖像。

        (3)DirectX

        正如在前面所分析的那樣,GDI及其擴(kuò)展 GDI+的一個(gè)最大問(wèn)題就是不支持硬件加速和動(dòng)畫(huà)。這對(duì)于游戲開(kāi)發(fā)者來(lái)說(shuō),是無(wú)法接受的。為了解決這個(gè)問(wèn)題,微軟開(kāi)發(fā)了DirectX。DirectX能夠很好的利用硬件加速,能夠支持3D,全彩圖像,流媒體等等,非常適合游戲工業(yè)等對(duì)圖形圖像處理要求比較高的領(lǐng)域。

        (4)WPF

        WPF是微軟新一代圖形系統(tǒng),運(yùn)行在.NET Framework 3.0架構(gòu)下,為用戶(hù)界面、2D/3D 圖形、文檔和媒體提供了統(tǒng)一的描述和操作方法?;贒irectX技術(shù)的WPF不僅帶來(lái)了前所未有的3D界面,而且其圖形向量渲染引擎也大大改進(jìn)了傳統(tǒng)的2D界面。因?yàn)閃PF是在DirectX的基礎(chǔ)上實(shí)現(xiàn)的,所以開(kāi)發(fā)人員可以利用WPF創(chuàng)建簡(jiǎn)單的UI元素,還可以更進(jìn)一步,開(kāi)發(fā)自定義的UI元素,例如網(wǎng)格(Grid),流文檔(FlowDocument)和橢圓(Ellipse)等。還可以利用WPF創(chuàng)建輕量級(jí)動(dòng)畫(huà)。

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

        2 GIS組件整體架構(gòu)

        本文通過(guò)研究、學(xué)習(xí)國(guó)內(nèi)外成功GIS組件范例的思想和方法,并且結(jié)合以前已有的相關(guān)開(kāi)發(fā)經(jīng)驗(yàn),研究、設(shè)計(jì)GIS組件的總體結(jié)構(gòu)。主要的設(shè)計(jì)原則:要將各個(gè)功能系統(tǒng)劃分獨(dú)立,在保證良好性能的同時(shí),兼顧可擴(kuò)展性。組件設(shè)計(jì)框架如圖1。

        圖1 基于WPF的GIS組件體系結(jié)構(gòu)

        應(yīng)用面向?qū)ο蟮臄?shù)據(jù)結(jié)構(gòu)存儲(chǔ)從GIS數(shù)據(jù)讀出的信息,線、面、文字等信息,然后通過(guò) WPF底層繪制函數(shù)繪制幾何圖元,在此需要研究找到 WPF中比底層的繪制方案,經(jīng)過(guò)對(duì)WPF的學(xué)習(xí),并進(jìn)行性能方面的測(cè)試得到下述結(jié)論:

        (1)應(yīng)用WPF中的System.Windows.Shapes.Polyline類(lèi)對(duì)解析后的線進(jìn)行繪制。

        (2)應(yīng)用WPF中的System.Windows.Shapes.Polygon類(lèi)對(duì)解析后的區(qū)域進(jìn)行繪制。

        (3)應(yīng)用WPF中的System.Windows.Controls.TextBlock類(lèi)對(duì)解析后的文字進(jìn)行繪制。

        3 GIS組件實(shí)現(xiàn)的關(guān)鍵技術(shù)

        3.1 繪制數(shù)據(jù)實(shí)體

        應(yīng)用面向?qū)ο蟮臄?shù)據(jù)結(jié)構(gòu)存儲(chǔ)從GIS數(shù)據(jù)讀出的信息,線、面、文字等信息,然后通過(guò) WPF底層繪制函數(shù)繪制幾何圖元,在此需要研究找到 WPF中比底層的繪制方案,經(jīng)過(guò)對(duì)WPF的學(xué)習(xí),并進(jìn)行性能方面的測(cè)試得到下述結(jié)論:

        (1)應(yīng)用WPF中的System.Windows.Shapes.Polyline類(lèi)對(duì)解析后的線進(jìn)行繪制。

        (2)應(yīng)用WPF中的System.Windows.Shapes.Polygon類(lèi)對(duì)解析后的區(qū)域進(jìn)行繪制。

        (3)應(yīng)用WPF中的System.Windows.Controls.TextBlock類(lèi)對(duì)解析后的文字進(jìn)行繪制。

        3.2 繪制算法優(yōu)化

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

        圖2 預(yù)繪制區(qū)域

        4 總結(jié)

        隨著人們對(duì)用戶(hù)體驗(yàn)和視覺(jué)沖擊力追求不斷地提高,GIS組件將會(huì)被應(yīng)用到更炫的應(yīng)用程序中,然而,由于當(dāng)今的大部分GIS組件界面仍是基于Windows窗口創(chuàng)建通過(guò)GDI實(shí)現(xiàn),導(dǎo)致應(yīng)用程序中的視感官效果受到了很大限制。為了實(shí)現(xiàn) GIS組件效果的更廣泛使用,本文以如何開(kāi)發(fā)基于.Net3.0的WPF技術(shù)的GIS基本組件功能為主要內(nèi)容,希望能對(duì)不同的用戶(hù)提供參考。

        [1] 胡振文.地理信息系統(tǒng)原理與應(yīng)用.中國(guó)鐵道出版社.2006.

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

        [3] 李勝樂(lè).Mapinfo地理信息系統(tǒng)二次開(kāi)發(fā)實(shí)例.電子工業(yè)出版社.2004.

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

        [5] Charles Petzold著,蔡學(xué)鏞譯.Windows Presentation Foundation程序設(shè)計(jì)指南.2008.

        猜你喜歡
        開(kāi)發(fā)人員繪制組件
        Art on coffee cups
        無(wú)人機(jī)智能巡檢在光伏電站組件診斷中的應(yīng)用
        能源工程(2022年2期)2022-05-23 13:51:50
        新型碎邊剪刀盤(pán)組件
        U盾外殼組件注塑模具設(shè)計(jì)
        Semtech發(fā)布LoRa Basics 以加速物聯(lián)網(wǎng)應(yīng)用
        放學(xué)后
        讓W(xué)indows 10進(jìn)入開(kāi)發(fā)者模式
        電腦迷(2015年12期)2015-04-29 23:22:51
        風(fēng)起新一代光伏組件膜層:SSG納米自清潔膜層
        后悔了?教你隱藏開(kāi)發(fā)人員選項(xiàng)
        在轉(zhuǎn)變中繪制新藍(lán)圖
        99久久亚洲国产高清观看| 国产欧美日韩va另类在线播放| 亚洲av成人无码一区二区三区在线观看 | 91视频爱爱| 少妇人妻偷人中文字幕| 不卡一区二区视频日本| 挺进朋友人妻雪白的身体韩国电影| 一本色道av久久精品+网站| 亚洲网站免费看| 国产少妇高潮在线视频| 亚洲爆乳无码专区www| 精品国产一区二区三区久久狼| 一本一道波多野结衣av中文| 亚洲国产高清在线视频| 亚洲一区二区日韩精品在线| 久久精品欧美日韩精品| 国产无线乱码一区二三区| 在线视频日韩精品三区| 日韩av天堂一区二区| 日本成本人片免费网站| 亚洲国产精品尤物yw在线观看| 激情中文丁香激情综合| 国产精品又湿又黄九九九久久嫩草 | 国产99一区二区三区四区| 亚洲日韩国产精品乱-久| 四虎成人精品无码永久在线| 丝袜美腿亚洲综合久久| 国产 精品 自在 线免费| 国产精品视频二区不卡| 亚洲人成绝费网站色www| 日本黄色3级一区二区| 亚洲午夜福利在线视频| 91精品国产综合成人| 一区二区亚洲 av免费| 国产乱人伦偷精品视频免观看| 亚洲av无码精品蜜桃| 国产精品爆乳在线播放| 国产精品亚洲精品日韩动图| 草草影院发布页| 久久久久99精品成人片试看| 国产成人av综合色|