I am a GIS student working on a project and am trying to determine exact x-y coordinates associated with numerous animal-vehicle collisions along a major highway. I have known x-y coordinates of several landmarks and distances that animal-vehicle collisions occurred from the landmarks (for example; 500m east of Arnold mine site, 300m west of highway 5 and 272 junction, etc..). For example if Arnold Mine site is located at UTM coordinates 50000m easting and 10000m northing, I cannot simply add 500m, for 50500m easting and 10000m northing because the location occurs along a highway which is not perfectly horizontal and thus will have changing y coordinates as well. I was wondering if anybody can help with a method which may allow me to accurately place these locations at known distances from landmarks along a highway.
Thanks in advance
Solved! Go to Solution.
This can be solved with linear referencing (LR) to get exact positions on a road relative to an intersection or any point feature. If you create LR routes from your road network and create intersection points with the cross street name pairs or landmark names you can use them to get the relative measure of any intersection location and offset up or down the road relative to it.
You can use the Locate Features Along Routes to create an event table of all of of your intersection points with all of the routes IDs and measures that define their LR position. In your event table of collisions add 3 fields for the Route ID and measure of the intersection and measure of the collision. Once you look up the intersection record in the intersection event table using the cross street names, copy the Route ID and Intersection measure into the fields you added to the collision table and then calculate the collision measure by adding or subtracting 500 from the measure in the intersection measure field. Assuming your routes are based on the road length and are in meters, this will create a measure that will move your collision 500 m down (add) or up (subtract) the road relative to the intersection based on the route orientation. Once you have configured your collision table into an LR Route Event layer, the collision will appear where it belongs on your road.
In many ways, LR measures are equivalent to applying stationing to a road so that you can define any position on the road just by giving the station value of each position.
Check out my script for creating intersection points from a road network.
What type of software are you going to be using to perform the analysis? Are the sites that you have x/y's for located along routes? If so do you have a measured route layer?
ArcMap software, I am a student so I have access to multiple extensions. The sites that I have x/y's for are all located along one highway feature. I was able to produce a route with linear referencing but am unsure how to determine locations along the highway route at known distances from point features
My x/y's are UTM coordinates in excel but will create a shapefile. Right now I am using one sample point and the highway to try and find a solution.
I should clarify that the point features that I have are the landmarks (example: Arnold mine site) and I am attempting to create new points a certain distance from the landmark (example: 500m east of Arnold mine site) along the highway.
I am experimenting with the "Locate Features Along routes" tool but so far it is giving me distances from the starting of the highway, whereas I want to create new points relative to the start of each landmark along the highway.
Thanks for the replies, it is very much appreciated
If the distances are approximate, one semi-manual workflow that could get you there absent a nice linear referencing solution is this:
Caveats - this will do an Euclidean distance - i.e. "as the crow flies". If your roads wind, this won't work that well.
- if you have many road segments, it may be confusing to find the appropriate end.
Chris Donohue, GISP
If you have already created you linear referencing system. One way to approach the problem, how we do it in house, is to programmaticly query your LRS for the route referenced by your point, with the route filtered to the route in question snap the point to the route compute its measure (Distance along the route) and its offset and direction offset.
If programming is not your forte, (I don't believe python with arcpy can do this, need to use .net), you may want to try using the tool ArcToolbox/Linear Referencing Tools/Locate Features Along Routes this will give you the location along the closets route to the point (it does not use any filtering as described above).
Hope this gives you some ideas ...
After some addition thought ... you could combine within a model ( Read point route reference --->Filter LRS for that Route (memory layer/dataset)---> Run the ArcToolbox/Linear Referencing Tool.... with the inputs being the memory layer/dataset) Models are not my strong point.....