注册 登录
编程论坛 VB6论坛

VB6.0的picture.pset和SetPixel画点速度太慢,效率很低,VB最快的画点函数或者说方法是什么呢?谢谢

huangjunxing 发布于 2017-10-09 22:00, 7008 次点击
VB6.0的picture.pset和SetPixel画点速度太慢,效率很低,VB最快的画点函数或者说方法是什么呢?谢谢
7 回复
#2
肇励影2017-10-09 22:12
我估计是gdi之类的吧,但是效果不好说。
#3
xzlxzlxzl2017-10-10 04:09
单个画点,vb的速度怎么的都嫌慢。
题主可想办法变成内存数组作图,再整块内存拷贝,可能速度要快些。具体要看题主想做什么,可以变通的。
#4
xiangyue05102017-10-10 08:49
picture.pset和SetPixel画点速度应该说不至于很慢吧
不清楚楼主想到实现什么,实在不行试试GDI和GDI+
#5
huangjunxing2017-10-10 09:03
回复 4楼 xiangyue0510
您有GDI这方面的例子吗,directdraw这个您有用过吗
#6
风吹过b2017-10-10 09:47
平均每回合绘制 5.8W个点。使用内存绘图。不卡。
我代码里限制,每秒最多10回合,帧速是假的,忘了。

去掉限制,每秒33帧。I5 4590

代码就是上次那个代码,今天在邮箱里给找到了。
我开过新贴发代码吧。


[此贴子已经被作者于2017-10-10 10:20编辑过]

#7
风吹过b2017-10-10 10:47
发在 https://bbs.bccn.net/thread-481230-1-1.html

慢慢研究,今天补充了大量的注释在内。
#8
huangjunxing2017-10-12 22:06
回复 3楼 xzlxzlxzl
我想做一个采集GIF图片的像素,然后显示到picture里面,比如我要采集GIF图片10万个点,就把这个10万个像素以实心圆的方式显示在picture里面,并且显示的速度要跟上GIF图像变化的速度,基本要与GIF变化同步,采集可以用GetDIBits,然后再提取想要像素的坐标,就是显示这块,用picture.circle太慢了,阁下有什么好的建议吗,谢谢
1