【发布时间】:2023-02-24 00:01:37
【问题描述】:
简单解释:我正在尝试创建一个程序来标记圆圈是否可以用于以后的计算。使用圆圈的要求:
- 点(图中的黄金点)不能在圆周内
- 圆圈必须能够“避开”周围的点,例如不得在封闭空间内。
第一个要求很容易解决,但我对第二个要求有点挣扎。
我在 python3.x 中编码,并使用 DT = scipy.spatial.delaunay(golden_spots) 和 marked_circles = DT.find_simplex(circle_centers) 作为标记圆圈的初始方法,如下图所示(绘制凸包以方便可见),但它也在每个圆圈中标记两个圆圈能够“逃脱”但在 delaunay 三角剖分内的图(左图中的所有红色圆圈和右图中最左边和最右边的红色圆圈)。这里的问题是我仍然想要标记右图中的内部红色圆圈,而不是外部两个。
根据我可用的数据,我有所有点和圆心的 x/y 坐标及其半径(所有圆在给定的图中具有相同的半径)。 此外,圆圈沿 x 轴和 y 轴的间隔不均匀。
图解:
- 灰色圆圈:未标记
- 蓝色圆圈:由于 delaunay 而标记
- 绿色圆圈:由于靠近点而标记
- 红色圆圈:由于 delaunay 而标记但不在点附近
问题:有没有办法在最里面(右图)仍然被标记的情况下不标记最外层的圆圈。提前致谢。
笔记:这两个地块只是示例,但理论上,地块上的不同位置可能会有单独的黄金点,不一定在中间的一个连续“堆”中。
【问题讨论】:
标签: python convex-hull delaunay