如何检测一个形状是否被点击(HTML5画布)?

6
我正在使用canvas和lineTo方法绘制不同形状,如矩形、三角形、六边形等,就像这篇博客中所示。我只是想找到一个简单的方法来判断我是否点击了形状内部。我可以通过给形状填充一些颜色并检查我点击的点是否具有该颜色来实现,但我不想使用填充颜色的方法。还有其他方法吗?
我也发现了isPointInPath,但它没有起作用。
2个回答

2

你可以尝试使用一些canvas框架,比如http://kineticjs.com/ (请查看事件部分),这些框架已经支持了可点击元素。或者你需要编写两个函数,一个函数用于在canvas元素内获取相对鼠标点击坐标(我使用的是此处描述的函数:https://dev59.com/ZXVD5IYBdhLWcg3wNIrc#5932203),然后编写另一个函数来检查返回的鼠标坐标是否与canvas上的形状相交。


2

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接