public void Setup() { polygons = TestUtil.ReadCsvFile <HarbourPolygon, HarbourCsvClassMap>("./Resources/harbours_polygons.csv"); index = new GeohashSpatialIndex <int>(new DefaultGeohasher(), new DefaultTrieMap <int>(), 9); relations = new SpatialRelations <int>(index); foreach (var polygon in polygons) { index.Insert(polygon.Geom, polygon.HarbourId); } }
public void Setup() { polygons = TestUtil.ReadCsvFile <HarbourPolygon, HarbourCsvClassMap>("./Resources/harbours_polygons.csv"); vesselPositions = TestUtil.ReadCsvFile <VesselPosition, VesselPositionCsvClassMap>("./Resources/vessel_points.csv") .Where(position => !(position.Geom.Coordinate.Y > 90 || position.Geom.Coordinate.Y < -90 || position.Geom.Coordinate.X > 180 || position.Geom.Coordinate.X < -180 || position.Sog > 100 || position.Cog == 360)).ToList(); polygonIndex = new GeohashSpatialIndex <int>(new DefaultGeohasher(), new DefaultTrieMap <int>(), 9); pointIndex = new GeohashSpatialIndex <int>(new DefaultGeohasher(), new DefaultTrieMap <int>(), 8); polygonRelations = new SpatialRelations <int>(polygonIndex); pointRelations = new SpatialRelations <int>(pointIndex); foreach (var polygon in polygons) { polygonIndex.InsertOrUpdate(polygon.Geom, polygon.HarbourId); } foreach (var position in vesselPositions.ToList()) { pointIndex.InsertOrUpdate(position.Geom, position.Mmsi); } }