Bearing and BearingTol fields ignored when adding locations to a network

629
10
05-18-2022 08:27 AM
nelsmickaelson
New Contributor III

I have GPS points from vehicles that I want to move to the correct location. The use of Bearing and BearingTol fields looked promising as an option. I have added these fields with the correct data type as described in the documentation. Unfortunately I cant get it to work. It seems like these fields are ignored. Anyone have any success using this technique? 

https://pro.arcgis.com/en/pro-app/2.8/help/analysis/networks/bearing-and-bearing-tolerance.htm

 

0 Kudos
10 Replies
JaySandhu
Esri Regular Contributor

Bearing and BearingTol field values are used when the points are initially used by Add Locations to load them as Stops. The value units for both are in degrees. What values are you putting into them? And what happens when you load these points? Do you get any warning message about feature not being located?

Jay Sandhu

0 Kudos
nelsmickaelson
New Contributor III
Hi Jay,
The values are in degrees (0-360), the field names are correct (Bearing, BearingTol), and the field types (Long) are correct. I was adding them as stops in a route scenario. None of them were locating. My next step is to test using a newly built network. I will report back if I have success.

Thank you
0 Kudos
JaySandhu
Esri Regular Contributor

If you have already loaded the Stops and then are adding the Bearing/BearingTol fields and adding values, they will not be used. The values should be present when Add Locations is called so that when the location is happening the fields are getting used.

You can add these fields to the Stops Analysis layer using the GP tool Add Field to Analysis Layers

Add Field To Analysis Layer (Network Analyst)—ArcGIS Pro | Documentation

If these fields are present then when Add Locations is called, the values of the Bearing and BearingTol are also copied over to the Stops field. Now if something happens to cause a network re-build, the locations are computed again at solve time and these fields will continued to be used.

Jay Sandhu

0 Kudos
nelsmickaelson
New Contributor III
I'm using Pro and the prebuilt Network Analysis scenarios (Menu) which stubs out the layers for the route analysis when you select it. I'm then using the import stops tool that is enabled for the route analysis to import the feature layer points which already have the Bearing and BearingTol fields. I'm not adding them after. According to ESRI's documentation if they exist in the layer your adding as stops then the fields will automatically be used. I will keep experimenting. Perhaps use the geoprocessing tool instead to add locations to the stops layer, though would expect the same results. Thanks.
0 Kudos
JaySandhu
Esri Regular Contributor

The import stops tool is fine. Internally it is calling Add Locations. So the bearing/bearingtol fields are being used when you import. 

If, before importing, you add the same fields to the Stops sub layer then you will see the values copied over as well after import.

When you import, the X, Y location of the stops will be at the same location of where the input points are. But the edge they snap too will be different IF the bearing/bearingtol values have an impact.

Jay Sandhu

0 Kudos
nelsmickaelson
New Contributor III
I made some progress. Thank you for the suggestion of adding the fields to the stops layer, which lets me see if the bearing info is being used when the points are added to stops.

I think I may be confused as to what is possible with the tool. In the graphic below the numbered points are the ones it added as stops. The green points are what I added with the bearing as a label. I had expected the ones with a bearing near 90 (+ or - 30) would have been moved to the right side of the road. But the only one that behaved as expected is the point with a bearing of 102 where the point was already on the other side of the road. All the points that were on the wrong side of the road remained on that side despite the bearing. The bearing value written to the stops table appears to have been used. The examples I saw where this was used indicated that it would move the point to the correct side regardless of its original position in relationship to the road network.
See example in this link.<>

[cid:image001.png@01D86C35.95D9B910]
0 Kudos
JaySandhu
Esri Regular Contributor

When you load the point locations into a route layer as Stops, the x,y location of these is the same as the input. They edge they snap to can be based on the location rules such as bearing/bearing tol and restricted road elements, etc. You cannot "see" where they located on the map. However if you open the Stops attribute table and look at the SourceOID and Position, that will tell you the edge and position along the digitized edge (percentage between 0 and 1) that point located. When you solve the route it will visit the stops where they were located.

Jay                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       

0 Kudos
nelsmickaelson
New Contributor III
Thanks for your help in trying to understand this. I'm using the snap to network option which adds the stop in a new location
>From the documentation. I think the offset might be what's throwing me off. "The offset is in relation to the original point location; that is, if the original point was on the left side, its new location will be offset to the left. If it was originally on the right side, its new location will be offset to the right."
Documentation
Checked-The geometries of the network locations will be snapped to their network locations.
Unchecked-The geometries of the network locations will be based on the geometries of the input features. This is the default.
Snap Offset
When snapping a point to the network, you can apply an offset distance. An offset distance of zero means the point will be coincident with the network feature (typically a line). To offset the point from the network feature, enter an offset distance. The offset is in relation to the original point location; that is, if the original point was on the left side, its new location will be offset to the left. If it was originally on the right side, its new location will be offset to the right.
The default is 5 meters. However, this parameter is ignored if Snap to Network is unchecked.

0 Kudos
JaySandhu
Esri Regular Contributor

Looks like the attached graphic did not get added.

Jay Sandhu

0 Kudos