[GRASS-SVN] r72198 - grass-addons/grass7/raster/r.sentinel/r.sentinel.import

svn_grass at osgeo.org svn_grass at osgeo.org
Mon Jan 29 08:12:39 PST 2018


Author: martinl
Date: 2018-01-29 08:12:39 -0800 (Mon, 29 Jan 2018)
New Revision: 72198

Modified:
   grass-addons/grass7/raster/r.sentinel/r.sentinel.import/r.sentinel.import.py
Log:
r.sentinel.import: force resolution value when reprojecting

Modified: grass-addons/grass7/raster/r.sentinel/r.sentinel.import/r.sentinel.import.py
===================================================================
--- grass-addons/grass7/raster/r.sentinel/r.sentinel.import/r.sentinel.import.py	2018-01-29 15:56:12 UTC (rev 72197)
+++ grass-addons/grass7/raster/r.sentinel/r.sentinel.import/r.sentinel.import.py	2018-01-29 16:12:39 UTC (rev 72198)
@@ -90,6 +90,7 @@
             if reproject:
                 module = 'r.import'
                 args['resample'] = 'bilinear'
+                args['resolution'] = 'value'
             else:
                 module = 'r.in.gdal'
 
@@ -115,9 +116,21 @@
 
         return True
 
+    def _raster_resolution(self, filename):
+        try:
+            from osgeo import gdal
+        except ImportError as e:
+            gs.fatal("Flag -r requires GDAL library: {}".format(e))
+        dsn = gdal.Open(filename)
+        trans = dsn.GetGeoTransform()
+
+        return int(trans[1])
+                     
     def _import_file(self, filename, module, args):
         mapname = os.path.splitext(os.path.basename(filename))[0]
         gs.message('Processing <{}>...'.format(mapname))
+        if module == 'r.import':
+            args['resolution_value'] = self._raster_resolution(filename)
         try:
             gs.run_command(module, input=filename, output=mapname, **args)
         except CalledModuleError as e:



More information about the grass-commit mailing list