1.一种自动将多段线转换成封闭图形的方法,包括以下步骤:
1)选取未被处理的零宽度路径的图形;
2)确定查询区域,进行查询;
3)对图形的线段转换成封闭图形。
2.根据权利要求1所述的自动将多段线转换成封闭图形的方法,其特征在于,所述步骤2)进一步包括以下步骤:
21)获取零宽度路径的中心线,以该中心线最后一个点作为查询区域,查询与之相交的图形;
22)获取零宽度路径的中心线,以该中心线第一个点作为查询区域,反转该中心线,查询与之相交的图形。
3.根据权利要求2所述的自动将多段线转换成封闭图形的方法,其特征在于,所述查询与之相交的图形,进一步包括以下步骤:
31)以中心线的最后一个点或第一个点构建盒子;
32)记录入数组;
32)如果所述数组的唯一元素第一个点与中心线的第一个点相同或其最后一个点与中心线的第一个点相同,则将该元素合并到中心线,并调整中心线的最后一个点或第一个点。
4.根据权利要求1所述的自动将多段线转换成封闭图形的方法,其特征在于,所述步骤3)进一步包括以下步骤:
41)中心线的第一个点和最后一个点重合,对中心线压缩,压缩后的中心线为简单图形,则将中心线生成多边形,并删除对应的原始图形;
42)中心线的第一个点和最后一个点重合,对中心线压缩,压缩后的中心线不是简单图形,则将中心线重新设置给原始图形,并记录被处理的原始图形;
43)中心线的第一个点和最后一个点不重合,对中心线进行压缩后重新设置给原始图形,并记录被处理的原始图形。
5.根据权利要求1所述的自动将多段线转换成封闭图形的方法,其特征在于,所述步骤3)进一步包括以下步骤:
51)中心线大于2个,且为简单图形,则直接将中心线的首尾相连接,创建一个多边形,结束转换过程;
52)中心线大于2个,且不是简单图形,对图形进行去冗余处理;
53)去除冗余后的中心线为简单图形,则直接将中心线的首尾相连接,创建一个多边形,结束转换过程;
54)去除冗余后的中心线不是简单图形,进行第三次GOA OR操作,将得到的结果转换成多边形后结束转换过程。
6.根据权利要求5所述的自动将多段线转换成封闭图形的方法,其特征在于,在所述去冗余处理,进一步包括以下步骤:
61)中心线的第一条边和最后一条边相交,用交点设置所述第一条边的首点和最后一条边尾点;确认不是简单图形,将中心线中的各个边转换成线段,所有相同的线段以链表形式保存在一起,并记录对应的各个边在中心线中的索引;去除指定的完全重叠的线段,并将线段重新生成点链中心线,
62)中心线的第一条边和最后一条边没有相交,去除最后一条边;确认不是简单图形,将中心线中的各个边转换成线段,所有相同的线段以链表形式保存在一起,并记录对应的各个边在中心线中的索引;去除指定的完全重叠的线段,并将线段重新生成点链中心线。