碎多边形合并
使用说明
面数据集碎多边形合并
在相交、标识、更新等操作后或者是栅格转矢量可能存在很多的细碎图斑,达不到上图面积,我们就需要将这些细碎图斑删除,但是图斑时不能直接说delete删除,这样图层会产生空隙,所何以我们要做的就是将图斑合并进最近的图斑。
参数说明
参数名 | 默认值 | 参数释义 | 参数类型 |
---|---|---|---|
源数据集 | 源数据集 | DatasetVector | |
碎多边形面积 | 0.0 | 碎多边形面积,小于此面积的多边形将会被合并 | Double |
容限 | 0.0 | 容限 | Double |
合并模式 (可选) |
按面积合并 | 指定的碎多边形合并方式。目前仅支持“按面积合并”方式,即将碎多边形合并到与其相邻的具有最大面积的多边形中 | EliminateMode |
自动删除孤立的小多边形 (可选) |
false | 是否自动删除孤立的小多边形 | Boolean |
分组字段 (可选) |
字段值相同的多边形才可能进行合并 | String | |
合并对象的优先级字段 (可选) |
合并对象的优先级字段,当分组字段不为空时有效。用户可以指定多个优先级字段或不指定。 如果指定优先级字段,则按照字段顺序,当被合并的多边形的字段值等于相邻多边形的字段值时,则合并到对应的多边形上,如果不相等,则比较下一个优先级字段的字段值。如果所有优先级字段值都不相等,则默认合并到相邻的面积最大的多边形上或公共边界最长的多边形上。例如,用户指定了 A、B、C 三个优先级字段,当被合并的多边形 F1 中 A 字段值等于相邻对象 F2 的 A 字段值时,则 F1 被合并到 F2 中;如果 A 字段值不相等,则比较 B 字段值,如果 F1 的 B 字段值等于相邻对象的 F2 的 B 字段值,但同时等于 F3 的 A 字段值,则将 F1 合并到 F3 中,因为 A 字段具有更高的优先级。如果 F2 和 F3 两个对象的 A 字段值都等于 F1 的 A 字段值,则默认使用面积最大的多边形或公共边界最大的多边形。当优先级字段为空时,使用面积最大原则,即小多边形(被合并的多边形)将会被合并到面积最大的多边形或公共边界最长的多边形上。 | String |
输出结果
参数名 | 参数释义 | 参数类型 |
---|---|---|
结果数据集 | 结果数据集 | DatasetVector |
注意事项
- 碎多边形通常指面积远远小于数据集中其他面对象的多边形,一般认为是数据集中面积最大的多边形面积的百万分之一到万分之一之间。但实际操作中,需要根据实际需求设置合适的最小多边形容限。如果对相离的面对象设置了较大的容限或者对实际上邻接的多边形设置过大的容限都是不合理的,都可能导致碎多边形合并失败。
- 该工具适用于两个面具有公共边界的情况,处理后会把公共边界去除。
- 进行碎多边形合并处理后,数据集内的对象数量可能减少。