【发布时间】:2016-04-27 18:05:07
【问题描述】:
我确实有两种方法可以通过 bresenham/midpoint 算法创建一个实心圆。 但是第二种方式看起来比第一种方式要好得多。
我想创建类似于第二个的结果,但使用第一个的方式 一。我想用第一种方法来做,因为我需要一个正确的公式来计算距离,目前就是这个:
function calcDistance (pos,pos2,range){
var x1 = pos.hasOwnProperty('x') ? pos.x : pos[0],
y1 = pos.hasOwnProperty('y') ? pos.y : pos[1],
x2 = pos2.hasOwnProperty('x') ? pos2.x : pos2[0],
y2 = pos2.hasOwnProperty('y') ? pos2.y : pos2[1];
return Math.pow((x1-x2),2) + Math.pow((y1-y2),2) - Math.pow(range, 2)
};
【问题讨论】:
-
你的问题是?
-
@BrentWashburne 我想创建类似于第二个的结果,但使用第一种方法。
-
你的
calcDistance函数和画圆有什么关系?这两种方法都没有提及。 -
@BrentWashburne 你看到 jsfiddle 了吗?在那里你可以看到我是如何使用它的。
标签: javascript algorithm geometry bresenham