public static Grid ImportGrid(int sourceEpsgCode, RutenettType rutenettType, string fullPath) { var grid = Grid2.FromShapeFile(fullPath, rutenettType, sourceEpsgCode); Grid importGrid = new Grid(rutenettType); if (sourceEpsgCode != Config.Settings.Map.SpatialReferenceSystemIdentifier) { MapProjection reproject = new MapProjection(Config.Settings.Map.SpatialReferenceSystemIdentifier); foreach (var cell in grid.Cells) { if (!reproject.IsInsideBounds(cell.Geometry)) { continue; // TODO: What do we do? } cell.Geometry = reproject.Reproject(cell.Geometry); importGrid.Cells.Add(cell); } } else { importGrid.Cells.AddRange(grid.Cells); } return(importGrid); }
private static void ImportGrid(string shapeFilePath, int sourceEpsgCode, RutenettType rutenettType) { string fullPath = FileLocator.FindFileInTree(Path.Combine(@"Data\Grid\SSB", shapeFilePath)); var grid = GridImporter.ImportGrid(sourceEpsgCode, rutenettType, fullPath); GridImporter.BulkStore(grid); }
public static Grid FromShapeFile(string shapeFilePath, RutenettType rutenettType, int epsgCode) { var grid = new Grid(rutenettType); Shapefile shapeFile = Shapefile.OpenFile(shapeFilePath); foreach (var feature in shapeFile.Features) { var cell = new GridCell(); cell.CellId = feature.DataRow[0].ToString(); var text = new SqlChars(feature.BasicGeometry.ToString()); cell.Geometry = SqlGeometry.STGeomFromText(text, epsgCode); grid.Cells.Add(cell); } return(grid); }
private static string GetDescription(RutenettType rutenettType) { switch (rutenettType) { case RutenettType.SSB0250M: return("SSB 250m"); case RutenettType.SSB0500M: return("SSB 500m"); case RutenettType.SSB001KM: return("SSB 1km"); case RutenettType.SSB002KM: return("SSB 2km"); case RutenettType.SSB005KM: return("SSB 5km"); case RutenettType.SSB010KM: return("SSB 10km"); case RutenettType.SSB025KM: return("SSB 25km"); case RutenettType.SSB050KM: return("SSB 50km"); case RutenettType.SSB100KM: return("SSB 100km"); case RutenettType.SSB250KM: return("SSB 250km"); case RutenettType.SSB500KM: return("SSB 500km"); default: return("Andre"); } }
public static GridLayerImpl FromExcelFile(string excelFilePath, RutenettType rutenettType, string name, int columnNumber) { var gridLayer = new GridLayerImpl(name, rutenettType); var workBook = new XLWorkbook(excelFilePath); var sheet = workBook.Worksheet(0); int endIndexRow = sheet.LastRow().RowNumber(); for (int i = 2; i <= endIndexRow; ++i) { IXLRow row = sheet.Row(i); object value = row.Cell(columnNumber).Value; var cellId = row.Cell(1).Value; gridLayer.Cells.Add(new GridLayerCell { CellId = cellId.ToString(), Value = value.ToString() }); } return(gridLayer); }
private GridLayerImpl(string name, RutenettType rutenettType) : base(name, rutenettType) { }
public GridSummaryItem(RutenettType rutenettType) { GridType = rutenettType.ToString(); GridDescription = GetDescription(rutenettType); GridLayers = new Collection <GridLayerSummaryItem>(); }
public Grid(RutenettType type) { Type = type; Cells = new Collection <GridCell>(); }
public GridLayer(string name, RutenettType type) { Name = name; Type = type; }
public ImportGridCommand(string dataFile, int sourceEpsgCode, RutenettType rutenettType) { this.rutenettType = rutenettType; this.sourceEpsgCode = sourceEpsgCode; this.dataFile = dataFile; }