VB如何实现图像的放大缩小

shengleiyao 2009-12-23 12:10:17
Private Sub Timer1_Timer()
Dim X As Integer, Y As Single, z As Single
Dim scaley As Single
Dim j As Integer
Static i As Integer
Dim ADData As Long '定义AD采样变量

AC6611_AD hDevice, 0, ADData 'AD采样,0通道,AC6611一共有16个通道0-15,由addata返回AD采样值0-4095
'Print AC6611_ADToVoltage(ADData, 0) '显示采样的数据,并转换为0-5V电压实际电压值
'Picture1.DrawWidth = 2

scaley = Picture1.ScaleHeight / 4
Picture1.CurrentX = 0
Picture1.CurrentY = Picture1.ScaleHeight / 2
i = i + 1
adata(j) = AC6611_ADToVoltage(ADData, 0)
X = i / 30 * scaley
Y = adata(j) / 5 * scaley
z = adata(j)

Picture1.PSet Step(X, -Y), vbRed
end sub
Private Sub Command1_Click()

Timer1.Enabled = True
End Sub
这是我的一段采集程序,有谁可以帮我把采集的曲线实现放大缩小么?
...全文
463 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
舉杯邀明月 2009-12-23
  • 打赏
  • 举报
回复
‘别人’怎么能完成“数据采样”!

你的代码中既然用了“缩放比例”的方式,你改变那个“比例”值不就行了吗!


scaley = Picture1.ScaleHeight / 4

你把 4 改为更大的值,画出来的就变小了;相反,改小就把图片画大。
shengleiyao 2009-12-23
  • 打赏
  • 举报
回复
谁在我的程序上加加看看啊
贝隆 2009-12-23
  • 打赏
  • 举报
回复
如何放大缩小曲线,最好的办法是定义其坐标系统,
比如:picture1.scale (0,100)-(100,0) 可显示的范围是:x:[0~100] y:[0:100]
又如:picture1.scale (0,1000)-(1000,0) 可显示的范围是:x:[0~1000] y:[0:1000]
两者相比,后者等于放宽了可显示范围,实际上是缩小了曲线图片的显示效果。
东方之珠 2009-12-23
  • 打赏
  • 举报
回复
参考下面这个:
http://topic.csdn.net/u/20080910/20/1ab23882-3cb0-49dc-9b86-eb169e58a823.html
shengleiyao 2009-12-23
  • 打赏
  • 举报
回复
用按钮来控制

7,763

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧