- URL:
- https://<geoanalytics-url>/GroupByProximity
- Methods:
GET
- Version Introduced:
- 10.9.1
Description
The Group
tool groups features that are within spatial or spatiotemporal proximity of each other.
The following are examples:
- Which roads are connected?
- Where do I have gaps in my data?
- Which GPS points are within 1 mile of each other within 10 minutes?
The output result is a copy of the input with a new field named group
. The group
field represents the grouping of features. Features with the same group
value are in the same group. The group numbers represent membership in a particular group and don't imply value. The group numbers may not be sequential or the same number in repeat use of the tool.
Request parameters
Parameter | Description |
---|---|
| The point, line, or polygon features that will be grouped. Syntax: As described in Feature input, this parameter can be one of the following:
REST examples
|
| The type of relationship to group by. For more information on the values for this parameter, see the Spatial relationships section below. Values: REST examples
|
| A double value used for the search distance to determine if features are near one another. This is only applied if Analysis using a Near spatial relationship requires that the REST examples
|
| The linear unit to be used with the distance value specified in Values: REST examples
|
| The type of temporal relationship to group by. For more information on the values for this parameter, see the Temporal relationships section below. Values: REST examples
|
| A double value used for the temporal search distance to determine if features are near one another. This is only applied if REST examples
|
| The temporal unit to be used with the distance value specified in Values: REST examples
|
| This parameter is available at ArcGIS Enterprise 11.0 or later. An attribute relationship to group features by. The attribute expression is a symmetric operation. The tool takes an input layer that's compared against itself to find groups. Because of this, the input layer is denoted as both a and b, and all expressions should include both a and b. REST examples
|
|
The task will create a feature service of the results. You define the name of the service. REST examples
|
|
The
Syntax:
|
|
The response format. The default response format is Values: |
Spatial relationships
The tables below describe the overlay relationships supported by the spatial
parameter.
Spatial Relationship | Description |
---|---|
| Computes a geometric intersection of the input layers. Features or portions of features that overlap are grouped. This is the default.
|
| A feature touches another feature if they have an intersecting vertex, but the features do not overlap.
|
| Conceptually, these operators buffer the features using the specified distance and return all the features that intersect the join features with the buffer applied. The distance calculation uses a planar distance.
|
| Conceptually, these operators buffer the features using the specified distance and return all the features that intersect the join features with the buffer applied. The distance calculation uses a geodesic distance.
|
Temporal relationships
The table below describes the temporal relationships supported by the temporal
parameter.
Temporal relationship | Description |
---|---|
| When any part of a feature's time overlaps another.
|
| A feature is near another if the time is within a given temporal distance of the other feature.
|
Example usage
The following is a sample request URL for Group
:
https://machine.domain.com/webadaptor/rest/services/System/GeoAnalyticsTools/GPServer/GroupByProximity/submitJob?&inputLayer={"url":"https://webadaptor.domain.com/server/rest/services/Hurricane/hurricaneTrack/0"}&spatialRelationship=Intersects&outputName=myOutput&context={"extent":{"xmin":-122.68,"ymin":45.53,"xmax":-122.45,"ymax":45.6,"spatialReference":{"wkid":4326}}}&f=json
Response
When you submit a request, the service assigns a unique job ID for the transaction.
Syntax:
{
"jobId": "<unique job identifier>",
"jobStatus": "<job status>"
}
After the initial request is submitted, you can use job
to periodically check the status of the job and messages as described in Check job status. Once the job has successfully completed, use job
to retrieve the results. To track the status, you can make a request of the following form:
https://<analysis url>/GroupByProximity/jobs/<jobId>
Access results
When the status of the job request is esri
, you can access the results of the analysis by making a request of the following form:
https://<analysis-url>/GroupByProximity/jobs/<jobId>/results/output?token=<your token>&f=json
Response | Description |
---|---|
| The features that are the result of the grouping with a new field called
The result has properties for parameter name, data type, and value. The contents of
See Feature output for more information about how the result layer is accessed. |