예제 #1
0
        public static void SetGdalInfo(string inputFile, GdalInfo info)
        {
            Dataset ds = Gdal.Open(inputFile, Access.GA_Update);

            double[] GT = new double[6];
            ds.GetGeoTransform(GT);
            GT[1] = info.XPixelSize; GT[5] = info.YPixelSize;
            GT[0] = info.XMin; GT[3] = info.YMax;
            ds.SetGeoTransform(GT);
            ds.Dispose();
        }
예제 #2
0
        public static GdalInfo GetGdalInfo(string inputFile)
        {
            GdalInfo info = new GdalInfo();
            Dataset  ds   = Gdal.Open(inputFile, Access.GA_ReadOnly);

            double[] GT = new double[6];
            ds.GetGeoTransform(GT);
            info.XMin         = GT[0];
            info.XPixelSize   = GT[1];
            info.XCoefficient = GT[2];
            info.YMax         = GT[3];
            info.YCoefficient = GT[4];
            info.YPixelSize   = GT[5];
            info.XMax         = GT[0] + GT[1] * ds.RasterXSize + GT[2] * ds.RasterYSize;
            info.YMin         = GT[3] + GT[4] * ds.RasterXSize + GT[5] * ds.RasterYSize;
            info.XRasterSize  = ds.RasterXSize;
            info.YRasterSize  = ds.RasterYSize;
            ds.Dispose();
            return(info);
        }