Available in real-time and big data analytics.
The Snap to Network tool
updates point geometry to align with a polyline network. The distance to search from point features must be specified. The tool aligns, or snaps, point features to network elements within that distance.
The Track ID and Start Time key fields must be specified on the input dataset for the tool to function. The Track ID and the Start Time date field are required, as the track-based sequential and directional nature of observations are used to snap the features to the correct network line feature.
The Snap to Network tool has two input datasets. The target dataset is the point features dataset of observations that have both Track ID and Start Time key fields. The join dataset is a polyline dataset representing a network. This polyline dataset has three required fields to function with the Snap to Network tool. The Usage notes section below provides more details.
Examples
The following are example use cases for the tool:
- A transportation organization is monitoring vehicles equipped with automatic vehicle location (AVL) tracking devices. The Snap to Network tool can be used to snap observations to a road network to improve the accuracy of the AVL GPS observations.
- A city is monitoring snowplow operations and wants to better understand vehicle movement. The Snap to Network tool can be used to snap observations to the city's road network. The LineID attribute field can be used in an attribute join to enrich vehicle observations with the road segment attribute information for the road the vehicle is traveling along.
Usage notes
Keep the following in mind when working with the tool:
- The schema of the layer for the polyline features network must contain proper values in the following three fields:
- OBJECTID or FID
- F_AUTOMOBI or F_AUTOMOBILES
- T_AUTOMOBI or T_AUTOMOBILES
- The OBJECTID or FID field provided must contain a unique integer (numeric) value for each polyline feature. If the OBJECTID or FID field is provided as a float, it is converted to an integer.
- The F_AUTOMOBI / F_AUTOMOBILES and T_AUTOMOBI / T_AUTOMOBILES fields indicate the driving direction relative to the digitizing direction of the polyline features. The F_AUTOMOBI / F_AUTOMOBILES and T_AUTOMOBI / T_AUTOMOBILES fields should be string fields with a value of either Y or N. If you have fields with these values but with different field names, you can use the Calculate Fields or Map Fields tool to change or generate a copy of these fields with the required names.
- If the driving direction is against the digitizing direction, F_AUTOMOBI / F_AUTOMOBILES = Y and T_AUTOMOBI / T_AUTOMOBILES = N.
- If the driving direction is the same as the digitizing direction, F_AUTOMOBI / F_AUTOMOBILES= N and T_AUTOMOBI / T_AUTOMOBILES = Y.
- If the street segment is a two-way street, F_AUTOMOBI / F_AUTOMOBILES = N and T_AUTOMOBI / T_AUTOMOBILES = N.
- The Split Distance, Split Duration, and Heading parameters are optional.
- Target features missing geometry, Track ID values, or start time values are discarded from the snapped features.
- Network features missing geometry are not considered.
- Point features don't snap to network polyline segments with a value of Y for both F_AUTOMOBI / F_AUTOMOBILES and T_AUTOMOBI / T_AUTOMOBILES fields because they are treated as a closed segment.
Parameters
The following are the parameters for the tool:
| Parameter | Description | Data type |
|---|---|---|
Input Layer | The point features to snap to the network based on user-defined parameter values. This dataset must have Track ID and Start Time key fields defined. | Point Features |
Network Layer | The polyline features representing a network to which the input point features are snapped. The layer must have the following three fields:
The F_AUTOMOBI / F_AUTOMOBILES and T_AUTOMOBI / T_AUTOMOBILES fields indicate the driving direction relative to the digitizing direction of the polyline features. The F_AUTOMOBI and T_AUTOMOBILES fields should be string fields with a value of either Y or N. If you have fields with these values but with different names, you can use the Calculate Fields or Map Fields tool to change or generate a copy of these fields with the required names.
| Polyline Features |
Search Distance | The distance to search from each point feature for network features that the point features can snap to. | String |
Track ID Fields | The fields that uniquely identify observations. If the Track ID key field is identified in the input dataset, it is automatically picked up. If a Track ID field has not been specified for the input dataset, this parameter must be used to identify the Track ID fields that uniquely identify observations. | String |
Split Duration (Optional) | The amount of time between observations that, if exceeded, breaks the processing out to a separate track. | String |
Split Distance (Optional) | The distance between observations that, if exceeded, breaks the processing out to a separate track. | String |
Heading (Optional) | If the input features have a heading field with values, the field can be specified in this parameter to improve how accurate the points snap to the network. The field specified for the heading must be a numeric field. | String |
Join Fields | Choose fields from the network schema to add to the target features. For example, if a join field of STREET_NAME is chosen, the output schema has the field STREET_NAME added. If a point is snapped to a street named Main Street, the value for this field is also Main Street. | String |
Feature handling - Retain only snapped features | Used to specify how the Snap to Network tool should handle features that are not snapped to a network feature. You can retain features that snap to the network, or all features including those that don't snap to the network. If a feature is not snapped successfully, the original geometry is retained and fields that the Snap to Network tool should have populated contain a null value. | Boolean |
Output layer
The output layer contains the following attributes appended to the original attributes for each feature. Any join fields specified are also added to the output layer.
| Field name | Description | Field type |
|---|---|---|
OrigX | The original x-coordinate of the point. | Float64 |
OrigY | The original y-coordinate of the point. | Float64 |
LineID | The OBJECTID or FID of the network polyline feature that the point feature was snapped to. | Float64 |
FractionAlong | The percentage fraction along this polyline on which the point feature was snapped. | Float64 |
DistanceToLine | The distance from the original feature to the point along the polyline where it was snapped. | Float64 |
SnapScore | The relative estimated accuracy of the snap operation. | Float64 |
HeadingOriginal | The heading as calculated by the original position of the point (and its immediate prior point). | Float64 |
HeadingSnapped | The heading as calculated by the snapped position of the point (and its immediate prior snapped point). | Float64 |