用as3实现反锯齿..(用自写的算法实现)

      AS3实验室 2007-8-17 15:57

由于是还在实验阶段的东西,我没有优化算法,导致它的速度慢到令人无法忍受....(打开的时间超过15秒,请大家打开的时候耐心等待)..另外,要改变反锯齿图形的形状需要打开fla文件进行编辑..(改下四个顶点的坐标就行,不过别把图形的面积改太大了,会影响速度)

 压缩包下载

下面我大概说一下我的实现简单反锯齿的思路.

首先,我把每个像素点看作一个正方形,

如下图:

然后我们找出与要实现反锯齿的图形(以下简称p)相交的像素点,计算出相交部分的面积,然后,令像素的亮度与相交部分面积成正比,这样我们就实现了反锯齿,

但是,计算相交面积需要的运算量非常大..为了减少电脑的负担....我们把每个像素分成9个相等的部分...,并,取每部分的中心点来代表整个部分..

只要,中心点在p内,我们就认为这个部分在p内,这样就得到了相交部分的面积的模糊值..例如,上面的图中,p和像素点的相交部分占像素点的3分之1,所以,像素的亮度就是最大亮度的3分之1,

对每个与p相交的像素点进行上面的计算,我们就得到了一个反锯齿的图形...

标签集:TAGS:
回复Comments() 点击Count()

回复Comments

{commenttime}{commentauthor}

{CommentUrl}
{commentcontent}