I need to transpose points on a line, how do I do that? Which tools should I use?

More precisely, my problem is this. I have points taken with the gps (then converted into shapefiles) that are on a road or a meadow some 10 metres from a river, and I want to move these points from the road to the nearest point on the river.

What I try is to first divide the river line into points, with an equal distance of 0.5 m, by using Point Along Line tool. And my next step was using the Near tool to transpose the points on the roads to the new points created on the river line, but is not giving me the result I want. Where am I going wrong?

So more specifically my points represent the beavers (red dots), which I monitored during several nights from a road or a meadow. And the blue line represents the river where the beavers actually are. Now I need to transpose the points to the river. The results I got in the picture using the Near tool, where the yellow points represent the red points translated to the river.

Now my question is, why the green circled points aren't where I drew the green point (that should be the closest points-river distance) but are instead where I drew the orange line?

How do I solve this problem?

enter image description here

  • 1
    Are you asking about the nearest point by distance, or the nearest point perpendicular to the road?
    – Erik
    Feb 12 at 12:27
  • I'm using ArcGIS pro. I 'm asking about nearest point by distance :) Feb 12 at 12:50
  • They are the same things unless nearest point on the line is one of lines end points
    – FelixIP
    Feb 13 at 0:57

2 Answers 2


I have a point layer named points and a line layer named rivers.

  1. Near:

Calculates distance and additional proximity information between the input features and the closest feature in another layer or feature class.

Near will add x and y coordinate columns to the point layer with the coordinates of the nearest point on the nearest line:

enter image description here

  1. Make XY Event Layer.

Creates a point feature layer based on x- and y-coordinates defined in a table. If the source table contains z-coordinates (elevation values), that field can also be specified in the creation of the event layer. The layer created by this tool is temporary.

Then right-click the layer, Data - Export feature to save the layer to file.

enter image description here

  • Yes that's exactly what I tried already, I managed to move my points on the line but it looks like it's not moving my points to the closest place on the line. I have tried several times with the Near tool, and it always gives the same result. I don't know where I go wrong to if I should use another tool. Feb 13 at 11:15
  • If you feel like the the behavior isn't what you expect, you could densify vertices on the lines then convert them to point, then run your near. That should eliminate some variables. Also make sure your data is in a projected CRS.
    – Rex
    Feb 16 at 17:01

It sounds like a route problem. This is how DOTs and transit agencies track assets near their lines. The points don't need to be moved. They can be treated as 'route events' along your existing line, which you can copy/convert to a new Route feature. Route events can track time (such as average bus driving times) or distances along a route.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.