我需要一种算法,给定一个表示多边形的点数组(通常是矩形形状,但可以是任何非规则多边形),并给定该多边形内的点点击位置,拟合一个接触三个边的圆最接近单击位置的多边形,但在不离开边界的情况下最大化圆的整体覆盖范围
触摸两侧很容易(找到质心,然后找到到边缘的最短距离等) - 但触摸三个边是挑战。见附图。
我需要尽快回答..谢谢!
我需要一种算法,给定一个表示多边形的点数组(通常是矩形形状,但可以是任何非规则多边形),并给定该多边形内的点点击位置,拟合一个接触三个边的圆最接近单击位置的多边形,但在不离开边界的情况下最大化圆的整体覆盖范围
触摸两侧很容易(找到质心,然后找到到边缘的最短距离等) - 但触摸三个边是挑战。见附图。
我需要尽快回答..谢谢!
问题与中轴有关。作为圆心接触 3 条或更多边的点是中轴的分支点。制作中轴,找到分支点并为给定的点击位置找到最接近的位置就足够了。