下载此文档

第3章二维线画图元及属性.ppt


文档分类:IT计算机 | 页数:约61页 举报非法文档有奖
1/61
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/61 下载此文档
文档列表 文档介绍
第3章二维线画图元及属性
第3章 二维线画图元及属性
直线的扫描转换及算法
圆和椭圆的扫描转换算法
其他输出图元的生成
输出图元的属性
字符的生成
直线的扫描转换及算法
扫描转换:从图形定义的物空间到进行显示处理的图像空间的转换
线画图元的扫描转换:计算出落在线段上或充分靠近它的一串像素,并以此像素集近似替代连续直线段在屏幕上显示的过程。
由像素表示的直线段为均匀填充的实心原点
像素:中心为网格点的圆点,距离均匀,相互不重叠
直线的扫描转换及算法
一、点的生成
点是图形中最基本的图素,直线、曲线以及其它的图元都是点的集合。在几何学中,一个点既没有大小,也没有维数,点只是表示坐标系统中的一个位置。在计算机图形学中,点是用数值坐标表示的。在直角坐标系中点由(x, y)两个数值组成的坐标表示,在三维坐标系中点由(x, y, z)三个数值组成的坐标表示。
在输出设备上输出一个点,首先需要计算出该点的坐标位置(最逼近该点的像素位置),其次需要把应用程序中的坐标信息转换成所用输出设备的相应指令。
直线的扫描转换及算法
二、 直线的扫描转换
在数学上,理想的点和直线都是没有宽度的。但是,由于每个像素对应于图形设备上的一个矩形区域,当我们在光栅图形设备上显示一个点时,实际上它是有用一个发光的矩形区域来表示的;当在光栅图形设备上显示一条直线时,我们只能在显示器所给定的有限个像素组成的矩阵中,按扫描线顺序,依次确定最佳逼近于该直线的一组像素,并且对这些像素进行写操作。这个过程称为直线的扫描转换。
直线的扫描转换及算法
二、 直线的扫描转换
对于水平线、垂直线和45º斜线,选择哪些像素是显而易见的,但是对于其它的直线,确定用哪些像素来表示它就不那麽简单了。本节我们介绍用于直线扫描转换的常用算法:
数值微分法
Bresenham画线算法
中点画线法
直线的扫描转换及算法
象素
线

Geometric Graphics G={Pi | Pi--nearest pixel }
基本图形的生成算法任务之一就是找出所有的Pi 。
直线的扫描转换及算法
在介绍画线算法之前,我们先讨论画直线的基本要求:
直线必须有精确的起点和终点,
外观要直,
线宽应当均匀一致、且与直线的长度和方向无关,
算法速度要快。
直线的扫描转换及算法
直线方程:y=kx+b
k是直线的斜率,b是y方向的截距,若直线的两端点为(x0,y0)及(x1,y1),则
k=(y1-y0)/(x1-x0)
b=y1-kx1
对于一直线,在x方向取间隔dx,
则可计算y方向的间隔dy
dy=k×dx
该方法涉及到浮点数的乘除法、加减法以及取整运算,因此,效率非常低
数值微分法
DDA算法的优点:
使用DDA算法,每生成一条直线做两次除法,每画线中一点做两次加法。因此,用DDA法生成直线的速度是相当快的。
DDA算法的缺点:
在此算法中,x,y、k必须是float,且每一步都必须对x或y进行舍入取整,不利于硬件实现。

第3章二维线画图元及属性 来自淘豆网www.taodocs.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数61
  • 收藏数0 收藏
  • 顶次数0
  • 上传人落意心冢
  • 文件大小1.70 MB
  • 时间2022-01-10