5. # 擦除¶
缺前端控件截图
## 功能说明 对两份输入数据进行格网划分计算,求出其中一份据对另一份的擦除结果
## 参数说明
参数名称 |
参数取值范围 |
默认值 |
参数描述 |
XY容差 |
浮点数 |
0.001 |
经纬度容差 |
注意:擦除要素可以为点、线或面,只要输入要素的要素类型等级与之相同或较低。面擦除要素可用于擦除输入要素中的面、线或点;线擦除要素可用于擦除输入要素中的线或点;点擦除要素仅用于擦除输入要素中的点!
## 算法原理 输入数据: .. image:: uploads/9c7c95b8d675ea13cf07001f8cb21f58/图片2.png
其计算过程与交集取反的计算过程相似: 1. 对两份输入数据进行格网划分,并将同一网格中的数据划分到一起 2. 若图层中只含有图层一的数据,则输出Key值为图层一要素gid,几何结果为空要素。若图层一与图层二的要素面面相交为面、面线相交为线或线线相交为线,则视为有效相交,则输出Key值为图层一要素gid,几何结果为相交结果。其他相交情况如面面相交为点线、面线相交为点或线线相交为点视为无效相交,则输出Key值为图层一要素gid,几何结果为空要素 3. 通过groupbykey,把图层一每个要素与图层二所有要素的相交结果组合到迭代器,对所有相交结果计算union,即求并集,最后计算该图层一要素与并集的差集,即得到擦除结果
输出结果: .. image:: uploads/0fac934dcf9634ccb373845528e4db63/图片13.png