用于绘制具有厚度/宽度的线的算法

时间:2013-11-16 18:30:15

标签: javascript algorithm graphics drawing line

我正在寻找一种快速算法来绘制具有一定厚度的线条。线路不必抗锯齿,速度优先。像这样简单的东西就足够了:

用例是一个Javascript游戏,其中蠕虫会留下痕迹。 (HTML5 Canvas显然会绘制线条,但getImageData()非常慢,碰撞检测也是如此)

在过去的2.5小时里,我找不到任何可以做到这一点的事情。是的,我知道在SO上几乎有相同的问题,实际上有很多问题,但没有一个问题有一个可行的解决方案。我目前唯一的解决方案是在Bresenham线上绘制圆圈,效率不高。

一些代码(伪代码,JS或至少是文章的链接)会很棒。

1 个答案:

答案 0 :(得分:10)

http://members.chello.at/~easyfilter/bresenham.html

在底部检查。它是一种抗锯齿线,但应该很容易修改为非抗锯齿。