我试图找出如何检查矩形是否完全位于SVG路径内。目前,我正在使用SVGs ispointinfl()函数来检查其角点是否这样做。但正如您所看到的,粉色正方形在视觉上不在SVG路径内,但其角点在视觉上,因此标记为“内”。
我需要类似getIntersectionList()的东西,但两个SVG元素。
有人知道怎么解决这个问题吗?
编辑:我找到了一个解决方案。我没有使用Rect元素,而是使用了Path元素。对于路径,我有. getTotalL长度()和. getPointAtL长度()-这就是我如何为每个px获得整个轮廓的曲线。
暴力方法-克隆SVG元素,用黑色填充路径(最后绘制)。将生成的SVG转储到画布中,如果任何像素不是白色或黑色,请检查它们是否是其中一个矩形的颜色。