Linear referencing for river miles

4094
5
07-25-2013 11:38 AM
DB1
by
New Contributor
I want to calculate river miles. There are point locations that I need to calculate their mile posting as well. I have a Line Feature of a river centerline along with point locations. The easy way to achieve this is the measure tool but after reading about linear referencing tools to near tool I tried it all but with no progress.  I tried calibrate route tool and used that and Locate features along route tool but that table was empty. If you are going ot respond answer in layman's terms and don't be too technical. Just lay it out in steps.
0 Kudos
5 Replies
RichardFairhurst
MVP Honored Contributor
I want to calculate river miles. There are point locations that I need to calculate their mile posting as well. I have a Line Feature of a river centerline along with point locations. The easy way to achieve this is the measure tool but after reading about linear referencing tools to near tool I tried it all but with no progress.  I tried calibrate route tool and used that and Locate features along route tool but that table was empty. If you are going ot respond answer in layman's terms and don't be too technical. Just lay it out in steps.


What dis you use for the tolerance for the Locate Features Along Route tool?  If the points do not touch the lines, they need to be within the tolerance distance to connect to the route.  Use the measure tool to get a rough distance for tolerance setting.  Do the Routes and points have the same spatial reference projection (check the properties of the layers and look at the Source tab for the spatial data)?

A picture of your routes and points would really help us figure our why you are not getting any outputs.  Also, I assume the river centerlines or a derivative Route network generated by the Create Routes tool have M values to be a used by the Locate Features Along Routes tool.  How did you get Calibration points and how did you assign measures to your river centerlines or routes?
0 Kudos
MichaelStead
Regular Contributor
Did you actually create a route or is you streamline data just M aware? I don't live in the states, but I can't imagine a dataset coming with M values in miles. Calibrate routes would need milemarkers as inputs. Not sure you accomplished what you hoped to.
0 Kudos
AmyKlug
Regular Contributor
You can calculate the length of the line in miles by opening the attribute table and adding a field "MILES" and then right click the miles field and click "calculate geometry" select "miles" as units and then it will populate the length for you. Then you can create a route using "length" as your measure source. (I don't think you will need a from and to field but if you get an error, just add a field "FROMMILES" or something like that and use the field calculator to populate it with 0's (your TO field is your "MILES" field))

There might be a tool that can do this for you but manually you can use the  "identify route location" on the Linear Referencing toolbar to get the milepost value at each point and use calculate field (or a model builder tool with input parameters) to add it to your milepost field in your point layer.

NOTE: If your river layer contains drastic changed in elevation you will need to find the geodesic distance, I do this by overlaying my lines on a DEM but there might be an easier way.
0 Kudos
RichardFairhurst
MVP Honored Contributor
You can calculate the length of the line in miles by opening the attribute table and adding a field "MILES" and then right click the miles field and click "calculate geometry" select "miles" as units and then it will populate the length for you. Then you can create a route using "length" as your measure source. (I don't think you will need a from and to field but if you get an error, just add a field "FROMMILES" or something like that and use the field calculator to populate it with 0's (your TO field is your "MILES" field))

There might be a tool that can do this for you but manually you can use the  "identify route location" on the Linear Referencing toolbar to get the milepost value at each point and use calculate field (or a model builder tool with input parameters) to add it to your milepost field in your point layer.

NOTE: If your river layer contains drastic changed in elevation you will need to find the geodesic distance, I do this by overlaying my lines on a DEM but there might be an easier way.


The Create Route tool can create routes in the method mentioned above.  Your rivers must be correctly oriented with flow to work correctly using that method and you will have some decisions to make at branches, unless each branch constitutes its own route.  Fully branched river networks will create issues because they are non-monotonic (measures do not increase with each successive vertex of the route).  In a branching route network for a branch you would typically add the start of flow measure obtained from the mainline river at the upstream connection as the From measure and the To measure would normally be the branch distance plus that initial measure value.
0 Kudos
AmyKlug
Regular Contributor
Also, your river flow direction is determined by the digitizing direction. You can check this by using an arrow line symbol with your arrow pointing like this -> . You can flip the direction of your line by going into an editing session, double clicking on the line and right clicking (the vertices will be highlighted) and select "flip". Then you can re-create your route.
0 Kudos