【发布时间】:2020-06-12 03:57:09
【问题描述】:
[多边形的所有坐标都是已知的] 这里对于特定的 Y 值,我需要计算填充多边形的 x 范围,但现在我正在搜索 x 的每个点 y 并检查它是否在填充中,任何人都可以提出更好的建议解决方案。
//////////////////////更新/////////////// 在这里,我可以计算多边形的边界框,即 SVG 中的 BBox 。 它具有
的属性startPositionx,y 和宽度和高度
.** 所以这是我计算算法中所有点的算法。
x=this.startPosition.x;
for(y:this.startPosition.y;y<=(this.startPosition.y+height);y++)
{
If(polygon.isPointInFill(x,y))
{
// return the point is inside the polygon
}
X++;
If(x>(this.startPosition.x+width))
{
x=this.startPosition.x
}
【问题讨论】:
-
比什么更好的解决方案?
-
我正在检查多边形中位于 x 和 Y 的最大值和最小值之间的每个点,因此执行需要更多时间,所以如果我们已经知道多边形,我正在寻找解决方案区域 x 范围为 y 时间会减少
-
是的,我们需要额外的信息,但我可以得到顶点的所有点,我不能用这些信息做
-
请展示您的解决方案,这样更容易讨论如何改进它,即创建minimal reproducible example。还要标记您正在使用的编程语言。
-
标记编程语言以吸引合适的人。