线型是所有图元都具有的属性.在工程制图中应用广泛.如实线、虚线、点画线等。线型控制一般用一个位屏蔽器来完成.如可用一个39?位的住数表示一个位申,当像素对应的位为1时显示该像素,为0时不显示该像素。用这样的整数控制线廷时,线组必须以32个像素为周期孟复。落本图形的填充有两个步吸,一是确定应补充的像索,二是补充妞色。确定像索是否被坡充的方法是用顺序的扫描线与图形边界相交,并对两交点间的像素从左到右填充。
矩形的补充
补充四条边是水平或垂直的矩形比较容易.与矩形相交的顺序扫描线从左边界扫到右边界。在此过程中,把遇到的每个像素城以同样的翻色。多边形补充
一般多边形的坡充过程.对每条扫描线都需要执行L;l下4个步软:
(1)求该扫描线与多边形每条边的交点。
(2)对所有的交点按从左到右以x递增的顺序排序。
(3)把排序的交点进行配对.每对交点代表扫描线与多边形的一个相交区间.该区间的点属于多边形的内部点。
(4)将相交区间内的像素点成多边形的颜色.把13间外的像家点成背景的颜色。
这是多边形补充的扫描转换算法。还有边缘城充算法、种子补充算法等。
圈案补充
补充方式分为均匀补充方式、位图不透明方式、位图透明方式、像素图坡充方式。
前面所述的都是均匀补充方式,即将边界内部的像设t成同一种颐色。后3种方式只需将前述算法稍加修改即可实现。当按照位图不透明方式坡充时,若像索对应的位图单元的值为1,则仍用前景色显示该像素;若为0,则以背景色显示该像素。
当按照位图透明方式城充时,若像索对应的位图单元的位为:州仍用前景色显示该像素;若为0,则不改变屏幕上该像素的色。
当按照像家图方式补充时.以像对应的像家图单元的翻色显示该像索。
字符表示和输出字符是图形中的一个皿要组成部分.包括字母、数字、仅字和标点等符号。目前有ASCII码和仅语代码即《交换用汉字编码字符集墓本集》(GB 2312-1980).
1.字符的表示
字符的图形有两种表示方法:点阵字符法和轮娜字觅法。
(1)点阵字符法:每个字符都定义成一个长方形的矩阵.该矩阵对应着一个长方形的位图。字符的笔画经过的位,其值为I,对应的像素里成字符的颜色;字符的笔画不经过的位.其值为0.对应的像索皿成背景颇色(写模式为“替换“方式时)或像索颐色不变(写模式为“与.方式时)o
(2)轮脚字型法:这种方法采用直线、二次或三次曲线来描述一个字符的轮廓线.这些轮娜线构成了平面上一个成几个封闭的用形。这样形成的字符无论变大还是变小.其清晰度和美感都不受影响。
2.字符的怡出
字符显示和打印的步骤是先根据字符的组码将字符从字库中检索出来.然后把字符定位在正确的位世上。
二维裁剪
把彼个图形中所需要的一部分放到屏幕显示区内,舍弃图形的其他部分.这个过程称为救剪( clip ),图形在屏幕上显示的区城称做窗口.一般为矩形。裁剪算法的关健是确定图形中哪些点、线、多边形位于窗口之中或之外。
1.,经裁剪
直线裁剪的算法很多,有编码算法(cohen-eutherland算法)、中点分割算法和参数化算法( cyru.一悦改算法)等。下
面介绍编码算法。
直线与裁剪窗口的关系有4种可能。
(1)线段完全在窗口之内,如线段AB,
(2)线段完全在窗口之外,如线段‘刀。
(3)线段与窗口的一条边界相交,即线段一部分在窗口之内,
段石凡
直线与裁的窗口的位I关系
一部分在窗口之外。如d
(4)线段与窗口的两条边界相交.中间一段在窗口之内,两头在窗口之外,如线段HK,
对于完全在窗口之外的线段可舍弃。其他的在窗口内都有可见段,可见段不可舍弃。确定可
见段的方法是求它的两个可见端点。
2.字符裁剪
字符裁好有多种方法.常用的有以下3种:
(1)墓于字符申:当麟个字符申全部位于窗口之内时显示.否则不显示。
(2)蔫予字符:当一个字符完全位于窗口之内时显示.否则不显示。
(3)基于构成字符的最小元素:对于点阵字符而言.构成字符的最小元炭为像紊.此时字符的裁剪变为点裁剪;对于轮脚字符而言,构成字符的最小元素为直线和曲线,此时字符的裁剪就变为线裁剪。