using GeoJSON.Net.Geometry; using System; using System.Collections.Generic; using System.Text; using TurfCS; using System.Linq; namespace OnlineUserPool.Unility { public class TurfHelper { private LineString _line; /// /// /// /// 坐标(lat,lon) public TurfHelper(IEnumerable points) { //var list = new GeoJSON.Net.Geometry.GeographicPosition(); var list = points.Select(p => new GeoJSON.Net.Geometry.GeographicPosition(p[0], p[1])); _line = new LineString(list); } /// /// /// /// km public GeographicPosition Along(double distance) { var pt1 = Turf.Along(_line, distance); return ((GeographicPosition)((GeoJSON.Net.Geometry.Point)pt1.Geometry).Coordinates); //new LineString() //new GeoJSON.Net.Geometry.Point(new GeoJSON.Net.Geometry.GeographicPosition()) //pt1.BoundingBoxes } } }