使用双缓冲技术绘制曲线图

2016-02-19 15:31 34 1 收藏

只要你有一台电脑或者手机,都能关注图老师为大家精心推荐的使用双缓冲技术绘制曲线图,手机电脑控们准备好了吗?一起看过来吧!

【 tulaoshi.com - 编程语言 】

  当数据量很大时,绘图可能需要几秒钟甚至更长的时间,而且有时还会出现闪烁现象,为了解决这些问题,可采用双缓冲技术来绘制曲线图。

  双缓冲即在内存中创建一个与屏幕绘图区域一致的对象,先将图形绘制到内存中的这个对象上,再一次性将这个对象上的图形拷贝到屏幕上,这样能大大加快绘图的速度。双缓冲实现过程如下:

  1、在内存中创建与画布一致的缓冲区

  BufferBmp=new Graphics::TBitmap();

  BufferBmp-Canvas-Handle=CreateCompatibleDC(Canvas-Handle);

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/bianchengyuyan/)

  BufferBmp-Width=Width;

  BufferBmp-Height=Height;

  2、在缓冲区画图

  BufferBmp-Canvas-Brush-Color=clBtnFace;

  BufferBmp-Canvas-FillRect(Rect(0,0,Width,Height));

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/bianchengyuyan/)

  BufferBmp-Canvas-MoveTo();

  

  3、将缓冲区位图拷贝到当前画布上

  BitBlt(Canvas-Handle,0,0,Width,Height,BufferBmp-Canvas-Handle,0,0,SRCCOPY);

  4、释放内存缓冲区

  delete BufferBmp; 

来源:https://www.tulaoshi.com/n/20160219/1609814.html

延伸阅读
标签: PHP
       · limodou·转载PHP中文用户      前言    其实说它为技术,也许不能说是真正的技术。这只不过是我自已想出来的页面处理的方法,当然与别人的想法可能是一致的。不过我还是想给它一个好听的名字。那么我这里所指的页面缓冲是什么呢?就是指将动态生成的页面保存...
标签: word
word怎么绘制带双箭头的曲线?   带双箭头的直线想必大家都会画,直接选中word自选图形中的双箭头连接符即可!然然,绝大多数人肯定不清楚如何在word中画带双箭头的曲线,笔者在此给予案例说明! 第一,如图所示,有一个坐标系,在横轴上有a和b两点,现在需要将两点用带双箭头的曲线进行连接!若你直接插入双箭头的连接符,所画...
当应用程序中使用多次GDI调用绘制到窗口中时,在窗口清除并被重新绘制时,会出现明显的闪烁。使用双缓冲技术可轻松消除闪烁。 步骤如下: 1、假设当前显示设备上下文为CDC * pDC; 2、使用CDC对象创建可兼容设备上下文,       CDC memdc;       memdc.CreateCompatibleDC(pDC); 3、使...
hd tune pro中文专业版硬盘检测工具曲线图黄点是什么?   浅蓝色曲线,代表的是检测过程中检测到硬盘每一秒钟的读取速率。黄色点代表硬盘的寻道时间。在右边还可以看到清楚的数据,传输速度的最小值,最大值,和平均值。还显示了数据的存取时间,和突发数据传输率。CPU的占用率。 hd tune中文专业版使用教程 以下是网友提供...
标签: PHP
       简单的页面缓冲技术(三)    limodou·转载PHP中文用户       content.php3文件用来处理动态页面。用户可以通过content.php3?page=id号来读出一个数据文件。具体方法我就不说了,大家只要知道每个数据文件都有一个不同的id号,这样content.php3?page=id号的方式...

经验教程

151

收藏

20
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部