string GetGeoJsonText(FeatureCollection feature) { var writer = new NetTopologySuite.IO.GeoJsonWriter(); string geoJson = writer.Write(feature); return(geoJson); }
private Geometry MapGeometry(NetTopologySuite.Geometries.Geometry geometry) { var writer = new NetTopologySuite.IO.GeoJsonWriter(); var geometryJson = writer.Write(geometry); var geometryObj = JObject.Parse(geometryJson); var coordinatesJson = geometryObj["coordinates"].ToString(Formatting.None); var typeJson = geometryObj["type"].ToString(Formatting.None).Replace("\"", ""); return(new Geometry(typeJson, coordinatesJson)); }
public static Geometry MapFromNTSGeometry(NetTopologySuite.Geometries.Geometry geometry) { if (geometry == null) { return(null); } var writer = new NetTopologySuite.IO.GeoJsonWriter(); var geometryJson = writer.Write(geometry); var geometryObj = JObject.Parse(geometryJson); var coordinatesJson = geometryObj["coordinates"].ToString(Formatting.None); var typeJson = geometryObj["type"].ToString(Formatting.None).Replace("\"", ""); return(new Geometry(typeJson, coordinatesJson)); }
static void Main(string[] args) { var points = System.Text.Json.JsonSerializer.Deserialize <Point[]>(File.ReadAllText("track_1.json")); var features = new FeatureCollection(); features.Add(new Feature(new LineString(points.Select(x => new Coordinate(x.Longitude, x.Latitude)).ToArray()), new AttributesTable())); var pointsConverted = points.Select <Point, (double longitude, double latitude, double accuracy, long timeOffset)>(p => (p.Longitude, p.Latitude, p.Accuracy, 0)).ToList(); var filtered = pointsConverted.Filter(toleranceInMeter: 20); var coordinates = filtered.Select(x => new Coordinate(x.longitude, x.latitude)).ToArray(); features.Add(new Feature(new LineString(coordinates), new AttributesTable())); var geojsonWriter = new NetTopologySuite.IO.GeoJsonWriter(); File.WriteAllText("track_1.json.geojson", geojsonWriter.Write(features)); }
public void Export(string fileName) { var writer = new NetTopologySuite.IO.GeoJsonWriter(); StreamWriter geoJsonFile = new StreamWriter(fileName, false, Encoding.UTF8); // Start geojson feature collection geoJsonFile.WriteLine("{ \"type\": \"FeatureCollection\", \"features\": ["); bool first = true; foreach (var diagramObject in _diagram.DiagramObjects) { if (!first) { geoJsonFile.Write(","); } var geometryJson = writer.Write(diagramObject.Geometry); var propertyJson = writer.Write(CreatePropertiesJsonObject(diagramObject)); string line = "{ \"type\": \"Feature\", \"geometry\":" + geometryJson + ",\"properties\":" + propertyJson + "}"; geoJsonFile.WriteLine(line); if (first) { first = false; } } // End geojson feature collection geoJsonFile.WriteLine(" ] }"); geoJsonFile.Close(); }