【发布时间】:2017-07-06 12:01:57
【问题描述】:
我有一个带有这个参数的画布:
width = 400, height = 400
有一条线以Q 的角度(以度为单位)通过点cursor[x1,y1]
我需要获取平面中线交点的所有坐标并将其写入数组。现在我使用这个等式:y - y1 = k * (x - x1)
要检查所有点,我使用此代码:
var rad = Q * Math.PI/180;
for (ctrY = 0; ctrY < 400; ctrY += 1) {
for (ctrX = 0; ctrX < 400; ctrX += 1) {
if ( (ctrY - cursor.y) ===
~~(Math.tan(rad) * (ctrX - cursor.x)) ) {
z.push([ctrX, ctrY]);
}
}
}
例如当 0
我哪里错了?也许有更方便的算法?
附:对不起我的英语
【问题讨论】:
-
与什么相交的线??
-
@MBo 线与坐标平面的交点。哪些点位于 400*400 的平面上。
-
如果直线位于平面内,则不能与该平面相交。但也许我明白你的需要并给出了答案
标签: javascript algorithm