public static FeatureCollection GetAssessmentAreaFeatureCollection(this OnlandVisualTrashAssessment ovta) { var featureCollection = new FeatureCollection(); var parcelGeoms = ovta.GetParcelsViaTransect().Select(x => x.ParcelGeometry4326).ToList(); var feature = DbGeometryToGeoJsonHelper.FromDbGeometryWithNoReproject(parcelGeoms.UnionListGeometries()); featureCollection.Features.Add(feature); return(featureCollection); }
public static List <int> GetParcelIDsForAddOrRemoveParcels(this OnlandVisualTrashAssessment onlandVisualTrashAssessment) { if (onlandVisualTrashAssessment.IsDraftGeometryManuallyRefined.GetValueOrDefault()) { return(new List <int>()); } // NP 8/22 these are supposed to be in 2771 already, but due to a b*g somewhere, some of them have 4326 as their SRID even though the coords are 2771... var draftGeometry = onlandVisualTrashAssessment.DraftGeometry.FixSrid(CoordinateSystemHelper.NAD_83_HARN_CA_ZONE_VI_SRID); // ... and the wrong SRID would cause this next lookup to fail bigly var parcelIDs = draftGeometry == null ? onlandVisualTrashAssessment.GetParcelsViaTransect().Select(x => x.ParcelID) : HttpRequestStorage.DatabaseEntities.Parcels .Where(x => draftGeometry.Contains(x.ParcelGeometry)).Select(x => x.ParcelID); return(parcelIDs.ToList()); }