The Filters
modules contain functions to filter query results by a spatial relationship with another
Geometry
object. The Filters
module is used when querying feature layers and imagery
layers.
intersects
- arcgis.geometry.filters.intersects(geometry, sr=None)
The
intersects
method filters results whose geometry intersects with the specifiedGeometry
object.Keys
Description
geometry
A single
Geometry
of any type. The structure of geometry is the same as the structure of the JSON geometry objects returned by the ArcGIS REST API. The use of simple syntax is not supported.spatial_ref
A
SpatialReference
of the input geometries Well-Known ID or JSON object- Returns:
A dictionary
USAGE EXAMPLE: Select the gas lines that intersect a specific freeway feature, United States Interstate 15. from arcgis.geometry import Geometry from arcgis.geometry.filters import intersects # get a feature layer item from the gis >>> flyr_item = gis.content.search("Freeways*", "Feature Layer")[0] >>> freeway_lyr = flyr_item.layers[0] # assign a variable to the spatial reference >>> freeway_sr = freeway_lyr.properties.extent["spatialReference"] # select a filter feature to construct its geometry >>> rte15_fset = freeway_lyr.query(where="ROUTE_NUM = 'I15'") >>> rte15_geom_dict = rte15_fset.features[0].geometry >>> rte15_geom_dict['spatialReference'] = freeway_sr >>> rte15_geom = Geometry(rte15_geom_dict) # construct a geometry filter using the filter geometry >>> flyr_filter = intersects(rte15_geom, sr=freeway_sr) # query a feature layer for features that meet filter criteria >>> gas_lines_I15 = gas_line_lyr.query(geometry_filter=flyr_filter)
contains
- arcgis.geometry.filters.contains(geometry, sr=None)
The
contains
method returns a feature if its shape is wholly contained within the searchGeometry
object.Note
Valid for all shape type combinations.
Keys
Description
geometry
A single
Geometry
of any type. The structure of geometry is the same as the structure of the JSON geometry objects returned by the ArcGIS REST API. The use of simple syntax is not supported.spatial_ref
A
SpatialReference
of the input geometries Well-Known ID or JSON object- Returns:
A dictionary
crosses
- arcgis.geometry.filters.crosses(geometry, sr=None)
The
crosses
method retrieves a feature if the intersection of the interiors of the two shapes is not empty and has a lower dimension than the maximum dimension of the two shapes. Two lines that share an endpoint in common do not cross.Note
Valid for Line/Line, Line/Area,
MultiPoint
/Area, andMultiPoint
/Line shape type combinations.Keys
Description
geometry
A single
Geometry
of any type. The structure of geometry is the same as the structure of the JSON geometry objects returned by the ArcGIS REST API. The use of simple syntax is not supported.spatial_ref
A
SpatialReference
of the input geometries Well-Known ID or JSON object- Returns:
A dictionary
envelope_intersects
- arcgis.geometry.filters.envelope_intersects(geometry, sr=None)
The
envelope_intersects
retrieves features if theEnvelope
of the two shapes intersects.Keys
Description
geometry
A single
Geometry
of any type. The structure of geometry is the same as the structure of the JSON geometry objects returned by the ArcGIS REST API. The use of simple syntax is not supported.spatial_ref
A
SpatialReference
of the input geometries Well-Known ID or JSON object- Returns:
A dictionary
index_intersects
- arcgis.geometry.filters.index_intersects(geometry, sr=None)
The
index_intersects
method retrieves a feature if theEnvelope
of the queryGeometry
intersects the index entry for the target geometry.Keys
Description
geometry
A single
Geometry
of any type. The structure of geometry is the same as the structure of the JSON geometry objects returned by the ArcGIS REST API. The use of simple syntax is not supported.spatial_ref
A
SpatialReference
of the input geometries Well-Known ID or JSON object- Returns:
A dictionary
overlaps
- arcgis.geometry.filters.overlaps(geometry, sr=None)
The
overlaps
method retrieves a feature if the intersection of the two shapes results in an object of the same dimension, but different from both of the shapes.Note
This applies to Area/Area, Line/Line, and Multi-point/Multi-point shape type combinations.
Keys
Description
geometry
A single
Geometry
of any type. The structure of geometry is the same as the structure of the JSON geometry objects returned by the ArcGIS REST API. The use of simple syntax is not supported.spatial_ref
A
SpatialReference
of the input geometries Well-Known ID or JSON object- Returns:
A dictionary
touches
- arcgis.geometry.filters.touches(geometry, sr=None)
The
touches
method retrieves a feature if the two shapes share a common boundary. However, the intersection of the interiors of the two shapes must be empty.Note
In the Point/Line case, the point may touch an endpoint only of the line. Applies to all combinations except Point/Point.
Keys
Description
geometry
A single
Geometry
of any type. The structure of geometry is the same as the structure of the JSON geometry objects returned by the ArcGIS REST API. The use of simple syntax is not supported.spatial_ref
A
SpatialReference
of the input geometries Well-Known ID or JSON object- Returns:
A dictionary
within
- arcgis.geometry.filters.within(geometry, sr=None)
The
within
method retrieves a feature if its shape wholly contains the searchGeometry
.Note
Valid for all shape type combinations.
Keys
Description
geometry
A single
Geometry
of any type. The structure of geometry is the same as the structure of the JSON geometry objects returned by the ArcGIS REST API. The use of simple syntax is not supported.spatial_ref
A
SpatialReference
of the input geometries Well-Known ID or JSON object- Returns:
A dictionary