场景:我最近做了一件事情,首先我有一个点矢量文件(Point),其中所有的点都是成对编号的,字段名为“编号”,内容依次为1 1 2 2 3 3 4 4 5 5……这样 所有的点对都做好了“配对”。另外,我还有一个多边形矢量文件(Polygon),内部包含了N多个多边形。理论上来说,所有的点对都应该落入相邻多边形中才满足我的应用需求,然鹅如何实现的这样的判定呢?我目前只有下面这个方法:
方法原理:将所有的点对连成线,用线穿过的面个数来判断点落入的多边形是相邻还是相离。如果两点之间的连线与两个多边形相交(Intersect),则说明两点分别落入了两多边形内。如果两点之间的连线与多个多边形或单个多边形相交,则说明这两点落入了相离多边形或同一个多边形内部。
操作方法:
(1)Point to Line
Data MManagment下找Point to Line工具,按“编号”字段生成线。
(2)Spatial join
选中线文件和面文件,空间关系选Intersect,生成空间连接结果。在生成的结果文件里会有一个字段写着Join_*,字段值里就写着每条线与几个多边形Intersect了。