作者just350leo (just leo)
看板Visual_Basic
标题[.NET] 如何加快绘图的速度
时间Thu Apr 8 10:42:09 2010
我要写一个根据USB收到的资料绘出波形的程式
但是遇到问题是绘出来的波形都会跟预期的不一样
目前测试下来推测是绘图这个动作花的时间太长了
导致在绘第一笔资料的时候第二笔资料已经送过来了而没收到
因为把绘图的程式码Mark掉只看接收的资料是没有错的
而加上绘图的程式码後会出现资料漏收的问题
以下是我绘图的程式码,不知道有没有甚麽写法能加快绘图的速度?
g = display_ECG(device).PictureBox_ECG.CreateGraphics
g.Clear(display_ECG(device).PictureBox_ECG.BackColor)
g.DrawLine(Pens.Red, center_axis, 0, center_axis, h_ECG)
lastx = 0
lasty = h_ECG - ECG_array(device, 0) * h_ECG / 255
For i = 1 To DataCap_ECG
x = w_ECG * i / (DataCap_ECG + 1)
y = h_ECG - ECG_array(device, i) * h_ECG / 255
g.DrawLine(Pens.Yellow, lastx, lasty, x, y)
lastx = x
lasty = y
Next
g.Dispose()
g = display_ECG(device).PictureBox_Window.CreateGraphics
g.Clear(display_ECG(device).PictureBox_Window.BackColor)
lastx = 0
lasty = h_window - (ECG_window_buffer(device, 0) - Lbound) * h_window
/ (Ubound - Lbound)
For i = 1 To DataCap_Window
x = w_window * i / (DataCap_Window + 1)
y = h_window - (ECG_window_buffer(device, i) - Lbound) * h_window
/ (Ubound - Lbound)
g.DrawLine(Pens.Yellow, lastx, lasty, x, y)
lastx = x
lasty = y
Next
g.Dispose()
P.S : 有搜寻过板上有关"绘图"的文章
似乎都没有我想找的资料
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.117.164.192
1F:→ nobody1:收归收 画归画 一次要做两件事时 再快也是要等滴 04/08 12:32
2F:推 horngsh:GDI+效能很差... 04/08 14:52