
防闪屏批量绘图
发布日期:2021-05-04 18:35:15
浏览次数:15
分类:技术文章
本文共 969 字,大约阅读时间需要 3 分钟。
在使用Easy库的时候,由于每次都花大量时间绘制背景,导致闪烁厉害。这里用批量绘图方法将所有绘图一次性显示出来,以解决闪烁的问题。
BeginBatchDraw
这个函数用于开始批量绘图。执行后,任何绘图操作都将暂时不输出到屏幕上,直到执行 FlushBatchDraw 或 EndBatchDraw 才将之前的绘图输出。
void BeginBatchDraw();参数:
(无)
返回值:
(无)
示例:
以下代码实现一个圆从左向右移动,会有比较明显的闪烁。
请取消 main 函数中的三个注释,以实现批绘图功能,可以消除闪烁。#includeint main() { initgraph(640,480); setlinecolor(WHITE); setfillcolor(RED); // BeginBatchDraw(); for(int i=50; i<600; i++) { circle(i, 100, 40); floodfill(i, 100, WHITE); // FlushBatchDraw(); Sleep(10); cleardevice(); } // EndBatchDraw(); closegraph(); }
EndBatchDraw
这个函数用于结束批量绘制,并执行未完成的绘制任务。
// 结束批量绘制,并执行未完成的绘制任务 void EndBatchDraw();// 结束批量绘制,并执行指定区域内未完成的绘制任务
void EndBatchDraw(
int left, int top, int right, int bottom );
参数:
left
指定区域的左部 x 坐标。
top
指定区域的上部 y 坐标。
right
指定区域的右部 x 坐标。
bottom
指定区域的下部 y 坐标。
返回值:
(无)
参考博客:
转载自中的文章发表评论
最新留言
感谢大佬
[***.8.128.20]2025年03月19日 22时05分52秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
约瑟夫环问题
2019-03-01
CF #716 (Div. 2) B. AND 0, Sum Big(思维+数学)
2019-03-01
阿里云数据库连接MySql
2019-03-01
SQLyog(MySQL图形化开发工具)
2019-03-01
MySQL报错记录一下10061或者非自己的IP
2019-03-01
Java 設計模式 - 建造者模式
2019-03-01
ES6 JavaScript 重新認識 Promise
2019-03-01
Spring--04--AOP增强
2019-03-01
2020-07-16:如何获得一个链表的倒数第n个元素?
2019-03-01
2020-12-04:mysql 表中允许有多少个 TRIGGERS?
2019-03-01
2020-12-10:i++是原子操作吗?为什么?
2019-03-01
2021-01-21:java中,HashMap的读流程是什么?
2019-03-01
Imagination官方信息速递2021年光线追踪专刊
2019-03-01
计算机视觉中的双目立体视觉和体积度量
2019-03-01
什么是数据中心,它们是如何变化的?
2019-03-01
Word图文混排中图片的高级处理技巧
2019-03-01
Python自学17(IO 操作)
2019-03-01
webpack01 -- webpack安装和配置
2019-03-01
分享九款不同页面404源码html
2019-03-01
电脑软件快速启动半成品源码
2019-03-01