反走样技术的研究与实现说明书论文.doc_第1页
反走样技术的研究与实现说明书论文.doc_第2页
反走样技术的研究与实现说明书论文.doc_第3页
反走样技术的研究与实现说明书论文.doc_第4页
反走样技术的研究与实现说明书论文.doc_第5页
已阅读5页,还剩23页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

杭州师范学院本科毕业论文反走样技术的研究与实现1反走样技术的研究与实现说明书论文目录摘要iAbstracti第一章引言11.1研究背景11.2编程实验环境2第二章反走样概述52.1过取样技术52.2区域取样72.3WU像素反走样122.4点取样142.5象素移相14第三章反走样算法的改进153.1多段直线反走样算法153.2圆反走样算法183.3位图反走样19第四章总结与展望234.1总结234.2进一步改进设想23杭州师范学院本科毕业论文反走样技术的研究与实现2参考文献25第一章引言1.1研究背景光栅图形显示器是目前使用最广泛的图形显示器,因为它具有以下优点:光栅扫描显示器具有固定的刷新顺序,扫描从屏幕的左上角开始,从左到右,从上到下的顺序进行刷新,从而刷新控制部件得以简化,节约了成本。在光栅显示系统中,构成图形的最小图形元素是像素,这样只要计算屏幕上位于给定区域以内的所有像素,并且赋予一定的颜色,就完成了图形的绘制。光栅显示器中的图形由像素构成,而每一个像素又可呈现出多级灰度或不同的颜色值,颜色丰富,显示出来的图形具有更好的视觉效果。光栅扫描显示器是一个画点设备,与图形的复杂度无关,刷新频率固定,因此不会象随机扫描显示器那样出现闪烁现象,人眼看上去更舒服。但光栅显示器也有它的缺陷,图形信号是连续的,而光栅显示系统中用来表示图形的却是一个个离散的像素。用离散的像素来表示连续的图形时会出现失真,也就称为走样,如图1.1所示。图1.1锯齿状边界光栅显示系统为何会出现走样呢?光栅图形显示器是一个画点设备,被显示的线段、字符、图形及背景色都按像素点一一存储在帧缓冲存储器中。当我们要画一条直线时,它通常不可能完全精确地从一个可编址的像素点画一条直线到另一个可编址的像素点,只可能用尽可能靠近这条直线路径的像素点集来近似地表示这条直线。显然只有画水平线、垂直线时,像素点集在直线路径上的位置才是准确的,其他情况下的直线均或多或少地存在阶梯状(锯齿状)的现象。光栅图形的走样现象除了上述锯齿状边界外,还有图形细节失真,狭小图形遗失等现象。杭州师范学院本科毕业论文反走样技术的研究与实现3图1.2图形细节失真在光栅显示器上显示如图1.2(a)所示的细长矩形时,出现了图形细节失真,其结果如图1.2(b)所示,原细长的矩形被显示成了加宽的矩形。图1.3狭小图形的遗失由于光栅系统中表示图形的最小单位是一个像素,图形中那些比像素更窄的细节丢失了,这就出现了图形细节失真现象。在图1.3中,一些狭小的图形分布在两条扫描线之间,由于它不覆盖任何一个像素中心,故不会被显示出来。当这些狭小的图形进行运动时,覆盖像素中心时被显示出来,不覆盖像素中心时不被显示出来。这样在运动的过程中时隐时现,产生闪烁。为了提高图形的显示质量,需要减少或消除上述走样现象。用于减少或消除这种走样现象的技术,称为反走样(Antialiasing)。研究如何消除或减缓这类走样现象,给人视觉上产生更舒适光滑的图形,在图形界面已成为人机交互主流方式的今天,具有一定的应用价值。反走样技术能提高图形的显示质量,因此在很多画图软件中也采用了这种技术。优软电脑有限公司设计推出的新一代绘画程序-优软精灵画笔2.0,在原有的各种绘画功能上,添加了一系列全新设计的绘画工具;可以打开外来JPG,TAG,TIFF,GIF,BMP文件;更新三维立体窗口系统;对压力感应笔高效率支持,速度和流畅度达到专业软件水准,让用户的体会更加细腻逼真。它的精妙之处在于具有细笔尖反走样功能,所以使细笔画更细致更漂亮。反走样技术不仅能提高图形显示质量,而且在反走样汉字方面也有很好的效果。由于汉字的笔画很多,而且大多数非水平非垂直,也会产生较严重的走样现象。图1.4中第1个字为追踪出的轮廓,第2个为显示的原始矢量字符。第3个为反走样处理后的矢量字符。杭州师范学院本科毕业论文反走样技术的研究与实现4图1.4矢量字体轮廓的反走样由此可见,反走样技术在实际应用中有十分重要的意义。另外,在处理纹理图形,以及在动画中闪烁的细小物体图形等问题中反走样技术都得到了广泛运用。1.2编程实验环境本文采用的实验环境的是C+Builder6。C+Builder由著名的Borland公司开发,是Windows环境下功能强大的可视化C+开发环境,它全面实现了ANSIC+标准,并提供了自己的扩展,并且兼容PC计算机上的两种最常用的C+编译器,即BorlandC+和VisualC+。BorlandC+和VisualC+的程序几乎不用做任何修改,就可以在C+Builder下编译、运行。下面主要介绍在论文中使用最频繁的、与图形图象处理密切相关的组件及其属性和方法。1.2.1TColor在计算机图形处理软件中,通常颜色是根据红、绿、蓝三种颜色的饱和度来定义的,这种模型称为RGB模型。任何颜色都是红、绿、蓝三种基本色的不同组合组成,因此每种颜色都可以用红、绿、蓝基本色来表示。Red、Green、Blue用来表示基本色构成的三个分量,他们的取值为0-255,最小值表示没有颜色,最大值255表示最高的饱和度。TColor类型用于定义一个对象的颜色,很多组件的颜色属性就是TColor类型。同时C+Builder定义了一些常用的颜色常量,可在程序中直接使用。比如clRed,clGreen等。1.2.2TCanvas在C+Builder中提供了一个TCanvas对象,它封装了Windows应用程序在图形输出方面所需要的大多数GDI对象和绘图命令。在这个区域上,程序可实现各种绘图功能,很多图形组件(如TImage、TPaintBox)的画布(Canvas)属性都是一个TCanvas对象。TCanvas的属性和方法很多,最常用的有:TCanvas的属性(1)Pixels属性Canvas的Pixels属性可以用来去顶像素的颜色。可以利用Pixels属性来获得某一点的颜色值,也可以通过它来设置某一点的颜色值,这个属性在反走样算法中起了相当重要的作用。如要获得坐标(20,20)的颜色值,可以使用下面的代码:TColorColor;Color=Canvas-Pixels2020;如果要将坐标点(10,20)的颜色设置为红色,可以使用如下代码:Canvas-Pixels1020=clRed;(2)画笔属性TCanvas的画笔

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论