计算机图形学 五、图形填充

1、基本概念

区域:指相互连通的一组象素的集合。区域通常由一个封闭的轮廓线来定义,处于一个封闭轮廓线内的所有象素点构成一个区域。

区域填充:将区域内的象素置成新的颜色,新的颜色可以是常数,表示填以某种颜色;也可是变量,表示填充的是图案。

顶点表示:用多边形的顶点序列来刻划多边形。

点阵表示:用位于多边形内的象素的集合来刻划多边形。

2、简单扫描线填充算法

内点:填充成固定颜色或图案,
外点:不填充;
边界点:作为内点还是外点视要求而定。

当射线与多边形相交奇数次后,线上点都是内点。偶数次相交后线上点都是外点。

交点是顶点时:

3、边相关扫描线填充算法

改进思路:

每次计算边和扫描线交点,效率很低。

当前扫描线的交点顺序,与下一条扫描线与各边的交点顺序很可能相同或相似。

火花边表(AET):

与当前扫描线橡胶的边称为活动边,把它们按与扫描线交点x坐标递增的顺序存入一个链表中。

4、边填充算法

基本思想:对于每条多边形与每一条扫描线的交点,将该扫描线上交点友方像素取补。对多边形的每一条边作此处理。多边形的各边顺序随意。优点:算法简单。缺点:1)每个像素肯呢个被访问多次。2)输入、输出量大。

5、简单种子填充算法

原理:如果多边形区域,由此出发找到内所有像素。

区域分类:

四向连通:从区域上任意一点出发,可通过四个方向,即上、下、左、右移动的组合,在不越出区域的前提下,到达区域内的任意象素。

八向连通:区域内的每个象素,可以通过左、右、上、下、左上、右上左下、右下这八个方向的移动的组合来到达。

6、直线线宽

线刷子:垂直刷子、水平刷子。

  • 5
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值