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

        ?

        Wince智能設(shè)備中笛卡爾坐標(biāo)系無屏閃動(dòng)態(tài)繪制曲線技術(shù)應(yīng)用研究

        2013-08-22 01:35:12羅國平
        科技視界 2013年23期
        關(guān)鍵詞:半軸柵格刻度

        羅國平

        (樂山師范學(xué)院 計(jì)算機(jī)科學(xué)學(xué)院,四川 樂山614000)

        0 引言

        Wince智能設(shè)備中應(yīng)用程序繪制圖形時(shí)遇到繪圖數(shù)據(jù)量較大時(shí)一般繪圖需要較長的時(shí)間,在繪圖過程中往往需要刷新,即將原圖形擦除掉,重新繪制新的圖形,由于這一刷新過程中出現(xiàn)顏色對(duì)比度偏差較大,從而導(dǎo)致屏幕閃爍的現(xiàn)象,這種現(xiàn)象稱之為“屏閃”現(xiàn)象,這種“屏閃”現(xiàn)象嚴(yán)重影響智能設(shè)備繪圖視覺效果。Wince應(yīng)用程序常常采用VS2005 VC++開發(fā),而該程序是基于消息映射模式,系統(tǒng)窗體在響應(yīng)WM_PAINT消息的時(shí)候進(jìn)行復(fù)雜的圖形處理,往往需要調(diào)用OnEraseBkgnd函數(shù)以背景顏色擦除繪圖區(qū)域,然后用新的顏色重新繪圖,窗體在重繪時(shí)由于頻繁擦除和重繪從而引起“屏閃”問題。這就是“屏閃”形成的機(jī)理,解決這一問題的有效方法就是采用雙緩沖技術(shù)。

        1 問題的提出

        在35kV高壓開關(guān)柜監(jiān)控系統(tǒng)中,常常遇到需要實(shí)時(shí)顯示母線溫升等重要數(shù)據(jù),這些數(shù)據(jù)需要及時(shí)以動(dòng)態(tài)曲線的方式繪制在屏幕上以便于工作人員及時(shí)了解高壓開關(guān)柜母線溫升狀態(tài),并根據(jù)母線溫升的狀況作出相應(yīng)的判斷,本文將探討如何實(shí)現(xiàn)無屏閃繪圖的方法。

        2 Y軸0點(diǎn)軸位置的幾種形式及其在屏幕位置計(jì)算

        Wince智能設(shè)備環(huán)境下屏幕默認(rèn)坐標(biāo)映射方式與笛卡爾坐標(biāo)系坐標(biāo)映射是不同的,Wince智能設(shè)備屏幕的左上角為坐標(biāo)原點(diǎn),相對(duì)于坐標(biāo)由左向右為正,反之則為負(fù);相對(duì)坐標(biāo)從上到下為正,反之則為負(fù)。在實(shí)際應(yīng)用中,Y=0時(shí),X軸位置常??紤]有三種情況,第一種情況即Y=0,X軸位于Y軸正中,Y軸上半軸和下半軸剛好對(duì)稱,這種坐標(biāo)系常常用于繪制正負(fù)半軸都有數(shù)據(jù)的曲線、如正弦、余弦曲線;第二種情況即Y=0,X軸位于屏幕上方,Y軸僅有負(fù)半軸,這種坐標(biāo)系常常用于繪制僅有負(fù)數(shù)的曲線;第三種情況,即Y=0,X軸位于屏幕下方,Y軸僅有正半軸,這種坐標(biāo)系常常用于繪制僅有正數(shù)的曲線。在實(shí)際的程序設(shè)計(jì)過程中,為了實(shí)現(xiàn)參數(shù)化設(shè)計(jì),可以采用一個(gè)比例因子來動(dòng)態(tài)控制Y=0時(shí)X軸的位置。這個(gè)動(dòng)態(tài)因子理論上可以為0~1之間的任意小數(shù),但為了實(shí)用起見程序中只取0,0.5,1三個(gè)參數(shù),當(dāng)比例因子為0的時(shí)候,表示Y=0,X軸位于頂部,系統(tǒng)只繪制Y軸的負(fù)半軸;當(dāng)比例因子為0.5時(shí),表示Y=0,X軸位置于屏幕繪圖區(qū)域中心,系統(tǒng)需要繪制Y軸的正半軸和負(fù)半軸,且兩半軸上下對(duì)稱;當(dāng)比例因子為1時(shí),表示Y=0,系統(tǒng)只繪制Y軸正半軸。實(shí)現(xiàn)這個(gè)功能的計(jì)算公式參見式(1)。

        式(1)中m_nCenterY表示Y=0時(shí),X軸位于屏幕上的縱坐標(biāo)位置(單位:Pixel);m_rectCurve 表示繪圖矩形區(qū)域;m_dBase 表示 Y=0,X 軸位于屏幕位置參數(shù),實(shí)際取值為 0,0.5,1.0,當(dāng)為 0時(shí)表示僅繪制 Y 軸負(fù)半軸,當(dāng)為0.5時(shí)表示需要繪制Y軸正、負(fù)半軸,且兩個(gè)半軸對(duì)稱,當(dāng)為1.0時(shí)表示僅需要繪制Y軸正半軸;m_dRange表示最大范圍,在此僅取值為100。

        3 柵格的計(jì)算

        為了實(shí)現(xiàn)程序具有通用性,在設(shè)計(jì)的時(shí)候往往需要參數(shù)化設(shè)計(jì)、模塊化設(shè)計(jì)。因此,需要考慮幾種常用的笛卡爾坐標(biāo)系,根據(jù)刻度奇偶個(gè)數(shù)不同柵格繪制需要分幾種情況進(jìn)行處理。

        (1)當(dāng)坐標(biāo) Y=0 時(shí),式(1)中 m_dBase=0.5,Y 軸正半軸和負(fù)半軸關(guān)于X軸對(duì)稱時(shí),在這種情況下,為了便于稱呼,我們將大刻度稱為主刻度,大刻度內(nèi)的小刻度稱為子刻度,以下未經(jīng)過說明都這樣稱呼,在這種情況下,需要分奇數(shù)個(gè)主刻度和偶數(shù)個(gè)主刻度;如圖1所示,Y軸表示范圍0~100,有10個(gè)大刻度,每一個(gè)刻度表示的值為10,總共10個(gè)大刻度,大刻度中僅有5個(gè)小刻度,因此子刻度有5個(gè)。為了便于編寫程序,定義一個(gè)主刻度成員變量m_nYAxisScale,子刻度成員變量m_nSubYAxisScale,主刻度柵格畫筆成員變量m_MainGridPen,子刻度畫筆成員變量m_SubGridPen。

        圖1 母線溫升曲線

        當(dāng)為偶數(shù)個(gè)主刻度時(shí),以Y=0為柵格繪制參考起點(diǎn),分上半軸和下半軸繪制。繪制Y軸正半軸柵格算法如下:

        //繪制上半部分柵格

        其中m_rectCurve表示繪制曲線有效區(qū)域,即圖1中藍(lán)色矩形框內(nèi)區(qū)域。m_dcGrid表示柵格繪圖內(nèi)存設(shè)備類,區(qū)域大小相當(dāng)于整個(gè)灰色的矩形區(qū)域。 在上述程序算法中的判斷條件 “if(i%m_nSubYAxisScale==0)”巧妙地將主刻度柵格線和子刻度線算法相統(tǒng)一,在實(shí)際繪圖過程中,最大限度減少了柵格和柵格之間的累計(jì)誤差,從而最大程度地避免了刻度和刻度之間不均勻現(xiàn)象。

        同樣對(duì)于Y軸負(fù)半軸算法可以類推,不同的是繪圖參考點(diǎn)是m_rectCurve.Bottom,因此將僅將上述算法中MoveTo函數(shù)和LineTo函數(shù)的第二個(gè)參數(shù)做相應(yīng)的修改,將“+i”改為“-i”。

        當(dāng)為奇數(shù)個(gè)主刻度時(shí),以Y=0為柵格繪制參考起點(diǎn),Y軸分上半軸和下半軸繪制。在這種情況下與偶數(shù)個(gè)主刻度區(qū)別在于,最后1/2個(gè)主刻度的處理上,而且這1/2個(gè)主刻度內(nèi)又要分偶數(shù)個(gè)子刻度和奇數(shù)個(gè)子刻度,因此算法相對(duì)復(fù)雜,為了簡單起見,同樣僅考慮Y軸正半軸的情況,對(duì)于負(fù)半軸可以如法炮制。由于是奇數(shù)個(gè)主刻度,Y軸正半軸和負(fù)半軸關(guān)于X軸對(duì)稱,在這種情況下,柵格繪制的參考點(diǎn)以m_nCenterY為準(zhǔn),此參數(shù)計(jì)算參見式(1)。柵格繪制算法如下:

        //繪制上半部分

        Y軸負(fù)半軸柵格與Y軸正半軸算法很相似,不同的是MoveTo和LineTo函數(shù)的第二個(gè)參數(shù)中“m_nCenterY-”改為“m_nCenterY+”即可。

        (2)當(dāng)坐標(biāo) Y=0 時(shí),式(1)中 m_dBase=0 或 m_dBase=1 時(shí),m_d Base=0表示僅繪制Y軸負(fù)半軸;m_dBase=1時(shí)表示僅繪制Y軸正半軸。這兩種情況實(shí)際上在繪制柵格算法上是一樣的。算法如下:

        4 雙緩繪圖沖技術(shù)的應(yīng)用

        在實(shí)際程序設(shè)計(jì)中,動(dòng)態(tài)繪圖涉及到背景,坐標(biāo)、柵格、坐標(biāo)刻度、坐標(biāo)標(biāo)簽等,這些圖形元素直接繪制到一個(gè)名叫m_dcGrid設(shè)備環(huán)境類中,動(dòng)態(tài)曲線繪制m_dcLine設(shè)備環(huán)境類中,兩個(gè)圖形以SRCPAINT方式合并到同一個(gè)圖形中,然后通過內(nèi)存環(huán)境設(shè)備類(memDC)將現(xiàn)有的畫面拷貝到屏上,這樣不斷更新畫面,經(jīng)過兩級(jí)緩沖處理就消除了閃屏問題。

        程序(2)表示把圖形拷貝到dcGrid設(shè)備環(huán)境類中,dcGrid設(shè)備環(huán)境類實(shí)際上繪制的是柵格及坐標(biāo)軸以及坐標(biāo)刻度,坐標(biāo)標(biāo)簽等;程序(3)表示把圖形拷貝到m_dcLine設(shè)備環(huán)境類中,m_dcLine緩沖實(shí)際上繪制的是動(dòng)態(tài)曲線,系統(tǒng)將兩個(gè)圖形以SRCPAINT方式合成一張圖,然后經(jīng)由2級(jí)緩沖memDC內(nèi)存環(huán)境設(shè)備類,該圖形通過BitBlt函數(shù)將圖形從內(nèi)存拷貝到屏幕上,從而實(shí)現(xiàn)無屏閃繪圖。

        5 結(jié)論

        該程序在35KV智能開關(guān)柜遠(yuǎn)程控制項(xiàng)目中測(cè)試通過,在實(shí)際運(yùn)行過程中,肉眼幾乎無法感受到一點(diǎn)屏閃跡象,程序運(yùn)行目前運(yùn)行正常,實(shí)踐證明這種算法比較合理,完全能夠解決智能設(shè)備中動(dòng)態(tài)繪圖過程中遇到的屏閃問題。

        [1]蔣柱蔥,謝云.基于嵌入式 WinCE與 MSP430單片機(jī)多串口通信設(shè)計(jì)[J].電子設(shè)計(jì)工程,2011,4,19(7).

        [2]尚秋峰,陳于揚(yáng),姚國珍,李灝.基于Wince嵌入式內(nèi)核的新型電力參數(shù)實(shí)時(shí)測(cè)量系統(tǒng)[J].電力系統(tǒng)保護(hù)與控制,2010,38(22).

        [3]汪兵,李存斌,陳鵬,等.EVC高級(jí)編程及其應(yīng)用開發(fā)(Embedded Visual C++嵌入式編程)[M].中國水利水電出版社,2005,3.

        [4]周立功.ARM&WinCE實(shí)驗(yàn)與實(shí)踐:基于 S3C2410[M].北京航空航天大學(xué)出版社,2007,7.

        猜你喜歡
        半軸柵格刻度
        基于鄰域柵格篩選的點(diǎn)云邊緣點(diǎn)提取方法*
        法蘭盤半軸鉆鉸錐孔專用夾具設(shè)計(jì)
        歐姆表的刻度真的不均勻嗎?
        ——一個(gè)解釋歐姆表刻度不均勻的好方法
        汽車半軸用鋼電沉積Ni-SiC復(fù)合鍍層的耐磨性
        被吃掉刻度的尺子
        誰大誰小
        測(cè)量三字歌
        某重型車橋半軸斷裂失效分析
        不同剖面形狀的柵格壁對(duì)柵格翼氣動(dòng)特性的影響
        基于CVT排布的非周期柵格密度加權(quán)陣設(shè)計(jì)
        久久精品天堂一区二区| 乱人伦中文无码视频| 亚洲熟妇av乱码在线观看| 加勒比在线一区二区三区| av有码在线一区二区三区| 香蕉视频在线观看亚洲| 99久久综合精品五月天| 久久半精品国产99精品国产| 成人激情视频一区二区三区 | 国产精品国产自产自拍高清av| 精品乱码一区内射人妻无码| 亚洲精品无码人妻无码| 91热视频在线观看| 熟女免费视频一区二区| 乱码丰满人妻一二三区| 蜜臀av一区二区| 网友自拍人妻一区二区三区三州| 男女调情视频在线观看| 亚洲日韩国产欧美一区二区三区| 国产一在线精品一区在线观看| 91青青草久久| 日本人妻97中文字幕| 亚洲一区二区三区影院| 中国亚洲女人69内射少妇| 亚洲最新中文字幕一区| 成人久久久精品乱码一区二区三区 | 久久亚洲色一区二区三区| 久久精品无码专区免费青青| 人妻少妇一区二区三区| 国产自拍视频免费在线观看| 情人伊人久久综合亚洲| 青青青爽国产在线视频| av在线手机中文字幕| 久久精品国产成人午夜福利| 亚洲国产无套无码av电影| 国产粉嫩高清| 人妻久久一区二区三区| 和外国人做人爱视频| 国产精品美女AV免费观看| 中文字幕人妻精品一区| 99精品国产一区二区三区不卡 |