六月婷婷综合激情-六月婷婷综合-六月婷婷在线观看-六月婷婷在线-亚洲黄色在线网站-亚洲黄色在线观看网站

明輝手游網(wǎng)中心:是一個免費提供流行視頻軟件教程、在線學(xué)習(xí)分享的學(xué)習(xí)平臺!

實時曲線的繪制與保存

[摘要]在VB中繪制實時曲線是比較難的,一般要應(yīng)用第三方控件或是Windows API函數(shù)來完成,但是如果你對實時曲線的要求不是很高,只要能表示出當前的一般情況的話,我們可以直接應(yīng)用VB提供給我們的空間來完...
       在VB中繪制實時曲線是比較難的,一般要應(yīng)用第三方控件或是Windows API函數(shù)來完成,但是如果你對實時曲線的要求不是很高,只要能表示出當前的一般情況的話,我們可以直接應(yīng)用VB提供給我們的空間來完成.


       原則上講,直接在Form里繪制曲線都是可以的,MSDN上面很多例程就是直接在Form里面繪制圖形的,Form作為繪制圖形的容器,不過一般應(yīng)用中Form中不可避免的會有很多其他控件,所以我們選擇PictureBox作為繪制曲線的容器.


       實時曲線的繪制一般借助于Timer控件來完成,使用Timer控件,定期將串口或是其他儀器中監(jiān)測到的數(shù)據(jù)送往PictureBox1,而曲線的繪制一般畫成折線圖,采用PictureBox1的Line方法繪制.具體實現(xiàn)如下:


       1.選擇需要顯示的窗體Picture1,加入圖片框Picture1,根據(jù)實際需要設(shè)置圖片的大小并移到合適的位置,并在圖片的外面畫好量程----時間坐標系;然后加上Timer控件以及兩個CommandButton,界面就基本設(shè)置好了.


     2.建立坐標系,根據(jù)Picture1的大小和高度設(shè)置畫出坐標系的X軸和Y軸:


Picture1 .ScaleMode = 1  ‘以VB的基本單位作為建立坐標軸以及繪制圖形的單位;
Picture1.Refresh
Picture1.CurrentX = Picture1.ScaleLeft +100
Picture1.CurrentY = Picture1.ScaleTop
Picture1.Print  Picture1.ScaleHeight - 100
Picture1.Line(Picture1.ScaleLeft+100,Picture1.ScaleTop+100)-(Picture1.ScaleLeft+100, Picture1.ScaleHeight - 100)
Picture1.CurrentX = Picture1.ScaleLeft +100
Picture1.CurrentY = Picture1.ScaleHeight
Picture1.Print  “(0,0)”
Picture1.Line (Picture1.ScaleLeft + 100, Picture1.ScaleHeight - 100)-(Picture1.ScaleWidth - 100, Picture1.ScaleHeight - 100)
Picture1.CurrentX = Picture1.ScaleWidth
Picture1.CurrentY = Picture1.ScaleHeight
Picture1.Print  Picture1.ScaleWidth-100
Picture1.AutoRedraw = True        ‘必要時,用存儲在內(nèi)存中的圖象進行重繪


       3.繪制曲線并保存,我們這里以正弦曲線作為繪制曲線的數(shù)據(jù)來源,具體應(yīng)用是可以采用由串口或其他儀器采集得到的數(shù)據(jù).首先我們繪制一條中線,然后在Timer控件的Time事件中繪制曲線:


Picture1.Line (Picture1.ScaleLeft, CInt(Picture1.ScaleHeight / 2))-(Picture1.ScaleWidth, CInt(Picture1.ScaleHeight / 2)) ‘繪制中線
Private Sub Timer1_Timer()
Dim y1 As Integer
y1 = CInt(Sin((x - Picture1.Left) / 20 / 180 * pi) * Picture1.ScaleHeight / 2)
y1 = CInt((Picture1.ScaleHeight + 1000) / 2) - y1
Picture1.Line (x, y)-(x + 20, y1)
x = x + 20
y = y1
If x >= Picture1.ScaleWidth Then
    SavePicture Picture1.Image, "c:\sin.bmp"    ‘保存圖畫,可以根據(jù)實際需要命名圖片
    x = 0
    y = Picture1.ScaleHeight / 2
    Picture1.Cls   ‘清屏重畫
   End If
End Sub


       從上面的過程可以看出,其實對于要求不高的實時曲線的繪制還是比較簡單的,在這里我采用的是清屏重畫圖像,如果要實現(xiàn)圖像往左移動,圖像仍然保留的效果,可以采用Windows的Bitblt函數(shù),可以讓圖像每次移動一個象素或是多少個twip,具體實現(xiàn)可以參見<<應(yīng)用VB4.0實現(xiàn)工業(yè)控制的實時曲線和歷史曲線>>( http://www.swm.com.cn/yingyong/rj-98-yy4/98-y4-yy6.htm).


       以上只是實時曲線繪制的一點簡單說明,具體應(yīng)用中可能需要花更多的功夫修飾圖像,顯示時間(可以依據(jù)上面的代碼中的Picture1.Print實現(xiàn)),但是基本原理大同小異.


主站蜘蛛池模板: 四虎澳门永久8848在线影院 | 一级aa免费视频毛片 | 色黄视频在线观看 | 午夜视频在线观看www中文 | 日韩精品福利视频一区二区三区 | 日本zzzwww | 日韩爱爱视频 | 日日插夜夜爽 | 日本大学生免费一级一片 | 热re久久精品国产99热 | 日韩专区中文字幕 | 人人揉人人爽五月天视频 | 四虎国产精品永免费 | 亚洲天堂一区二区 | 天堂资源在线最新版 | 亚洲视频在线观看网站 | 亚洲视频成人 | 青青草原在线免费观看视频 | 日日摸夜夜夜夜夜添 | 四虎影视国产884a精品亚洲 | 青草国产在线 | 欧美一区二区三区四区在线观看 | 亚洲国产成人精彩精品 | 日本在线观看一区二区三区 | 天天做天天欢天天爽 | 日本成a人片在线观看网址 日本草草影院 | 青春草在线观看视频 | 色干网| 日韩免费不卡视频 | 天啪天天天天拍天天碰 | 日本视频黄 | 伊人精品在线观看 | 亚洲成a人在线观看 | 婷婷综合缴情亚洲五月伊 | 在线观看欧美视频 | 日韩激情淫片免费看 | 三级黄色在线视频中文 | 日韩视频免费在线观看 | 四虎在线免费 | 视频在线91 | 天啪|