鱼C论坛

 找回密码
 立即注册
查看: 5745|回复: 4

[知识点备忘] 第023讲:窗口绘画:多边形函数和多边形填充模式

[复制链接]
发表于 2015-9-3 15:59:15 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
知识点回顾:


1. 绘制多边形的 API 函数

Polygon  ——  绘制一个多边形

PolyPolygon  ——  绘制多个多边形


2. 与 PolylinePolyPolyline 函数的区别

  • Polyline 函数是绘制多条线,Polygon 函数是绘制一个多边形。
  • Polygon 函数会自动首尾相连,进而变成一个封闭式的图形
  • 因为 Polyline 函数的目标是画线,所以它根本不关心是否封闭和填充的问题;而 Polygon 函数是画封闭的多边形,所以它自己会帮我们填充背景颜色。


3. 填充模式

对于 PolygonPolyPolygon 函数,Windows 都使用设备环境中的当前画刷来填充区域。至于内部是如何填充的,要取决于多边形的填充模式。

填充模式一共有两种:

  • ALTERNATE(交替式,默认)
  • WINDING(螺旋式)

使用 SetPolyFillMode 函数设置填充模式。


4. 两种填充模式的区别

在通常情况下,两种模式仅在绘制复杂、重叠的多边形才会有不同的显示(例如五角星)。

012151sjyc222jxn513j5p.jpg

当填充模式为 ALTERNATE,GDI 填充每条扫描线从多边形的奇数边到偶数边之间的区域。也就是说,GDI 依次填充多边形的第一、第二条边之间的区域,接着填充第三、第四条边之间的区域(第二、第三条边之间的区域留空),以此类推。

当填充模式为 WINDING,GDI 填充所有能够一笔完成的多边形。

034812rd7efpbpbfmuo1bq.png


想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2015-9-3 18:33:40 | 显示全部楼层
支持小甲鱼老师啦
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2016-5-2 10:37:10 | 显示全部楼层
甲鱼兄加油
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2016-5-23 20:56:37 | 显示全部楼层
楼主,跟着你的步伐学习Windows感觉很不错,只是想弱弱的问下,20讲之后怎么就没有课后作业了呢?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-3-21 22:25:21 | 显示全部楼层
支持
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-5-13 04:12

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表