public static void SaveAsShapefile(this GeoJsonFeatureSet featureSet, string shpFileName, bool isLongitudeFirst = true, SrsBase srs = null) { if (featureSet == null || featureSet.Features.IsNullOrEmpty()) { return; } IRI.Ket.ShapefileFormat.Shapefile.SaveAsShapefile(shpFileName, featureSet.Features, isLongitudeFirst, srs); }
// ***************** Export As GeoJson ******* // ******************************************* public static ILegendCommand CreateExportDrawingItemLayerAsGeoJson(MapPresenter map, DrawingItemLayer layer) { var result = new LegendCommand() { PathMarkup = IRI.Jab.Common.Assets.ShapeStrings.Others.json, Layer = layer, ToolTip = _saveAsGeoJsonToolTip, }; result.Command = new RelayCommand(async param => { try { var file = map.DialogService.ShowSaveFileDialog("*.json|*.json", null, layer.LayerName); if (string.IsNullOrWhiteSpace(file)) { return; } var feature = GeoJsonFeature.Create(layer.Geometry.Project(SrsBases.GeodeticWgs84).AsGeoJson()); GeoJsonFeatureSet featureSet = new GeoJsonFeatureSet() { Features = new List <GeoJsonFeature>() { feature }, TotalFeatures = 1 }; featureSet.Save(file, false, false); } catch (Exception ex) { await map.DialogService.ShowMessageAsync(null, ex.Message, null, null); } }); return(result); }