<HTML dir=ltr><HEAD>
<META http-equiv=Content-Type content="text/html; charset=unicode">
<META content="MSHTML 6.00.6000.16640" name=GENERATOR></HEAD>
<BODY>
<DIV><FONT face=Arial color=#000000 size=2>Hi all,</FONT></DIV>
<DIV><FONT size=2></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial color=#000000 size=2>Yesterday and today&nbsp;I played a bit with the GRASS toolbox, starting from some missing or not-working *pieces* that I usually use in my jobs and that would like very much to have in the GRASS toolbox, thus avoiding me to use the tollbox shell (or even GRASS itself) for such *common* tasks: that's what I did:</FONT></DIV>
<DIV><FONT size=2></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial color=#000000 size=2>1) I removed the g.region module and replaced it with 8 different g.region modules.</FONT></DIV>
<DIV><FONT size=2></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial color=#000000 size=2>why? Because g.region is very useful, as long as setting the correct for particular tasks</FONT></DIV>
<DIV><FONT size=2></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial color=#000000 size=2>why&nbsp;8? Because the GRASS toolbox currently doesn't permit to select exclusive options. We need to build a module for each exclusive option needed.</FONT></DIV>
<DIV><FONT size=2></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial color=#000000 size=2>Here's the new modules:<BR>1.1) g.region.raster - Set the region to match a raster map<BR>1.2) g.region.multiple.raster - Set the region to match multiple raster maps *<BR>1.3) g.region.region - Set the region from a named region<BR>1.4) g.region.res - Change the 2D grid resolution (both N-S and E-W) of the current region<BR>1.5) g.region.save - Save the current region as a named region<BR>1.6) g.region.vector - Set the region to match a vector map<BR>1.7) g.region.multiple.vector - Set the region to match multiple vector maps *<BR>1.8) g.region.zoom - Shrink the current region until it meets non-NULL data from a given raster map</FONT></DIV>
<DIV><FONT size=2></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial color=#000000 size=2>* this is actually a walk-around; I needed to set the option as file to let user type in multiple map names separated by a comma; the single version, though, is very comfortable because it automatically lists all the map available in the work space... even if you can't select more than one</FONT></DIV>
<DIV><FONT size=2></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial color=#000000 size=2>2) I added the r.patch module; such as the g.region.multiple.* modules, this is a walk-around</FONT></DIV>
<DIV><FONT size=2></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial color=#000000 size=2>3) I modified the r.proj module, that was useless since it was impossible to select the raster map to reproject; such as the r.patch modules, this is a walk-around</FONT></DIV>
<DIV><FONT size=2></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial color=#000000 size=2>4) I added the r.proj.res module; it's the copy of the r.proj module, plus the feature to let redifine the resolution of the raster map while reprojecting</FONT></DIV>
<DIV><FONT size=2></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial color=#000000 size=2>5) I modified the v.in.db module; now it's possible to pick up the db file via GUI, select the table name and db driver</FONT></DIV>
<DIV><FONT size=2></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial color=#000000 size=2>6) I worked on the v.in.ogr module: the module was useless since it was impossible to select the input and parameters values; I fixed it, added some important options and flags, and re-designed the v.in.ogr modules as follows:</FONT></DIV>
<DIV><FONT size=2></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial color=#000000 size=2>6.1) v.in.ogr.list - list all available layers in a given OGR data source<BR>6.2) v.in.ogr - Import OGR/PostGIS vector layers<BR>6.3) v.in.ogr.loc - Import OGR/PostGIS vector layers and create a fitted location<BR>6.4) v.in.ogr.all - Import all the OGR/PostGIS vector layers in a given data source<BR>6.5) v.in.ogr.all.loc - Import all the OGR/PostGIS vector layers in a given data source and create a fitted location<BR>6.6) v.in.shape - Import ESRI Shapefile vector layers<BR>6.7) v.in.shape.loc - Import ESRI Shapefile vector layers and create a fitted location</FONT></DIV>
<DIV><FONT size=2></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial color=#000000 size=2>The last two modules are very comfortable since they use the *pick up* file GUI tool, with a filter set to *shp files</FONT></DIV>
<DIV><FONT size=2></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial color=#000000 size=2>7) I added the v.patch module; such as the r.patch modules, this is a walk-around</FONT></DIV>
<DIV><FONT size=2></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial color=#000000 size=2>I tested all the new and modified modules with qgis-0.10.0 on MS Windows (my build), and they all work very, very fine ;-)</FONT></DIV>
<DIV><FONT size=2></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial color=#000000 size=2>Dowload the following files (I have problems with attaches today):<BR>- default.qgc.diff -&gt; to patch the /src/plugins/grass/config/default.qgc file<BR>- modules_files.tar.gz -&gt; unpack to&nbsp; /src/plugins/grass/modules</FONT></DIV>
<DIV><FONT size=2></FONT>&nbsp;</DIV>
<DIV><A href="http://www.webalice.it/marco.pasetti/qgis/default.qgc.diff"><FONT size=2>http://www.webalice.it/marco.pasetti/qgis/default.qgc.diff</FONT></A><FONT size=2>&nbsp;-&gt; needed to patch the /src/plugins/grass/config/default.qgc file [ patch -p0 &lt;default.qgc.diff ]</FONT></DIV>
<DIV><A href="http://www.webalice.it/marco.pasetti/qgis/modules.tar.gz"><FONT size=2>http://www.webalice.it/marco.pasetti/qgis/modules.tar.gz</FONT></A><FONT size=2>&nbsp;-&gt; unpack to&nbsp;/src/plugins/grass/modules</FONT></DIV><FONT face=Arial color=#000000 size=2>
<DIV><BR>cmakesetup ..</DIV>
<DIV>make<BR>make install</DIV>
<DIV></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial color=#000000 size=2>and test ;-)</FONT></DIV>
<DIV><FONT size=2></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial color=#000000 size=2>Comments will be very appreciated</FONT></DIV>
<DIV><FONT size=2></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial color=#000000 size=2>Marco</FONT></DIV></BODY></HTML>