假设我在HTML5画布中绘制了一条线:
...
ctx.beginPath();
ctx.moveTo(x,y);
ctx.lineTo(x1,y1);
ctx.closePath();
...
我希望能够确定鼠标按下事件是否发生在这条线上,我有如下代码:
var handleMouseDown = function(e) {
var coords = translateCoords(e.x,e.y);
...
if (ctx.isPointInPath(coords.x, coords.y) {
...
现在,这段代码在处理圆形和矩形方面运行良好,但对于线条则不行。我有两个问题:
我的想法是调用closePath()函数处理线条本身是不正确的。问题 - 如何检查鼠标按下事件是否发生在该线上?
如何扩展这个功能以查找鼠标按下事件是否发生在线附近?