Exemplo n.º 1
0
        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);
        }
Exemplo n.º 2
0
        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);
        }
Exemplo n.º 3
0
        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);
        }
Exemplo n.º 4
0
        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");
            }
        }
Exemplo n.º 5
0
        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);
        }
Exemplo n.º 6
0
 private GridLayerImpl(string name, RutenettType rutenettType) : base(name, rutenettType)
 {
 }
Exemplo n.º 7
0
 public GridSummaryItem(RutenettType rutenettType)
 {
     GridType        = rutenettType.ToString();
     GridDescription = GetDescription(rutenettType);
     GridLayers      = new Collection <GridLayerSummaryItem>();
 }
Exemplo n.º 8
0
 public Grid(RutenettType type)
 {
     Type  = type;
     Cells = new Collection <GridCell>();
 }
Exemplo n.º 9
0
 public GridLayer(string name, RutenettType type)
 {
     Name = name;
     Type = type;
 }
Exemplo n.º 10
0
 public ImportGridCommand(string dataFile, int sourceEpsgCode, RutenettType rutenettType)
 {
     this.rutenettType   = rutenettType;
     this.sourceEpsgCode = sourceEpsgCode;
     this.dataFile       = dataFile;
 }