turf.point-on-line

Takes a Point and a LineString and calculates the closest Point on the LineString.

Parameters

Name Type Description
line Feature.<LineString>

line to snap to

point Feature.<Point>

point to snap from

Returns Feature.<Point>

closest point on the line to point

Example

var line = {
  "type": "Feature",
  "properties": {},
  "geometry": {
    "type": "LineString",
    "coordinates": [
      [-77.031669, 38.878605],
      [-77.029609, 38.881946],
      [-77.020339, 38.884084],
      [-77.025661, 38.885821],
      [-77.021884, 38.889563],
      [-77.019824, 38.892368]
    ]
  }
};
var pt = {
  "type": "Feature",
  "properties": {},
  "geometry": {
    "type": "Point",
    "coordinates": [-77.037076, 38.884017]
  }
};

var snapped = turf.pointOnLine(line, pt);
snapped.properties['marker-color'] = '#00f'

var result = {
  "type": "FeatureCollection",
  "features": [line, pt, snapped]
};

//=result
Library released under MIT license. © 2014 Morgan Herlocker.