论文部分内容阅读
摘要:本文对CAD中区域填充中的剖面线填充算法的适用条件及其核心问题加以详细分析和解释。
关键词:区域填充 剖面线填充
中图分类号:G712 文献标识码:A 文章编号:1673-9795(2011)03(b)-0000-00
所谓区域填充是指在一个有界区域内填充某种颜色或图案。区域填充常用于制图中,教学制图及工程制图上不仅需要画出各种图形,常常还需要对某一封闭区域填以不同的颜色、灰度、线型、符号等以示区别或者增加立体感。
区域填充有多种方法,大体可以分为两类:多边形填充和种子填充。下面对多边形填充中常用的剖面线填充算法进行分析。
剖面线填充是扫描线算法在工程制图领域中一个应用,是AutoCAD中剖面线填充(如剖面线命令HATCH)的理论基础。它是在一个封闭的图形区域中填充一定角度(如45)的细实线代表金属材料。
1 剖面线填充算法的前提条件
已知多边形各顶点的坐标和剖面线的方向及间距。
2 算法思想
根据已求出的多边形各顶点沿剖面线方向在Y轴上的截距B,找出其中的最大、最小截距、,以此确定剖面线的范围为≤≤(为第i根剖面线在Y轴上的截距),并求出每条剖面线与多边形的交点,连接多边形的交点即可。
3 算法步骤
(1)多边形各顶点沿剖面线方向在Y轴上的截距由下式确定:
== i=1,2,…,n,a为剖面线与x轴夹角,其
中最大、最小截距为=max[],=min[](如图1所示)。
(2)設剖面线的间距为D,则削面线的数量NL由下式确定:
NL=INT(./D)
(3)设是某一条剖面线,当<<或>>时,剖面线一定与截距为和的二顶点连线相交。
(4)求出削面线与各边的交点。
若交点多于2时要排序(按X大小),当剖面线通过顶点时,按前述方法处理。
(5)从单点到双点连线。
如果多边形内有环,假想把图形沿1、2切开(如图2所示),并连续编号,其中1与8和2与7坐标相同,这样处理后就可以按上述方法进行。
圆可以看作是边数很多的多边形,两个同心圆也可以假想把它切开,用上述方法处理。
4 意义
CAD的出现给广大教师和工程技术人员及科技工作者带来了很大的方便,而CAD软件正是计算机图形学原理在现实中的具体应用剖面线填充是区域填充中常用的一种算法,是CAD中剖面线填充的理论基础。通过对此算法的深入了解,可以帮助我们更好地应用和深层次的理解CAD,从而达到触类旁通的目的。
参考文献
[1] 杨贺来.AutoCAD理论及应用.清华大学出版社有限公司.2009.
[2] 张双才.计算机绘图基础教程(AutoCAD).清华大学出版社2007.
[3] 袁太生.连通域的递归填充算法.太原大学学报.2001(02).
[4] 陈元琰,张晓竞.计算机图形学实用技术[M].科学出版社.2000.
关键词:区域填充 剖面线填充
中图分类号:G712 文献标识码:A 文章编号:1673-9795(2011)03(b)-0000-00
所谓区域填充是指在一个有界区域内填充某种颜色或图案。区域填充常用于制图中,教学制图及工程制图上不仅需要画出各种图形,常常还需要对某一封闭区域填以不同的颜色、灰度、线型、符号等以示区别或者增加立体感。
区域填充有多种方法,大体可以分为两类:多边形填充和种子填充。下面对多边形填充中常用的剖面线填充算法进行分析。
剖面线填充是扫描线算法在工程制图领域中一个应用,是AutoCAD中剖面线填充(如剖面线命令HATCH)的理论基础。它是在一个封闭的图形区域中填充一定角度(如45)的细实线代表金属材料。
1 剖面线填充算法的前提条件
已知多边形各顶点的坐标和剖面线的方向及间距。
2 算法思想
根据已求出的多边形各顶点沿剖面线方向在Y轴上的截距B,找出其中的最大、最小截距、,以此确定剖面线的范围为≤≤(为第i根剖面线在Y轴上的截距),并求出每条剖面线与多边形的交点,连接多边形的交点即可。
3 算法步骤
(1)多边形各顶点沿剖面线方向在Y轴上的截距由下式确定:
== i=1,2,…,n,a为剖面线与x轴夹角,其
中最大、最小截距为=max[],=min[](如图1所示)。
(2)設剖面线的间距为D,则削面线的数量NL由下式确定:
NL=INT(./D)
(3)设是某一条剖面线,当<<或>>时,剖面线一定与截距为和的二顶点连线相交。
(4)求出削面线与各边的交点。
若交点多于2时要排序(按X大小),当剖面线通过顶点时,按前述方法处理。
(5)从单点到双点连线。
如果多边形内有环,假想把图形沿1、2切开(如图2所示),并连续编号,其中1与8和2与7坐标相同,这样处理后就可以按上述方法进行。
圆可以看作是边数很多的多边形,两个同心圆也可以假想把它切开,用上述方法处理。
4 意义
CAD的出现给广大教师和工程技术人员及科技工作者带来了很大的方便,而CAD软件正是计算机图形学原理在现实中的具体应用剖面线填充是区域填充中常用的一种算法,是CAD中剖面线填充的理论基础。通过对此算法的深入了解,可以帮助我们更好地应用和深层次的理解CAD,从而达到触类旁通的目的。
参考文献
[1] 杨贺来.AutoCAD理论及应用.清华大学出版社有限公司.2009.
[2] 张双才.计算机绘图基础教程(AutoCAD).清华大学出版社2007.
[3] 袁太生.连通域的递归填充算法.太原大学学报.2001(02).
[4] 陈元琰,张晓竞.计算机图形学实用技术[M].科学出版社.2000.