MFC中如何在不规则的区域内填充颜色
来源:互联网 发布:杰尼斯黑料 知乎 编辑:程序博客网 时间:2024/04/30 00:23
在画图的过程中,总是会碰到颜色填充的问题,如果要填充一些规则的区域,比如椭圆、方形等,直接用CDC中的FillEllipse以及FillRect很简单就可以完成,那如果是一个不规则的区域应该如何呢,这里就简单介绍一个我用到过的方法。
首先就需要建立一个区域,例如:
pDC->BeginPath();
pDC->MoveTo(250, 250);
pDC->AngleArc(250, 250, 50, 0, 60);
pDC->EndPath();
CRgn rgn;
rgn.CreateFromPath(pDC);
pDC->InvertRgn(&rgn);
此时BeginPath();和EndPath();之间的部分就是所建立的不规则区域。
然后填充的话,可以用FillRgn这个函数来完成。这样就完成了……
另外,建立这个区域的时候,需要注意如果该区域是由一系列的直线构成的,则最好写成如下情况:
pDC->MoveTo(……);
pDC->LineTo(……);
pDC->LineTo(……);
pDC->LineTo(……);
如果写成:
pDC->MoveTo(……);
pDC->LineTo(……);
pDC->MoveTo(……);
pDC->LineTo(……);
可能会出问题,使得该区域填充的时候无法正确填充。
转自:http://blog.sina.com.cn/s/blog_4b9cc6db0100bbyb.html
0 0
- MFC中如何在不规则的区域内填充颜色
- VC 如何对不规则图形填充颜色
- 在VB6.0中实现大面积不规则区域的填充
- opencv在图片指定区域内填充矩形,并在图片中显示矩形的轮廓
- 如何为不规则图形填充颜色 (注:图形是闭合的)
- MFC填充任意不规则图形
- 如何判断鼠标在DIV的区域内?
- 在autocad中对二维图形的颜色填充
- 在QT中如何实现一个不规则形状的窗口
- 折线图中如何填充渐变颜色
- AS3中不规则四边形的图片填充方法
- 在as3isolib中 给对象填充颜色
- 判断点或者坐标是否在不规则区域内
- 如何在PS和FLASH里做渐变颜色填充的字体
- ListView:在Adapter中修改item里的某个图形的大小、填充颜色、边距
- Code70在Asp.NET中填充DropDownList颜色
- 如何让MFC中listctrl自动填充整个对话框窗口
- MFC中如何显示颜色选择对话框
- 这玩意到底咋子用手机写嘛。。。。
- 《Java 核心技术卷一》读书笔记
- SOCKET中send和recv函数工作原理与注意点
- Linux Core dump
- 关于APUE(Advanced Programming in the Unix Environment)第三版 代码在ubuntu中的编译运行
- MFC中如何在不规则的区域内填充颜色
- 编程之美 - 找出故障机器
- MFC中的CDC详细教程(2)
- C++中cin、cin.get()、cin.getline()、getline()、gets()等
- 我的2015
- 【Unity闲谈】自动处理2.5D(伪3D)游戏中 物体的遮挡关系
- Python入门知识总结
- tyvj 修剪草坪
- [Microsoft][ODBC 驱动程序管理器] 未发现数据源名称并且未指定默认驱动程序