线的属性_线型
可选用的线型属性包括实线、虚线和点线等。通过设置沿线路径显示的实线线段的长度和间距来修改画线算法,可以生成各种类型的线。可以通过在实线线段之间插入与实线线段等长的空白段来显示虚线,许多图形系统都允许选择划线长度和划线间隔的长度。
光栅线算法通过绘制像素段来显示线型属性。对于各种划线、点线和点划线样式,画线程序沿线路径输出一些连续像素段。在每两个实心段之间有一个给定长度的空白间隔段,段长度和中间空白段的像素数目可用像素掩模(pixel
mask)指定。像素掩模是包含数字0和1的字符串,用来指出沿线路径需要绘制哪些位置。例如,掩模11111000可用来显示划线长度为5个像素和间隔空白段为3个像素的虚线。与1对应的像素位置赋以当前颜色,而与0对应的像素位置显示背景色。
使用固定数目的像素来绘制划线会产生如图4.6所示的、在不同的直线方向生成不等长划线的现象。图中所显示的线段都是用4个像素画出,但对角线上的划线要比水平方向长√2(根号2)倍。如果要进行精确的绘制,那么对任何直线方向的划线长度应保持近似的相等。为了实现这一点,需要按照直线的斜率来调整实心段和中间空白段的像素数目。在图4.6中,我们可以通过将对角线的划线像素减少到3个来显示出近似等长的划线。另一个保持划线等长的方法是,将划线看成单独的线段。将每条划线的端点坐标进行定位后,调用沿划线路径计算像素位置的画线程序。
时间: 2024-10-11 21:27:08