社区
界面
帖子详情
关于裁减区域:GetClipBox及重绘效率问题
辉歌
2007-01-19 05:41:10
《深入浅出MFC》曾提到,通过GetClipBox得到了裁减区域后,将需要绘制的数据与区域比较,如果落在或者相交于裁减区域矩形,那么就继续绘图操作,否则继续下一条数据。
但是也有文章指出,不用这么比较,windows会帮我们优化。
到底谁说的对呢?对于裁减区域,为了重绘的高效率,需要针对每个待绘数据与裁减区域对比吗?
我的感觉是比较后,跳过绘图操作,也许能节省时间。请高手指点。
...全文
531
2
打赏
收藏
关于裁减区域:GetClipBox及重绘效率问题
《深入浅出MFC》曾提到,通过GetClipBox得到了裁减区域后,将需要绘制的数据与区域比较,如果落在或者相交于裁减区域矩形,那么就继续绘图操作,否则继续下一条数据。 但是也有文章指出,不用这么比较,windows会帮我们优化。 到底谁说的对呢?对于裁减区域,为了重绘的高效率,需要针对每个待绘数据与裁减区域对比吗? 我的感觉是比较后,跳过绘图操作,也许能节省时间。请高手指点。
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
2 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
madmanahong
2007-01-25
打赏
举报
回复
同时有两篇文章你也可以参考一下。
ms没有对这个事情说得很清楚,不过按照下面这两篇文章的说法,
是应该自己判断一下的。
不知道你从什么地方看的不需要判断。
:)
祝好运
-------------------------
一个是Q177352
另一个是http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vctutor98/HTML/_gs_use_the_hint_for_efficient_repainting.asp
madmanahong
2007-01-25
打赏
举报
回复
每个DC都会有一个clipbox,理论上来说,windows会根据这个clipbox来进行绘制的优化。
因为毕竟他提供了像ExcludeClipRect等这样重新定义clipbox的接口。
但经过我的实际测试(xp system),发现还是使用自己判断clipbox再绘制更快一些。
可能ms感觉,这应该是你自己的事情吧。
所以还是自己判断一下吧。使用IntersectRect,然后仅仅绘制true的区域即可
提高绘图
效率
///////为了
重绘
的高
效率
,需要针对每个待绘数据与
裁减
区域
对比 CTypedPtrList,CLine*)& plineList=pDoc->m_lineList; POSITION pos=plineList.GetHeadPosition(); while(pos) { CLine* pline=plineList...
闪屏
问题
及刷新
效率
闪屏
问题
及刷新
效率
1 简单过程描述在视图(Cview及其子类)每次
重绘
的过程中,都调用OnDraw( )函数。在调用Invalidate()、InvalidateRect()函数过程后,系统自动调用OnDraw()函数,完成视图的刷新显示。以...
C语言笔记01(7.15-7.18)
C语言基本知识点思维导图
【智能汽车竞赛】摄像头组-长春理工大学-天狼五号技术赛方案.docx
【智能汽车竞赛】摄像头组-长春理工大学-天狼五号技术赛方案.docx
MATLAB中计算可达矩阵的实现方法
资源下载链接为: https://pan.quark.cn/s/abbae039bf2a 请用MATLAB编程实现从邻接矩阵计算可达矩阵。
界面
15,980
社区成员
115,867
社区内容
发帖
与我相关
我的任务
界面
VC/MFC 界面
复制链接
扫一扫
分享
社区描述
VC/MFC 界面
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章