public List<Feature> FilterFeatureCollection(Extent ext) { var filteredFeatures = new List<Feature>(); foreach (var f in features) { var envelope = f.GetEnvelope(); if (envelope.Intersects(ext)) { filteredFeatures.Add(f); } } return filteredFeatures; }
public static Geometry ToLatLon(this Geometry geometry) { Geometry result = null; if (geometry is Extent) { var extent = (Extent) geometry; var resultExtent = new Extent(); var lo = Projections.MercatorToLatLon(extent.xmin, extent.ymin); var rb = Projections.MercatorToLatLon(extent.xmax, extent.ymax); resultExtent.xmin = (float)lo.Longitude; resultExtent.ymin = (float)lo.Latitude; resultExtent.xmax = (float)rb.Longitude; resultExtent.ymax = (float)rb.Latitude; result = resultExtent; } return result; }