我一直在ArcGIS笔记本上工作,以计算多边形内的点。一个简化的例子如下:
在这张图中,多边形和红点是ArcGIS Online中托管特征层中的特征。蓝点来自ArcGIS Enterprise / ArcGIS Server功能服务。
当我使用承载的特征层对与多边形相交的点执行交集查询时,我得到了正确的结果(12)。为了做到这一点,我使用以下方法:
Feature_geom = polygon.features[0]。Geometry feature_sr = polygon.features[0]。geometry['spatialReference']['wkid'] polygon_filter = intersects(feature_geom, feature_sr) svc_query = point_lyr.query(geometry_filter=polygon_filter) print(len(svc_query))
然而,当我执行相同的查询从ArcGIS企业/ArcGIS服务器在同一多边形内获得点的数量,我得到一个不正确的结果(10)。为了做到这一点,我使用以下方法:
#连接到ArcGIS企业网gis2 = GIS(url=gis2_URL,用户名=gis2_username,密码=gis2_password) #特征层water_network_url = "https:///FeatureServer" water_network_featurelayer = featurelercollection (water_network_url, GIS =gis2) water_network_layers = water_network_featurelayer. #查询feature_geom = polygon.features[0]。Geometry feature_sr = polygon.features[0]。geometry['spatialReference']['wkid'] polygon_filter = intersects(feature_geom, feature_sr) svc_query2 = service_connection.query(geometry_filter=polygon_filter) print(len(svc_query2))
是否有任何问题,我如何引用ArcGIS企业层,会导致这个问题?或者是否有其他因素可能导致错误的结果?