Select to view content in your preferred language

Snap points automaticallly to line

10-31-2014 01:42 PM
New Contributor II

I have two feature classes. One with routes (lines) and one with busstops (points) Is there a way to snap the points automatically to the lines in ArcGIS 10.2?

Tags (1)
0 Kudos
4 Replies
MVP Notable Contributor

You've not given us much information, so I will make an assumption that because you mention "routes" you are referring to linear referencing? You would be able to snap you bus stops using this tool.

0 Kudos
New Contributor II

I made an image to visualise the situation. Instead of dragging each point individual on the line I like ArcGIS to move automatically on the line through snapping.


0 Kudos
MVP Honored Contributor

Linear Referencing is still your best option.  With the Locate Features Along Route tool you get several benefits.  It creates a measure on your route and a side distance field that is positive or negative, depending on which side of the line the point falls on.  As a result, point events can simultaneously be on the line and offset from the line using the same event table with just one layer setting change (using a side offset field or not).  They also tell you the relative position of the point on the line, so that you can sort your points by driving order, which you cannot do with any other tool.  They also have a simple option for getting the normal angle of the point to the line so you can rotate your point to exact 90 degree angles relative to your line.  With point events I get points that understand their relationship with the line, and I can easily convert them in seconds to standard points just by exporting them if I don't want them to adjust with changes to the line anymore.

I can set points up relative to fixed known positions just by adding or subtracting distances, so someone can give me a plain old table of cross streets with offset distances and directions, and I can convert it to point events on my line (that takes some other set up of an intersection layer with measures).  Here is an example of how I use point events to position and rotate signs and marking all based on descriptions of relative offsets from intersections and driving direction facing (if I had not applied the side offset option and the rotation option in my event layer, these sign markers would all fall directly on the line and be oriented with their tops to the north):


So derive LR routes from your lines using the Create Route tool, then locate your points on your routes using the Locate Features Along Routes tool and with one table it will be possible to show the points on the line or with a side offset from the line with markers rotated to fit your line and oriented based or driving direction (with a calculation that adjusts the normal angle to the line based on whether a side offset is positive or negative).

One other benefit is that it is possible to easily evaluate point events based on distances from other objects on the road without the use of buffers (that mess with other roads).  So if I want to know all trees in my median within a certain distance of an intersection I can get that selection by creating a line that adds and subtracts that distance from the measure of the intersection on that route.  That can all be managed from a line event table, that only differs from a point event table by having a second measure.  I can also chain point events together to form line segments between every adjacent pair of points that will follow my road if I want.

No matter what technique you use, you will have to eliminate false snaps or locations, since points that are within the snapping tolerance near intersections will snap to both lines or randomly choose the wrong line 50% of the time.  I always locate all point positions on all lines in my snapping tolerance and then use an attribute of the points to determine which road it should have associated itself to and eliminate the false snaps from the selection.

Occasional Contributor III

you could also look if the Snap (Editing) gp tool get you what you need: ArcGIS Help 10.1