1

如您所知,当我们使用通常的线条绘制方法时,我们使用这样的代码(我不是在谈论特定的编程语言。我只是在谈论我们做什么。):

line(point1,point2)

或类似的东西。

我相信你已经看到,当我们用这些常用的方法画一条对角线时,这条线不会是平滑的。例如,如果你去 windows paint 并将线宽设置为最小,然后尝试画一条对角线,你会看到线条中的断点。但是,在 Photoshop、Corel DRAW 等一些程序中,当您绘制对角线时,它非常平滑,您看不到断点。如果您仔细观察像素,您会发现是什么原因造成的:

https://skydrive.live.com/embed?cid=6D7B572F0E7DEFED&resid=6D7B572F0E7DEFED%21115&authkey=AMgqS95hWkp-e5w

我知道浅色像素会导致平滑度。

好的,你能告诉我我需要什么算法吗?

简单地说,请。

4

3 回答 3

3

我认为Xiaolin Wu的线路算法正是你所需要的。

于 2012-10-22T12:59:08.633 回答
1

您需要应用抗锯齿算法

抗锯齿是指用于解决采样信号(例如数字图像)中的混叠问题的多种技术。具体可以指:

  • 抗混叠滤波器,信号采样器之前使用的滤波器,用于限制信号的带宽
  • 多重采样抗锯齿,一种抗锯齿,一种用于计算机图形学以提高图像质量的技术
  • Supersample anti-aliasing,一种抗锯齿技术
  • 空间抗锯齿,在以较低分辨率表示高分辨率图像时最小化锯齿的技术
  • 时间抗锯齿,旨在减少或消除时间锯齿的影响

实现抗锯齿的一种简单方法是将图像渲染为原始大小的 4 倍,然后存储每 4 个像素(4 个正方形像素)的平均颜色值,并使用平均值渲染一个新图像,使其平滑。

于 2012-10-22T12:52:04.437 回答
1

仔细看在windows中绘制的线条画它用一种颜色填充像素(没有线条颜色的阴影),因此它不会是平滑的。
平滑线用线条颜色的浅色调填充相邻像素,使线条看起来平滑。在此处输入图像描述

于 2012-10-22T13:03:35.353 回答