arcgis js的拓扑关系,在处理复杂逻辑和分析时,可以通过拓扑关系,减小客户端的工作量

拓扑关系:

1、overlaps 重叠

这里的重叠跟平时我们理解的不太一样,这里的重叠,必须是A与B有交集,且A与B的交集不能和A,B一样,其实就是我们平时理解的相交

2、crosses 穿过

这里的拓扑关系比较特殊,crosses在使用时,不能在同纬度使用(如:不能在线与线之间,和点与点之间,也不能在面与面之间使用),但可以在不同的维度使用,如:点和线,线和面等

3、contains 包含

必须完全在范围之内的

4、insertect 相交

这里的相交就容易理解了,只要满足上面任意一种情况,都能成为insertect

这几种拓扑关系,在进行复杂的分析时,尤为关键;

举例:

在对某市进行重叠监测时,由于arcgis js 调用rest时,rest每个服务默认只有64M的返回数据容量,所以,在返回结果比较多(上万),同时还需要对图形进行交叉监测时,在进行query查询时,无法正确返回结果;

此时,可以先通过拓扑关系,进行筛选,对不需要进行交叉的,如:完全包含的,可以直接进行计算。

对于需要交叉裁剪的(如:相交的,这里的相交是,overlaps,而不是insertect),再进行逻辑分析

这样,会大大减少分析的工作量,分析的速度也会有明显的提高

05-25 18:57