1

我想检测对使用路径绘制的画布元素的点击。到目前为止,我已经想到将元素路径存储在 javascript 数据结构中,然后检查匹配元素坐标的命中坐标。我相信已经有算法可以用于细化 o 坐标搜索。当元素数量较大时,渲染每个元素路径并检查命中将是低效的。谁能指出我?

4

2 回答 2

1

JavaScript 画布上下文有一个 isPointInPath 方法。

https://www.w3schools.com/tags/canvas_ispointinpath.asp

如果您想实现自己的 Point In Polygon 算法,请查看 Wikipedia 页面

http://en.wikipedia.org/wiki/Point_in_polygon#Point_in_polygon_queries

于 2012-09-27T19:46:24.760 回答
0

有一些库正在 j= 这样做,例如:

paper.js http://paperjs.org/

面料.js http://fabricjs.com/

kenetic.js http://kineticjs.com/

我建议你要么检查代码库,要么在这些基础上构建。

于 2012-09-27T10:03:21.683 回答