Thank you for the suggestion.<p>At first glance, it does not seem to provide an object for dealing with a finite set of points.  Using it would require first to transform the track into a continuous line, via interpolate(), then project() each waypoint to find the nearest point on that line.  Issue is that this will not give me one of the original points of the track, which is what I needed.<p>But I may be wrong.