我正在尝试使用库 ezdxf 在 python 中管理 dxf 文件。
导入后,我有两种类型的实体列表:
- ARC:起点、终点、起点角度、终点角度、圆心、半径
- LINE:起点、终点
我的目标是找到所有具有相应实体的封闭区域。例如:
- area_1 = [arc1,line2,arc3,line7]
- area_2 = [arc4, line1, line4, line9]
我的第一次尝试是使用图论计算实体每个点的最小闭环。为此,我使用每个实体的起点和终点作为顶点,将实体的长度作为边创建了一个图形。
我用这种方法遇到了两个大问题:
- 我必须为每条弧线/线定义一个连贯的“方向”
- 使用图边的实体长度并不总是导致最小区域
我在几何方面不是很熟练,所以我想知道我是否错过了一些明显的东西。有一种更结构化的方法可以做到这一点,还是我应该继续尝试图论?