<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://grasswiki.osgeo.org/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=%E2%9A%A0%EF%B8%8FEricPatton</id>
	<title>GRASS-Wiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://grasswiki.osgeo.org/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=%E2%9A%A0%EF%B8%8FEricPatton"/>
	<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/wiki/Special:Contributions/%E2%9A%A0%EF%B8%8FEricPatton"/>
	<updated>2026-05-25T17:48:56Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.41.0</generator>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=AddOns&amp;diff=9507</id>
		<title>AddOns</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=AddOns&amp;diff=9507"/>
		<updated>2009-09-10T10:30:52Z</updated>

		<summary type="html">&lt;p&gt;⚠️EricPatton: Updated out of date script links&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page contains references to user contributions and add-ons (the original GRASS GIS software can be downloaded [http://grass.osgeo.org/download/index.php here]).&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
== AddOns source code repository ==&lt;br /&gt;
&lt;br /&gt;
The AddOns source code is hosted in [http://svn.osgeo.org/grass/grass-addons/ GRASS-AddOns SVN repository].&lt;br /&gt;
&lt;br /&gt;
To checkout:&lt;br /&gt;
&lt;br /&gt;
 svn checkout &amp;lt;nowiki&amp;gt;https://svn.osgeo.org/grass/grass-addons/&amp;lt;/nowiki&amp;gt; grass-addons&lt;br /&gt;
&lt;br /&gt;
Please read [http://trac.osgeo.org/grass/wiki/HowToContribute#WriteaccesstotheGRASS-Addons-SVNrepository How to get write access to the GRASS-Addons-SVN repository] and contact the [http://lists.osgeo.org/mailman/listinfo/grass-dev grass-dev] mailing list if you would like to host your module there.&lt;br /&gt;
&lt;br /&gt;
== Building and installing Addons ==&lt;br /&gt;
&lt;br /&gt;
* see the [[Compile and Install#Addons]] wiki page&lt;br /&gt;
&lt;br /&gt;
== Adding something new ==&lt;br /&gt;
&lt;br /&gt;
Please announce your add-on to the GRASS users' mailing list so that others may be aware of your work. Also please consider adding your module to one of the [[Applications]] pages.&lt;br /&gt;
&lt;br /&gt;
=== Copyright and licensing information ===&lt;br /&gt;
&lt;br /&gt;
''Please be sure to include copyright and licensing information in the header comments of your code so that others may know how they can use, extend, modify, and redistribute your work.''&lt;br /&gt;
&lt;br /&gt;
e.g. at the top of a shell script:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/sh&lt;br /&gt;
############################################################################&lt;br /&gt;
#&lt;br /&gt;
# MODULE:       v.in.e00&lt;br /&gt;
#&lt;br /&gt;
# AUTHOR(S):    Markus Neteler, Otto Dassau&lt;br /&gt;
#&lt;br /&gt;
# PURPOSE:      Import E00 data into a GRASS vector map&lt;br /&gt;
#               Imports single and split E00 files (.e00, .e01, .e02 ...)&lt;br /&gt;
#&lt;br /&gt;
# COPYRIGHT:    (c) 2004, 2005 GDF Hannover bR, http://www.gdf-hannover.de&lt;br /&gt;
#&lt;br /&gt;
#               This program is free software under the GNU General Public&lt;br /&gt;
#               License (&amp;gt;=v2). Read the file COPYING that comes with GRASS&lt;br /&gt;
#               for details.&lt;br /&gt;
#&lt;br /&gt;
#############################################################################&lt;br /&gt;
#&lt;br /&gt;
# REQUIREMENTS:&lt;br /&gt;
#      -  avcimport: http://avce00.maptools.org&lt;br /&gt;
&lt;br /&gt;
[script follows]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Coding standards ===&lt;br /&gt;
&lt;br /&gt;
Please have a look at our [http://grass.osgeo.org/grass63/source/SUBMITTING_SCRIPTS Shell script coding standards] before submitting here.&lt;br /&gt;
&lt;br /&gt;
There are other coding standards given for modules written in C, Tcl/Tk, and Python''(?)'' located in the GRASS source code.&lt;br /&gt;
&lt;br /&gt;
=== Documenting your code ===&lt;br /&gt;
&lt;br /&gt;
You can have an help page template auto-generated by using the GRASS [[module command line parser | command line parser]] with the &amp;lt;tt&amp;gt;--html-description&amp;lt;/tt&amp;gt; command line option. Please, see also the [http://grass.ibiblio.org/grass63/manuals/html63_user/g.parser.html g.parser help page]&lt;br /&gt;
&lt;br /&gt;
== Miscellaneous Add-ons ==&lt;br /&gt;
&lt;br /&gt;
* [http://trac.osgeo.org/grass/browser/grass-addons/misc/utm_which_zone utm_which_zone.sh] is a shell script to determine UTM zone from Lat/Lon input. Requires [http://www.octave.org Octave] or Matlab to be installed. A shell-only version is [http://dcalvelo.free.fr/grass/utm_which_zone_sh.sh available] which only requires awk.&amp;lt;BR&amp;gt;'''Authors''': Hamish Bowman (Octave part), Markus Neteler (shell script wrapper), Daniel Calvelo (sh+awk version)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Perl scripts for converting data forth and back between Excel files and PostgreSQL: [http://dcalvelo.free.fr/grass/pg2xls.pl pg2xls.pl] reads data from PostgreSQL and produces an excel workbook; [http://dcalvelo.free.fr/grass/xls2sql.pl xls2sql.pl] reads excel files and outputs SQL statements to be fed into an RDBMS. Both scripts need modules from [http://www.cpan.org CPAN], especially [http://search.cpan.org/dist/Spreadsheet-ParseExcel/  Spreadsheet::ParseExcel] for xls2sql.pl and [http://search.cpan.org/~tmtm/Spreadsheet-WriteExcel-FromDB Spreadsheet::WriteExcel::FromDB] and its dependencies for pg2sql.pl. Check the source headers for more info.&amp;lt;BR&amp;gt;'''Authors:''' Daniel Calvelo (xls2sql.pl), Markus Neteler (pg2xls.pl)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://dream.lrrl.arch.tu-muenchen.de/~wqual/perl/dbf2sql.tgz dbf2sql] is a Perl script for translating dbf-tables into a sql-command. dbf-tables are read using dbfdump-command from dbd-xbase-perl module ([http://search.cpan.org/~janpaz/DBD-XBase-0.241/ dbd::xbase] and [http://search.cpan.org/~jv/Getopt-Long-2.35/lib/Getopt/Long.pm getopt::long] have to be installed from CPAN first). There are problems, if the last column of the table contains characters. Suggestions for improvements welcome! &amp;lt;BR&amp;gt;'''Author:'''Wolfgang Qual&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.igc.usp.br/pessoais/guano/downloads/azimuth2.c azimuth2.c] is a small C program to calculate the azimuth and length of vector lines exported by GRASS-GIS as ASCII files (like this: v.out.ascii input=vector output=ascii format=standard). It is useful for create rose diagrams of lineament maps. Improvements on the original code after suggestions by Örs Téglásy, Hungary.&amp;lt;BR&amp;gt;'''Author:''' Carlos Henrique Grohmann&lt;br /&gt;
&lt;br /&gt;
==GRASS 4.x==&lt;br /&gt;
&lt;br /&gt;
===Raster add-ons for GRASS 4===&lt;br /&gt;
&lt;br /&gt;
* MAGICAL Software: The MAGICAL software comprises a suite of three programs that provide a multi-agent simulation extension for the GRASS GIS software. http://www.ucl.ac.uk/~tcrnmar/simulation/magical/magical.html&lt;br /&gt;
&lt;br /&gt;
==GRASS 5.x==&lt;br /&gt;
&lt;br /&gt;
===Vector add-ons for GRASS 5===&lt;br /&gt;
&lt;br /&gt;
* See here: http://grass.osgeo.org/download/addons.php&lt;br /&gt;
&lt;br /&gt;
===Raster add-ons for GRASS 5===&lt;br /&gt;
&lt;br /&gt;
* See here: http://grass.osgeo.org/download/addons.php&lt;br /&gt;
&lt;br /&gt;
* [http://www.valledemexico.ambitiouslemon.com/gwmodelling.html r.gmtg] The groundwater modelling tool for grass. A module to use MODFLOW within GRASS. &amp;lt;BR&amp;gt;'''Author''': Jaime Carrera&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.bowdoin.edu/~ltoma/research.html r.terracost] Scalable approach for computing least-cost-path surfaces on massive grid terrains. For GRASS 5.3.&amp;lt;BR&amp;gt;'''Lead author''': Laura Toma&lt;br /&gt;
:Newer version available via SVN:&lt;br /&gt;
  svn co https://svn.osgeo.org/grass/grass-addons/raster/r.terracost&lt;br /&gt;
&lt;br /&gt;
==GRASS 6.x==&lt;br /&gt;
&lt;br /&gt;
=== Vector add-ons ===&lt;br /&gt;
&lt;br /&gt;
See also&lt;br /&gt;
&lt;br /&gt;
 svn co https://svn.osgeo.org/grass/grass-addons/vector&lt;br /&gt;
&lt;br /&gt;
==== v.adehabitat.clusthr, v.adehabitat.kernelUD, v.adehabitat.mcp ====&lt;br /&gt;
&lt;br /&gt;
: Tools to calculate home ranges of animals&lt;br /&gt;
: '''Author:''' Clement Calenge&lt;br /&gt;
&lt;br /&gt;
Available via SVN:&lt;br /&gt;
 svn co https://svn.osgeo.org/grass/grass-addons/vector/adehabitat&lt;br /&gt;
&lt;br /&gt;
==== v.append ====&lt;br /&gt;
&lt;br /&gt;
: [http://www.public.asu.edu/~cmbarton/files/grass_scripts/v.append v.append] is a shell script combining two vector files AND their associated attribute tables. The vector files should be of the same type and, for best results, should have identically formatted attribute tables.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Michael Barton&lt;br /&gt;
&lt;br /&gt;
==== v.autokrige ====&lt;br /&gt;
&lt;br /&gt;
: [http://trac.osgeo.org/grass/browser/grass-addons/vector/v.autokrige/v.autokrige.py v.autokrige] achieves automatic ordinary kriging from GRASS sites (vector point data), using R with spgrass6 (RGRASS) and automap packages.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Mathieu Grelier&lt;br /&gt;
&lt;br /&gt;
==== v.breach ====&lt;br /&gt;
&lt;br /&gt;
: [http://www.sieczka.org/programy_en.html v.breach] creates vector maps of lines and points of continously lowering elevation down the input watercourses, based on the input raster DEM.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Maciej Sieczka&lt;br /&gt;
&lt;br /&gt;
==== v.colors ====&lt;br /&gt;
&lt;br /&gt;
: {{cmd|v.colors}} ''moved into main archive''&lt;br /&gt;
&lt;br /&gt;
==== v.count.points.sh ====&lt;br /&gt;
&lt;br /&gt;
: [http://wiki.iosa.it/dokuwiki/spatial_analysis:feature_count v.count.points.sh] counts point features in areas, generates table good as input to d.vect.chart.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Stefano Costa&lt;br /&gt;
&lt;br /&gt;
==== v.digatt ====&lt;br /&gt;
&lt;br /&gt;
: [http://phygeo7.geo.uni-augsburg.de/gis2/scripts/v.digatt v.digatt] (shell script) Interactively assign numeric table attributes to series of vector objects. It is meant to be effective by avoiding to type in the attribute value for all single objects again and again. The user is prompted for typing in an attribute value which is assigned to all objects selected by mouseclick afterwards. Next the display is redrawn after updating the table column. Zooming allows to change the region before the old value can be reused or a new one can be typed in (or copied by mouse from another object) in order to assign it to the next series of objects etc. It is tested not very extensively yet. Therefore better work with a copy of your map and consider using v.digit or d.what.vect -e alternatively. [http://phygeo7.geo.uni-augsburg.de/gis2/scripts/v.digatt.png screenshot].&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Andreas Philipp&lt;br /&gt;
&lt;br /&gt;
==== v.dip ====&lt;br /&gt;
&lt;br /&gt;
: [http://marcin.slodkowski.googlepages.com/v.dip.tgz v.dip] creates points of thickness vectors from the vectors of strike and dip angles. The v.dip is the main ANSI C core program. Program so-called v.dip can run without GRASS environment.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Marcin Slodkowski&lt;br /&gt;
&lt;br /&gt;
==== v.flip ====&lt;br /&gt;
&lt;br /&gt;
: [http://www.sieczka.org/programy_en.html v.flip] flips the direction of selected vector lines (redundant since GRASS 6.3 - there is &amp;quot;v.edit tool=flip&amp;quot;).&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Maciej Sieczka&lt;br /&gt;
&lt;br /&gt;
==== v.group ====&lt;br /&gt;
&lt;br /&gt;
: [http://www.shockfamily.net/cedric/grass/v.group v.group] generates a new vector map with the same geometry as an existing map. The new map has categories and a table based on grouping by the values in certain columns of the existing map's table. The values in these columns are preserved in the table for the new map. It's like a v.reclass that preserves data.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Cedric Shock&lt;br /&gt;
&lt;br /&gt;
==== v.in.gama ====&lt;br /&gt;
&lt;br /&gt;
: Converts [http://www.gnu.org/software/gama/ GNU GaMa] XML output file to a GRASS vector map layer.&lt;br /&gt;
&lt;br /&gt;
:'''Author:''' Martin Landa&lt;br /&gt;
&lt;br /&gt;
 svn co https://svn.osgeo.org/grass/grass-addons/vector/v.in.gama&lt;br /&gt;
&lt;br /&gt;
==== v.in.gshhs ====&lt;br /&gt;
&lt;br /&gt;
: [http://trac.osgeo.org/grass/browser/grass-addons/vector/v.in.gshhs v.in.gshhs] imports [http://www.soest.hawaii.edu/wessel/gshhs/gshhs.html GSHHS] shorelines into a GRASS vector map. GSHHS data are automatically reprojected to the current location.&lt;br /&gt;
&lt;br /&gt;
:'''Authors:''' several, updated to GRASS 6 by Markus Metz&lt;br /&gt;
&lt;br /&gt;
==== v.in.ncdc ====&lt;br /&gt;
&lt;br /&gt;
: [http://trac.osgeo.org/grass/browser/grass-addons/vector/v.in.ncdc v.in.ncdc] imports an [http://www.ncdc.noaa.gov NCDC] stn file (station data) into a GRASS vector map.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Huidae Cho&lt;br /&gt;
&lt;br /&gt;
==== v.in.postgis ====&lt;br /&gt;
&lt;br /&gt;
: [http://trac.osgeo.org/grass/browser/grass-addons/vector/v.in.postgis/v.in.postgis.py v.in.postgis] Create a GRASS layer from any sql query on PostGIS data.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Mathieu Grelier&lt;br /&gt;
&lt;br /&gt;
==== v.in.osm ====&lt;br /&gt;
&lt;br /&gt;
: [http://kripton.kripserver.net/software/v.in.osm/ v.in.osm]: OpenStreetMap import into GRASS. Yet only supports deprecated API 0.4, will be modified to work with API 0.5 some time soon.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Jannis Achstetter&lt;br /&gt;
&lt;br /&gt;
: See also [http://hamish.bowman.googlepages.com/gpsdrivefiles#osm osm2grass.sh] by H Bowman&lt;br /&gt;
&lt;br /&gt;
==== v.in.ovl ====&lt;br /&gt;
&lt;br /&gt;
: [http://grasslab.gisix.com/scripts/v.in.ovl/ v.in.ovl] is a shell script that imports an ASCII vector file created with TOP10|25|50 or similar products.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Peter Löwe&lt;br /&gt;
&lt;br /&gt;
==== v.krige ====&lt;br /&gt;
&lt;br /&gt;
: [[V.krige_GSoC_2009 | v.krige]] aims to integrate R functions for kriging (packages automap, gstat, geoR) in a trasparent way. '''Still beta''': testing welcome.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Anne Ghisla, as Google Summer of Code 2009 project&lt;br /&gt;
&lt;br /&gt;
: See also [[GRASS_AddOns#v.autokrige]] by Mathieu Grelier&lt;br /&gt;
&lt;br /&gt;
==== v.lda ====&lt;br /&gt;
&lt;br /&gt;
: [http://www.public.asu.edu/~cmbarton/files/grass_scripts/v.lda v.lda] is a shell script for calculating Ian Johnson's (U. Sidney) Local Density Analysis values to measure clustering of point data at different neighborhood radii. There is an option to create a simple line graph of the results. There have been reports of problems creating the line graph on Cygwin installations of GRASS.&lt;br /&gt;
&lt;br /&gt;
==== v.line.center ====&lt;br /&gt;
&lt;br /&gt;
: [http://www.sieczka.org/programy_en.html v.line.center] creates a points vector map with each point located in the middle of the length of the input vector line.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Maciej Sieczka&lt;br /&gt;
&lt;br /&gt;
==== v.lmeasure ====&lt;br /&gt;
&lt;br /&gt;
: [http://ngeo.de/grassstuff/v.lmeasure v.lmeasure] and [http://ngeo.de/grassstuff/v.revlmeasure v.revlmeasure] are two perl scripts that place equidistant vector points along a given arbitrary vector line starting from the beginning or end of the vector line, respectively. Resulting  vector points are labeled with the distance from origin.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Mats Schuh&lt;br /&gt;
&lt;br /&gt;
==== v.out.ascii.db ====&lt;br /&gt;
&lt;br /&gt;
: [http://trac.osgeo.org/grass/browser/grass-addons/vector/v.out.ascii.db v.out.ascii.db] is a shell script for exporting vector point data coordinates and selected attribute columns to either a file or to the console.&lt;br /&gt;
: ''Superseded in GRASS 6.4 by the new v.out.ascii columns= option.''&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
==== v.out.ascii.mat ====&lt;br /&gt;
&lt;br /&gt;
: [http://trac.osgeo.org/grass/browser/grass-addons/vector/v.out.ascii.mat v.out.ascii.mat] is a shell script for exporting vector polygon and polyline data into an ASCII text file suitable for loading into Matlab (or [http://www.gnu.org/software/octave/ Octave]).&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
==== v.out.gmt ====&lt;br /&gt;
&lt;br /&gt;
: [http://trac.osgeo.org/grass/browser/grass-addons/vector/v.out.gmt v.out.gmt] is a shell script that exports a polygon vector file into GMT xy file. psbasemap code was copied from Hamish's r.out.gmt.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Huidae Cho, Hamish Bowman, Dylan Beaudette&lt;br /&gt;
&lt;br /&gt;
==== v.out.kml ====&lt;br /&gt;
&lt;br /&gt;
: [http://grasslab.gisix.com/scripts/v.out.kml/ v.out.kml] is a shell script that exports a vector file into a KML file for Google Earth or Worldwind.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Peter Löwe&lt;br /&gt;
&lt;br /&gt;
==== v.out.svg ====&lt;br /&gt;
&lt;br /&gt;
: [http://svg.cc/grass/index.html v.out.svg] is a module that exports SVG notation along with optional attribute data directly from GRASS 6.x vector layers. Now part of [http://svn.osgeo.org/grass/grass/trunk/vector/v.out.svg/ grass6-svn].&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Klaus Förster&lt;br /&gt;
&lt;br /&gt;
==== v.random.cover ====&lt;br /&gt;
&lt;br /&gt;
: [http://trac.osgeo.org/grass/browser/grass-addons/vector/v.random.cover v.random.cover] is a shell script for creating random points constrained within an irregularly shaped vector area. (v.random places points only in current region rectangle). Optionally the user can upload raster values at the points. See also '&amp;lt;tt&amp;gt;r.random cover= vector_output=&amp;lt;/tt&amp;gt;'&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
==== v.rasterbounds ====&lt;br /&gt;
&lt;br /&gt;
: [http://les-ejk.cz/programs v.rasterbounds] is a shell script for creating polygon-vector file of rasterfile boundaries. The best version of GRASS is 6.1+. If you are using GRASS &amp;lt; 6.1, you  have to be in the same mapset as your raster maps are from.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
==== v.sample.buffer [broken link, please update or delete]====&lt;br /&gt;
&lt;br /&gt;
: [http://www.clubwebcanada.ca/twiens/v.sample.buffer.tgz v.sample.buffer] is a shell script that samples rasters in buffers of a specified size around features in a specified vector file. Sampling results are added as attributes to the vector file. This script was designed for sampling vegetation indices and DEM derived attributes for bird point counts. Sampling results can be one or more basic statistics such as mean, range, max, etc.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Trevor Wiens&lt;br /&gt;
&lt;br /&gt;
==== v.select.region ====&lt;br /&gt;
&lt;br /&gt;
: [ftp://gsca.nrcan.gc.ca/outgoing/Patton/Grass/Scripts/v.select.region.tar.bz2 v.select.region] is a shell script that prints out the names of all vectors matching an input search pattern that has geometry (points, line, areas) that fall within a region bounded by an existing vector map, or within the current Grass region.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Eric Patton&lt;br /&gt;
&lt;br /&gt;
==== v.selmany ====&lt;br /&gt;
&lt;br /&gt;
: [http://svn.osgeo.org/grass/grass-addons/vector/v.selmany/v.selmany v.selmany] is a shell script that allows to interactively select a set of vector objects on a given layer, then assign them attribute values in a connected database table. The script runs on the command line prompt and within a graphic monitor ; it does not work with DBF driver.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Vincent Bain&lt;br /&gt;
&lt;br /&gt;
==== v.surf.icw ====&lt;br /&gt;
&lt;br /&gt;
: [http://trac.osgeo.org/grass/browser/grass-addons/vector/v.surf.icw v.surf.icw] is an IDW interpolation method using true distance cost instead of euclidean shortest distance, i.e. ''as the fish swims around an island'' not ''as the bird flies''. This will cleanly travel around hard barriers and a cost surface map may be used to model expensive-cross barriers. Input data points do not need direct line of sight to be considered, but should be kept to less than one hundred as the module becomes very computationally expensive. A number of radial basis function options are available. ([http://grass.osgeo.org/wiki/Image:Inlets_03_SurfSal_icw_big.png screenshot])&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
==== v.surf.idwpow ====&lt;br /&gt;
&lt;br /&gt;
: [http://www.geospatial.it/allegri/grass/v.surf.idwpow.zip v.surf.idwpow] integrates the common v.surf.idw algorithm with the exponential parameter for the distance weights&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Giovanni Allegri&lt;br /&gt;
&lt;br /&gt;
==== v.surf.krige [deprecated: use v.autokrige instead] ====&lt;br /&gt;
&lt;br /&gt;
: v.surf.krige is a script that do a surface interpolation from vector point data by Kriging method. The interpolated value of a cell is determined by using an omnidirectional variogram model fitted starting from model parameter given by user shown from the experimental semi variogram produced by v.variogram. The script can perform also the Leave-One-out cross validation to test the variogram model &amp;quot;fitted by eye&amp;quot; and an automatic fitted variogram model. The cross validation helps the user to choose the best variogram model to interpolate own data.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Pierluigi De Rosa.&lt;br /&gt;
&lt;br /&gt;
==== v.strahler ====&lt;br /&gt;
&lt;br /&gt;
: [http://www.pois.org/florian/downloads/grass/v.strahler.tgz v.strahler] is a module that calculates the Strahler Order for all lines of a given dendritic network.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Florian Kindl. Available via SVN:&lt;br /&gt;
&lt;br /&gt;
 svn co https://svn.osgeo.org/grass/grass-addons/vector/v.strahler&lt;br /&gt;
&lt;br /&gt;
==== v.swathwidth ====&lt;br /&gt;
&lt;br /&gt;
: [http://trac.osgeo.org/grass/browser/grass-addons/vector/v.swathwidth v.swathwidth] creates a vector map representing the sea bottom coverage of a multibeam (swath) sonar survey.&lt;br /&gt;
: ([http://david.p.finlayson.googlepages.com/swathwidth Screenshots])&lt;br /&gt;
&lt;br /&gt;
: '''Authors:''' David Finlayson, Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
==== v.thickness ====&lt;br /&gt;
&lt;br /&gt;
: [http://marcin.slodkowski.googlepages.com/v.thickness.tgz v.thickness] creates points of thickness vectors from the vectors of strike and dip angles.The v.thickness is GUI GRASS script for v.dip.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Marcin Slodkowski&lt;br /&gt;
&lt;br /&gt;
==== v.trees3d ====&lt;br /&gt;
&lt;br /&gt;
: [http://les-ejk.cz/programs/ v.trees3d] is a module for making 3D trees from input vector point file.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== v.trimesh ====&lt;br /&gt;
: [http://www.valledemexico.ambitiouslemon.com/vtrimesh.html v.trimesh] creates a triangular mesh from a vector map using areal constraints for refinement. It uses Jonathan Shewchuk's Triangle library.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Jaime Carrera&lt;br /&gt;
&lt;br /&gt;
==== v.what.rast.buffer ====&lt;br /&gt;
&lt;br /&gt;
: [http://trac.osgeo.org/grass/browser/grass-addons/vector/v.what.rast.buffer v.what.rast.buffer] is a script that calculates univariate statistics of raster map(s) from buffers around vector points. Results are written to a file. Resolution is taken from each input map.&lt;br /&gt;
: ''see also the [http://starspan.casil.ucdavis.edu StarSpan] software&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
==== v.variogram [deprecated: use v.autokrige instead] ====&lt;br /&gt;
&lt;br /&gt;
: v.variogram is a script that create an omnidirectional experimental semi-variogram. This scripts require R-statistics software installed on your machine. Now the script is updated to run on spgrass6 &amp;gt;= 0.3 and sp &amp;gt;= 0.9 [http://grass.osgeo.org/pipermail/statsgrass/2006-October/000455.html reply].&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Ivan Marchesini, Pierluigi De Rosa.&lt;br /&gt;
&lt;br /&gt;
==== AniMove ====&lt;br /&gt;
&lt;br /&gt;
: [http://www.faunalia.it/animov/ AniMove] is software for analysis of animal movement and ranging behaviour using QGIS+GRASS+R.&lt;br /&gt;
&lt;br /&gt;
:'''Authors:''' Support by Faunalia.it&lt;br /&gt;
&lt;br /&gt;
==== Utilities ====&lt;br /&gt;
&lt;br /&gt;
===== Shapemerge =====&lt;br /&gt;
&lt;br /&gt;
: [http://perrygeo.googlecode.com/svn/trunk/gis-bin/shpmerge.sh shpmerge] merges all the shapefiles in the current directory into a single output shapefile&lt;br /&gt;
&lt;br /&gt;
:'''Authors:''' Perrygeo&lt;br /&gt;
&lt;br /&gt;
=== Raster add-ons ===&lt;br /&gt;
&lt;br /&gt;
See also&lt;br /&gt;
&lt;br /&gt;
 svn co &amp;lt;nowiki&amp;gt;https://svn.osgeo.org/grass/grass-addons/raster&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== r.bilateral ====&lt;br /&gt;
&lt;br /&gt;
: [http://les-ejk.cz/files/programs/grass/r.bilateral.tgz r.bilateral] Bilateral filter is an edge-preserving filter, which combines domain and range filtering. It is written in C language.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
==== r.boxcount ====&lt;br /&gt;
&lt;br /&gt;
: r.boxcount and r.boxcount.sh calculate the fractal dimension for a given map. These are versions for grass6 of [http://www.ucl.ac.uk/~tcrnmar/ Mark Lake's modules] for grass43.&lt;br /&gt;
&lt;br /&gt;
: '''Authors:''' Mark Lake, grass6 port: Florian Kindl.&lt;br /&gt;
&lt;br /&gt;
Available via SVN:&lt;br /&gt;
&lt;br /&gt;
 svn co https://svn.osgeo.org/grass/grass-addons/raster/r.boxcount/&lt;br /&gt;
 svn co https://svn.osgeo.org/grass/grass-addons/raster/r.boxcount.sh/&lt;br /&gt;
&lt;br /&gt;
==== r.colors.quantiles ====&lt;br /&gt;
&lt;br /&gt;
: [http://trac.osgeo.org/grass/browser/grass-addons/raster/r.colors.quantiles/r.colors.quantiles r.colors.quantiles] is a shell script used to create raster colors rules based on nquantiles. It uses R and spgrass6 package (RGRASS).&lt;br /&gt;
&lt;br /&gt;
: '''Authors:''' Mathieu Grelier&lt;br /&gt;
&lt;br /&gt;
==== r.colors.stddev ====&lt;br /&gt;
&lt;br /&gt;
: [http://hamish.bowman.googlepages.com/grass_color_maps r.colors.stddev] ''moved into main archive''&lt;br /&gt;
&lt;br /&gt;
==== r.cpt2grass ====&lt;br /&gt;
&lt;br /&gt;
: [http://hamish.bowman.googlepages.com/grass_color_maps r.cpt2grass] is a GRASS script for importing a [http://www.soest.hawaii.edu/gmt/ GMT] .cpt color table into GRASS. It can save to a text file suitable for r.colors or automatically apply the color table to a raster map.&amp;lt;BR&amp;gt;For a large collection of GMT .cpt files see http://sview01.wiredworkplace.net/pub/cpt-city/&lt;br /&gt;
: Other palette ideas from [http://geography.uoregon.edu/datagraphics/color_scales.htm Univ. Oregon] and [http://oceancolor.gsfc.nasa.gov/PRODUCTS/colorbars.html NASA/Goddard's OceanColor] (latter partially translated for use with GRASS on the [http://trac.osgeo.org/grass/browser/grass-addons/raster/r.colors.tools/palettes grass-addons SVN]).&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
==== r.csr ====&lt;br /&gt;
&lt;br /&gt;
: [http://www.chrisgarstin.com/stuff/r.csr r.csr] integrates several Grass programs to produce colored, shaded-relief rasters in one step. Accepts single or multiple elevation/bathymetry maps as input; optionally will fill data holidays with 3x3 median filter, multiple times, if required; can apply color maps from a) input raster, b) another raster in MAPSET, or c) from a rules file; otherwise, rainbow colorbar is applied. Output colored, shaded-relief rasters can optionally be exported to tiff format if the appropriate flag is given. Shading parameters can be modified, though useful defaults are given.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Eric Patton&lt;br /&gt;
&lt;br /&gt;
==== r.cva ====&lt;br /&gt;
&lt;br /&gt;
: [http://www.ucl.ac.uk/~tcrnmar/GIS/r.cva.html r.cva] is a cumulative viewshed analysis module. It is an advanced version of the {{cmd|r.los}} program.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' [http://www.ucl.ac.uk/~tcrnmar/ Mark Lake]&lt;br /&gt;
&lt;br /&gt;
==== r.denoise ====&lt;br /&gt;
&lt;br /&gt;
: [http://trac.osgeo.org/grass/browser/grass-addons/raster/r.denoise r.denoise] denoises (smooths/despeckles) topographic data, particular DEMs derived from radar data (including SRTM), using Xianfang Sun's [http://www.cs.cf.ac.uk/meshfiltering/index_files/Page342.htm denoising algorithm].  It is designed to preserve sharp edges and to denoise with minimal changes to the original data.  See the [http://personalpages.manchester.ac.uk/staff/john.stevenson/mdenoise/r.denoise.html manual pages] for details.  Further information on Sun's denoising algorithm, including an example, is available [http://personalpages.manchester.ac.uk/staff/john.stevenson/mdenoise here].&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' John Stevenson&lt;br /&gt;
&lt;br /&gt;
==== r.dominant_dir.m and r.calc_terraflow_dir.m ====&lt;br /&gt;
&lt;br /&gt;
: [http://trac.osgeo.org/grass/browser/grass-addons/raster/r.terraflow.tools dominant_dir.m and calc_terraflow_dir.m] are two Matlab scripts for determining the dominant flow direction from a r.terraflow MFD map and converting into a GRASS aspect map for use with d.rast.arrow, etc.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
==== r.eucdist ====&lt;br /&gt;
&lt;br /&gt;
: [http://david.p.finlayson.googlepages.com/r.eucdist r.eucdist] creates a raster map estimating the euclidean distance from known cells.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' David Finlayson&lt;br /&gt;
&lt;br /&gt;
==== r.fragment ====&lt;br /&gt;
&lt;br /&gt;
: [http://www.chrisgarstin.com/stuff/r.fragment r.fragment] fragments a raster into a user-defined set of smaller tiles according to an input number of rows and columns. &lt;br /&gt;
: '''Author:''' Eric Patton&lt;br /&gt;
&lt;br /&gt;
==== r.game_of_life ====&lt;br /&gt;
&lt;br /&gt;
: [http://trac.osgeo.org/grass/browser/grass-addons/raster/r.game_of_life r.game_of_life] is a shell script which runs Conway's classic Game of Life using GRASS raster modules. It is meant to demonstrate how easy it is to program cellular automata in GRASS as well as various 3D raster volume and time series visualization techniques.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
==== r.gauss ====&lt;br /&gt;
&lt;br /&gt;
: [http://www.les-ejk.cz/files/programs/grass/r.gauss.tgz r.gauss] is Gaussian and Laplacian of Gaussian filter for GRASS. It is written in C language.&lt;br /&gt;
&lt;br /&gt;
:'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
==== r.gradgrid4 ====&lt;br /&gt;
&lt;br /&gt;
: [http://www.uibk.ac.at/geographie/personal/mergili/gradgrid4.zip gradgrid4] is a tool for interpolating values of discrete data points to a raster map, applying a local regression approach with a predictor raster. The model is based on shell and python scripts as well as an R batchfile. It was tested on Fedora Core 6 with GRASS 6.2.1 and R 2.5.1, but should work under most UNIX systems. After unzipping the gradgrid4 folder, store it at any place in your local file system. In the subfolder docs you can find a manual and a publication draft with a detailed description of the concept and the example of an application. The subfolder testloc constitutes a GRASS location with test data.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Martin Mergili&lt;br /&gt;
&lt;br /&gt;
==== r.in.onearth ====&lt;br /&gt;
&lt;br /&gt;
: [http://www-pool.math.tu-berlin.de/~soeren/grass/modules/ r.in.onearth] for download and import satellite images direct from the NASA onearth WMS server into GRASS.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Soeren Gebbert&lt;br /&gt;
&lt;br /&gt;
==== r.in.wms (.py) ====&lt;br /&gt;
&lt;br /&gt;
: [http://les-ejk.cz/files/programs/grass/r.in.wms.tgz r.in.wms] for download and import maps direct from  WMS servers into GRASS. This script is written in Python Programming language. Note GRASS 6.2+ provides a shell script version of r.in.wms, take care of which one is actually being run.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
==== r.inund.fluv ====&lt;br /&gt;
&lt;br /&gt;
: [https://svn.osgeo.org/grass/grass-addons/raster/r.inund.fluv/ r.inund.fluv]This command allows to obtain a fluvial potentially inundation map given a high-resolution DTM of the area surrounding the river and a water surface profile calculated through an 1-D hydrodinamic model. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
: '''Authors:''' Roberto Marzocchi, Bianca Federici, Domenico Sguerso&lt;br /&gt;
&lt;br /&gt;
==== r.isoregions ====&lt;br /&gt;
&lt;br /&gt;
: [http://trac.osgeo.org/grass/browser/grass-addons/raster/r.isoregions/r.isoregions r.isoregions] allows isoregions creation from a GRASS raster map. &lt;br /&gt;
&lt;br /&gt;
: '''Authors:''' Mathieu Grelier&lt;br /&gt;
&lt;br /&gt;
==== r.interp.mask ====&lt;br /&gt;
&lt;br /&gt;
: [http://david.p.finlayson.googlepages.com/r.interp.mask r.interp.mask] Creates a user-specified buffer around interpolation points that can be used as a MASK to prevent or clip excessive extrapolation artifacts. This works much better than a standard convex hull around the points.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' David Finlayson&lt;br /&gt;
&lt;br /&gt;
==== r.li ====&lt;br /&gt;
&lt;br /&gt;
: [http://www.faunalia.it/download/r_li/ r.li] is a more flexible and faster replacement of the old r.le. '''''Moved into 6.3-SVN'''''.&lt;br /&gt;
&lt;br /&gt;
: '''Authors:''' Claudio Porta, Davide Spano, Serena Pallecchi, [http://www.faunalia.it Faunalia]&lt;br /&gt;
&lt;br /&gt;
==== r.local_max.pl ====&lt;br /&gt;
&lt;br /&gt;
: [http://les-ejk.cz/files/programs/local_max.pl Local maxima] is a Perl script for &amp;lt;code&amp;gt;r.mapcalc&amp;lt;/code&amp;gt;. It detects local maxima of the image.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
==== r.mandelbrot ====&lt;br /&gt;
&lt;br /&gt;
: [http://grasslab.gisix.com/scripts/r.mandelbrot r.mandelbrot] is a shell script to calculate the Mandelbrot set.- for GRASS versions 6.X.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Peter Löwe&lt;br /&gt;
&lt;br /&gt;
==== mcda====&lt;br /&gt;
&lt;br /&gt;
: mcda suite is a toolset for geographics multi-criteria decision aiding and data analysis based on ELECTRE (r.mcda.electre), REGIME (r.mcda.regime) and FUZZY (r.mcda.fuzzy) algorithm. The module r.roughset is also included  for geographics rough set analisys and knowledge discovery based on rough set library. It is written in C language for GRASS versions 6.X.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Gianluca Massei (g_massa@libero.it ) - Antonio Boggia&lt;br /&gt;
&lt;br /&gt;
Available via SVN:&lt;br /&gt;
&lt;br /&gt;
 svn co https://svn.osgeo.org/grass/grass-addons/raster/mcda/&lt;br /&gt;
&lt;br /&gt;
==== r.mlv ====&lt;br /&gt;
&lt;br /&gt;
: [http://les-ejk.cz/files/programs/grass/r.mlv.tgz r.mlv] is Mean of least variance filter for GRASS. It is an edge-preserving (or even edge-enhacing) filter, which should serve for removing additive noise from images. It is written in C language.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
==== r.out.jpeg ====&lt;br /&gt;
&lt;br /&gt;
: [http://www.geospatial.it/allegri/grass/r.out.jpeg_ r.out.jpeg] is a simple GRASS script to export georeferenced JPEG images from rasters, keeping the associated color table. It is a two-step export: first a ppm file is created, then it is converted to jpeg usgin the &amp;quot;convert&amp;quot; command from ImageMagick&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Giovanni Allegri&lt;br /&gt;
&lt;br /&gt;
==== r.out.gmap ====&lt;br /&gt;
&lt;br /&gt;
: [http://trac.osgeo.org/grass/browser/grass-addons/raster/r.out.gmap r.out.gmap] outputs GRASS raster map into set of image tiles&lt;br /&gt;
following the tiling scheme of Google Maps and Microsoft Virtual Earth.&lt;br /&gt;
&amp;lt;BR&amp;gt;Read more in the OSGeo Journal [http://www.osgeo.org/journal Volume 5 (2009, to appear)]&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Tomas Cebecauer&lt;br /&gt;
&lt;br /&gt;
==== r.out.gmt ====&lt;br /&gt;
&lt;br /&gt;
: [http://trac.osgeo.org/grass/browser/grass-addons/raster/r.out.gmt r.out.gmt] is a GRASS script for exporting a GRASS raster map into a [http://www.soest.hawaii.edu/gmt/ GMT] grid file. It also creates a GMT color table from the data and can generate some GMT commands for plotting a postscript file. (code is experimental, but functional)&amp;lt;BR&amp;gt;see  also http://169.237.35.250/~dylan/grass_user_group/#GMT_and_GRASS-overview&lt;br /&gt;
&lt;br /&gt;
: '''Authors:''' Hamish Bowman, Dylan Beaudette&lt;br /&gt;
&lt;br /&gt;
==== r.out.gmt2 ====&lt;br /&gt;
&lt;br /&gt;
: [http://trac.osgeo.org/grass/browser/grass-addons/raster/r.out.gmt2 r.out.gmt2] is a modified version of Hamish's r.out.gmt.  Added options for title, xlabel, ylabel, comment, and map width.  Removed any settings that can be changed by gmtset for more flexibility.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Huidae Cho, Hamish Bowman, Dylan Beaudette&lt;br /&gt;
&lt;br /&gt;
==== r.pack ====&lt;br /&gt;
&lt;br /&gt;
: [http://trac.osgeo.org/grass/browser/grass-addons/raster/r.pack r.pack and r.unpack] are two GRASS scripts for transfering raster maps to another computer as a single file.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
==== r.roughness ====&lt;br /&gt;
&lt;br /&gt;
: [http://trac.osgeo.org/grass/browser/grass-addons/raster/r.roughness/r.roughness.sh r.roughness.sh] is a shell script to calculate the surface roughness of a DEM, using r.surf.area and v.surf.rst. (for GRASS versions 6.1 and above)&lt;br /&gt;
&lt;br /&gt;
[http://www.igc.usp.br/pessoais/guano/downloads/r.roughness60 r.roughness60] - for GRASS versions 6.0.X&lt;br /&gt;
&lt;br /&gt;
[http://trac.osgeo.org/grass/browser/grass-addons/raster/r.roughness/r.roughness.window.area r.roughness.window.area] - calculate surface roughness as the ratio of real (surface) area and planar area, using a moving-window approach.&lt;br /&gt;
&lt;br /&gt;
[http://trac.osgeo.org/grass/browser/grass-addons/raster/r.roughness/r.roughness.window.vector r.roughness.window.vector] - calculate surface roughness as vector dispersion, using a moving-window approach. Resulting maps are: Vector Strength (R) and Inverted Fisher's k parameter. &lt;br /&gt;
&lt;br /&gt;
[http://trac.osgeo.org/grass/browser/grass-addons/raster/r.roughness/r.roughness.window.vector.html r.roughness.window.vector.html] - provisional help page for r.roughness.window.vector.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Carlos Henrique Grohmann&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Available via SVN:&lt;br /&gt;
&lt;br /&gt;
 svn co https://svn.osgeo.org/grass/grass-addons/raster/r.roughness/&lt;br /&gt;
&lt;br /&gt;
==== r.roughset ====&lt;br /&gt;
&lt;br /&gt;
: r.roughset is a module for geographics rough set analisys and knowledge discovery based on rough set library. It is written in C language for GRASS versions 6.X.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Gianluca Massei (g_massa@libero.it ) - Antonio Boggia&lt;br /&gt;
&lt;br /&gt;
Available via SVN:&lt;br /&gt;
&lt;br /&gt;
 svn co https://svn.osgeo.org/grass/grass-addons/raster/mcda/r.roughset/&lt;br /&gt;
&lt;br /&gt;
==== r.smoothpatch ====&lt;br /&gt;
&lt;br /&gt;
: [http://david.p.finlayson.googlepages.com/r.smoothpatch r.smoothpatch] creates a composite of two rasters using a distance-weighted average across the transition to smooth the edges.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' David Finlayson&lt;br /&gt;
&lt;br /&gt;
==== r.soils.texture ====&lt;br /&gt;
&lt;br /&gt;
: r.soils.texture is a module to define soils texture from sand and clay raster file with a schema text file (now FAO,USDA and ISSS are available). It is written in C language. - for GRASS versions 6.x - For bugs and suggest: g_massa@libero.it &lt;br /&gt;
&lt;br /&gt;
:'''Author:''' Gianluca Massei&lt;br /&gt;
&lt;br /&gt;
Available via SVN:&lt;br /&gt;
&lt;br /&gt;
 svn co https://svn.osgeo.org/grass/grass-addons/raster/r.soils.texture/&lt;br /&gt;
&lt;br /&gt;
==== r.surf.nnbathy ====&lt;br /&gt;
&lt;br /&gt;
: [http://www.sieczka.org/programy_en.html r.surf.nnbathy] interpolates a surface from a raster input using Pavel Sakov's [http://www.sieczka.org/prog/grass/nn-v.1.80.tar.gz nn] natural neighbor interpolation library. Provides triangulation, Sibson natural neighbor interpolation and non-Sibsonian interpolation.&lt;br /&gt;
: See the [http://code.google.com/p/nn-c/ NN project page] at Google Code.&lt;br /&gt;
&amp;lt;!-- original nn site is gone: http://web.archive.org/web/20071009145622/http://www.marine.csiro.au/~sakov/&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Maciej Sieczka&lt;br /&gt;
&lt;br /&gt;
==== r.surf.volcano ====&lt;br /&gt;
&lt;br /&gt;
: [http://trac.osgeo.org/grass/browser/grass-addons/raster/r.surf.volcano r.surf.volcano] creates an artificial surface resembling a seamount or cone volcano. The user can alter the size and shape of the mountain and optionally roughen its surface. Available decay functions are  polynomial, Gaussian, Lorentzian, logarithmic, and exponential.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
==== r.terracost ====&lt;br /&gt;
&lt;br /&gt;
[http://www.bowdoin.edu/~ltoma/research.html r.terracost] Scalable approach for computing least-cost-path surfaces on massive grid terrains.&amp;lt;BR&amp;gt;'''Lead author''': Laura Toma&lt;br /&gt;
&lt;br /&gt;
Available via SVN:&lt;br /&gt;
  svn co https://svn.osgeo.org/grass/grass-addons/raster/r.terracost&lt;br /&gt;
&lt;br /&gt;
==== r.tileset ====&lt;br /&gt;
&lt;br /&gt;
: ''{{cmd|r.tileset}} moved into main archive''&lt;br /&gt;
&lt;br /&gt;
==== r.traveltime ====&lt;br /&gt;
&lt;br /&gt;
: [http://jesbergwetter.twoday.net/stories/4845555/ r.traveltime] computes the travel time of surface runoff to an outlet. The program starts at the basin outlet and calculates the travel time at each raster cell recursively. A drainage area related threhold considers even  surface and also channel runoff. Travel times are derived by assuming kinematic wave approximation. The results can be used to derive a time-area function. This might be usefull for precipitation-runoff calculations (estimation of flood predictions) with a lumped hydrologic model (user-specified unit hydrograph).&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Kristian Förster&lt;br /&gt;
&lt;br /&gt;
==== r.univar.zonal ====&lt;br /&gt;
&lt;br /&gt;
: [http://trac.osgeo.org/grass/browser/grass-addons/raster/r.univar2.zonal r.univar.zonal] is similar to r.univar, but calculates statistics separately for each category(zone) present in the separate input map used to define zones (zonal statistics). The output can be like the one of r.univar or in easier to read table format and can be written to a file.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Markus Metz&lt;br /&gt;
&lt;br /&gt;
Available via SVN:&lt;br /&gt;
&lt;br /&gt;
 svn co https://svn.osgeo.org/grass/grass-addons/raster/r.univar2.zonal&lt;br /&gt;
&lt;br /&gt;
==== r.viewshed ====&lt;br /&gt;
&lt;br /&gt;
: r.viewshed is a module for extremely fast line of sight analysis (replaces the slow r.los). It is written in C language for GRASS versions 6.X/7.x.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Laura Toma, USA&lt;br /&gt;
&lt;br /&gt;
Available via SVN:&lt;br /&gt;
&lt;br /&gt;
 svn co https://svn.osgeo.org/grass/grass-addons/raster/r.viewshed&lt;br /&gt;
&lt;br /&gt;
Once {{trac|390}} is solved, it will substitute r.los.&lt;br /&gt;
&lt;br /&gt;
==== r.zc.pl ====&lt;br /&gt;
&lt;br /&gt;
: [http://les-ejk.cz/files/programs/zc.pl Zero crossing] is a simple Perl script, finds the ,,zero crossings`` from the Laplacian of Gaussian filter (see above). It is really &amp;lt;em&amp;gt;very&amp;lt;/em&amp;gt; simple, the edges don't need to be really on that pixel, where they are detected, no interpolation is performed.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
==== GIPE ====&lt;br /&gt;
&lt;br /&gt;
: The GRASS Image Processing Environment (GIPE) has USLE, Energy-balance and radiance-reflectance correction models.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Yann Chemin (unless specified otherwise).&lt;br /&gt;
   &lt;br /&gt;
 svn co https://svn.osgeo.org/grass/grass-addons/gipe&lt;br /&gt;
&lt;br /&gt;
Remark: This is progressively moved to main GRASS SVN (aka GRASS 7)&lt;br /&gt;
&lt;br /&gt;
:* r.hydro.CASC2D, ported from GRASS 5.x version, is temporarily here waiting to return to main GRASS.&lt;br /&gt;
&lt;br /&gt;
:* r.soiltex2prop creates porosity, Saturated Hydraulic conductivity (Ksat) and wetting front pressure head (Hf) from percentage of sand and clay after Rawls et al., 1990. This is a must for r.hydro.CASC2D.&lt;br /&gt;
&lt;br /&gt;
:* i.biomass creates biomass growth map from fPAR, lightuse efficiency, water availability (or evap.fraction), Lat, doy and tsw.&lt;br /&gt;
&lt;br /&gt;
:* i.dn2ref.l7, r.dn2ref.ast create top of atmosphere reflectance for Landsat 7ETM+ and ASTER. These modules also have a flag for radiance output. Updated i.dn2ref.l7 to read .met calibration file.  &lt;br /&gt;
&lt;br /&gt;
:* i.dn2full.l[5,7] is an attempt to get all bands of Landsat[5,7] calibrated and corrected to either reflectance or temperature, reads only the .met file.  &lt;br /&gt;
&lt;br /&gt;
:* i.dn2potrad.l[5,7] is an attempt to get ET potential from DN of Landsat 7 (Careful! No Atmospheric correction!).  &lt;br /&gt;
&lt;br /&gt;
:* i.eb.* are a set of 10+ GRASS modules that together perform the main functions of  the SEBAL model (Bastiaanssen, 1995). Those functions include (but are not limited to) Soil heat flux, sensible heat flux, net radiation, evaporative fraction at satellite overpass, diurnal actual evapotranspiration, momentum roughness length, etc. These  modules are also part of any Energy-Balance related processing. &lt;br /&gt;
&lt;br /&gt;
:* i.evapo.potrad creates diurnal Potential evapotranspiration assuming all net radiation becomes ET, according to SEBAL model (Bastiaanssen, 1995). This module also has a flag for diurnal net radiation as required by SEBAL in i.eb.eta. &lt;br /&gt;
&lt;br /&gt;
:* i.evapo.SENAY creates actual evapotranspiration following the regional method of Senay (2007). &lt;br /&gt;
&lt;br /&gt;
:* i.lmf creates a Local Maximum Fitting on the temporal dimension of the multi-date input dataset, working, but more precision still to be added.&lt;br /&gt;
&lt;br /&gt;
:* i.vi.mpi is the mpi version of i.vi for cluster GRASS GIS education (no speed up here!) '''Author:''' Shamim Akhter &lt;br /&gt;
&lt;br /&gt;
:* i.modis.stateqa extracts State Quality Assessment information from Modis 500m (MOD09A) products.&lt;br /&gt;
&lt;br /&gt;
:* i.water creates a Water Mask from NDVI and Albedo, or specifically for Modis: NDVI and Band 7.&lt;br /&gt;
&lt;br /&gt;
:* i.wi creates a given Water Index (only one so far).&lt;br /&gt;
&lt;br /&gt;
==== HydroFOSS ====&lt;br /&gt;
&lt;br /&gt;
: HydroFOSS - a GIS embedded approach for Free &amp;amp; Open Source Hydrological modeling.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Massimiliano Cannata&lt;br /&gt;
 &lt;br /&gt;
 svn co https://svn.osgeo.org/grass/grass-addons/HydroFOSS/&lt;br /&gt;
&lt;br /&gt;
==== Hikereport ====&lt;br /&gt;
&lt;br /&gt;
: python script that computes length, cumulative uphill and downhill, average slopes on an interactively drawn path. Based on r.profile's output.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Stefano Negri&lt;br /&gt;
&lt;br /&gt;
 http://tracce.wordpress.com/?attachment_id=71&lt;br /&gt;
&lt;br /&gt;
=== Misc add-ons===&lt;br /&gt;
&lt;br /&gt;
==== m.eigensystem ====&lt;br /&gt;
&lt;br /&gt;
m.eigensystem - Computes eigen values and eigen vectors for square matrices.&lt;br /&gt;
&lt;br /&gt;
: http://svn.osgeo.org/grass/grass-addons/misc/m.eigensystem/&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Michael Shapiro&lt;br /&gt;
&lt;br /&gt;
===Database add-ons===&lt;br /&gt;
==== db.join ====&lt;br /&gt;
&lt;br /&gt;
: Table joining: join one table into another through common attributes&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Markus Neteler. Available via SVN:&lt;br /&gt;
&lt;br /&gt;
   svn co https://svn.osgeo.org/grass/grass-addons/database/db.join/&lt;br /&gt;
or&lt;br /&gt;
   g.extension db.join&lt;br /&gt;
&lt;br /&gt;
===General add-ons===&lt;br /&gt;
&lt;br /&gt;
==== g.laptop.sh ====&lt;br /&gt;
&lt;br /&gt;
: [http://www.nature-consult.de/dassau/g.laptop/g.laptop.sh g.laptop.sh] is an interactive shell script to extract raster and vector data from current Location into a new one. Data can be copied or extracted in current or original resolution and region extend. This script was written to extract smaller parts of a GRASS location to be able to present them on a laptop without the necessity to transfer huge data. Maps do not have to be in the same mapset.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Otto Dassau &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Readline completion ====&lt;br /&gt;
&lt;br /&gt;
: '''''Readline completion''''' for GRASS commands under the bash shell: [http://www.sorokine.info/grass-complete/ grass-complete] won't clutter the environment but needs to be installed; [http://dcalvelo.free.fr/grass/grass_rlcompleter.sh grass_rlcompleter.sh] needs almost no installation but will pollute the environment. Grass-Complete currently requires Bash version 2.05 for proper install.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Alexandre Sorokine (grass-complete), Daniel Calvelo (grass_rlcompleter.sh)&lt;br /&gt;
&lt;br /&gt;
==== g.region.point ====&lt;br /&gt;
&lt;br /&gt;
: [http://trac.osgeo.org/grass/browser/grass-addons/general/g.region.point g.region.point] is a shell script which resets the computational region to a square box around a given coordinate. It is intended for use within GRASS scripts to speed up processing by limiting expensive raster calculations to a small area of interest.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
==== g.linke_by_day ====&lt;br /&gt;
&lt;br /&gt;
: [http://trac.osgeo.org/grass/browser/grass-addons/raster/r.sun.tools/ g.linke_by_day] is a python script for [[r.sun]] which interpolates a Linke turbidity value for a given day of the year based on monthly values edited into the script.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
==== g.xlist ====&lt;br /&gt;
&lt;br /&gt;
: [http://trac.osgeo.org/grass/browser/grass-addons/general/g.xlist g.xlist] is a C implementation of g.mlist. g.xlist searches for data files matching a pattern given by wildcards or POSIX Extended Regular Expressions. POSIX regex(3) functions are required.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Huidae Cho&lt;br /&gt;
&lt;br /&gt;
==== g.xremove ====&lt;br /&gt;
&lt;br /&gt;
: [http://trac.osgeo.org/grass/browser/grass-addons/general/g.xremove g.xremove] is a C implementation of g.mremove. g.xremove removes data files matching a pattern given by wildcards or POSIX Extended Regular Expressions. POSIX regex(3) functions are required.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Huidae Cho&lt;br /&gt;
&lt;br /&gt;
=== Imagery add-ons ===&lt;br /&gt;
&lt;br /&gt;
See also&lt;br /&gt;
&lt;br /&gt;
 svn co https://svn.osgeo.org/grass/grass-addons/imagery&lt;br /&gt;
&lt;br /&gt;
==== GIPE ====&lt;br /&gt;
&lt;br /&gt;
GIPE (see also above in raster section) provides:&lt;br /&gt;
i.biomass, i.dn2potrad.l5, i.dn2potrad.l7, i.dn2ref.ast, i.eb.deltat, i.eb.disp, i.eb.eta, i.eb.evapfr, i.eb.g0, i.eb.h0, i.eb.h_SEBAL01, i.eb.h_SEBAL95, i.eb.h_iter, i.eb.molength, i.eb.netrad, i.eb.psi, i.eb.rah, i.eb.rohair, i.eb.ublend, i.eb.ustar, i.eb.wetdrypix, i.eb.z0m, i.eb.z0m0, i.evapo.PT, i.evapo.TSA, i.evapo.potrad, i.evapo.senay, i.evapo.time_integration, i.lmf, i.modis.stateqa, i.sattime, i.vi.grid, i.vi.mpi, i.water, i.wi&lt;br /&gt;
&lt;br /&gt;
 svn co https://svn.osgeo.org/grass/grass-addons/gipe/&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Yann Chemin&lt;br /&gt;
&lt;br /&gt;
==== i.landsat.toar ====&lt;br /&gt;
&lt;br /&gt;
Transform calibrated digital number of Landsat products to top-of-atmosphere radiance or top-of-atmosphere reflectance and temperature (band 6 of the sensors TM and ETM+). Optionally, used to calculate the at-surface radiance or reflectance with atmospheric correction (DOS method).&lt;br /&gt;
&lt;br /&gt;
svn co https://svn.osgeo.org/grass/grass-addons/imagery/i.landsat.toar&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' E. Jorge Tizado&lt;br /&gt;
&lt;br /&gt;
==== i.points.reproj ====&lt;br /&gt;
&lt;br /&gt;
: [http://trac.osgeo.org/grass/browser/grass-addons/imagery/i.points.reproj i.points.reproj] is a shell script that will use cs2cs to reproject the target coordinates of a group's POINTS file. By running i.rectify directly to the new target projection, a generation of resampling data loss can be avoided (versus i.rectify + r.proj). On the other hand, i.rectify does not calculate cell resolution well if the map is to be rotated ([http://intevation.de/rt/webrt?serial_num=3296 bug #3296]), in those cases i.rectify+r.proj may be the better option.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
==== i.pr ====&lt;br /&gt;
&lt;br /&gt;
: Image classification: implements k-NN (multiclass), classification trees (multiclass), maximum likelihood (multiclass), Support Vector Machines (binary), bagging versions of all the base classifiers, AdaBoost for binary trees and support vector machines. It allows feature manipulation (normalization, principal components,...). It also implements feature selection techniques (RFE, E-RFE,...), statistical tests on variables, tools for resampling (cross-validation and bootstrap) and cost-sensitive techniques for trees and support vector machines.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Stefano Merler. Available via SVN:&lt;br /&gt;
&lt;br /&gt;
   svn co https://svn.osgeo.org/grass/grass-addons/imagery/i.pr&lt;br /&gt;
&lt;br /&gt;
==== i.spec.sam ====&lt;br /&gt;
&lt;br /&gt;
: Spectral Angle mapping&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Markus Neteler. Available via SVN:&lt;br /&gt;
&lt;br /&gt;
   svn co https://svn.osgeo.org/grass/grass-addons/imagery/i.spec.sam/&lt;br /&gt;
&lt;br /&gt;
==== i.spec.unmix ====&lt;br /&gt;
&lt;br /&gt;
: Spectral unmixing&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Markus Neteler. Available via SVN:&lt;br /&gt;
&lt;br /&gt;
   svn co https://svn.osgeo.org/grass/grass-addons/imagery/i.spec.unmix/&lt;br /&gt;
&lt;br /&gt;
==== i.warp ====&lt;br /&gt;
&lt;br /&gt;
: [http://trac.osgeo.org/grass/browser/grass-addons/imagery/i.warp i.warp] is a shell script that will use gdalwarp to rectify a raw input image using thin plate splines. The map should be imported into GRASS with r.in.gdal and GCPs set with i.points. Input is the raw image (GeoTIFF, JPEG, etc). Output is a GeoTIFF in the imagery group's target location's map projection. Requires a recent (early 2006) version of GRASS 6.1, or newer.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
=== Display add-ons ===&lt;br /&gt;
&lt;br /&gt;
See also&lt;br /&gt;
&lt;br /&gt;
 svn co https://svn.osgeo.org/grass/grass-addons/display&lt;br /&gt;
&lt;br /&gt;
==== d.edit.rast ====&lt;br /&gt;
&lt;br /&gt;
: [http://trac.osgeo.org/grass/browser/grass-addons/display/d.edit.rast d.edit.rast] edits cells in an existing raster map displayed on the current monitor.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Huidae Cho&lt;br /&gt;
&lt;br /&gt;
==== d.frame.quarter ====&lt;br /&gt;
&lt;br /&gt;
: ('''obsolete''') [http://trac.osgeo.org/grass/browser/grass-addons/display/d.frame.split d.frame.quarter] is a shell script that will split the display into four quadrants (or sixths) using ''d.frame''. Individual frames are named ''uno, dos, tres, cuatro'', and ''full_screen''.&lt;br /&gt;
: Replaced by {{cmd|d.split.frame}} in main.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
==== d.frame.split ====&lt;br /&gt;
&lt;br /&gt;
: ''d.frame.split moved into main archive as {{cmd|d.split.frame}}''&lt;br /&gt;
&lt;br /&gt;
==== d.hyperlink ====&lt;br /&gt;
&lt;br /&gt;
: [ftp://gsca.nrcan.gc.ca/outgoing/Patton/Grass/Scripts/d.hyperlink.tar.bz2 d.hyperlink] is an interactive shell script that allows the viewing of hyperlinked images from a vector's attribute table in an external image viewer. Queries can be made via SQL statements or interactive mouse-clicking. The attribute table must be pre-populated with a column containing the image to link the vector to; the user also specifies the image folder in the current MAPSET where the images are located. The script currently supports gimp, Eye of Gnome, gthumb, gpdf, and Inkscape image viewers.&lt;br /&gt;
&lt;br /&gt;
: '''Author: '''Eric Patton&lt;br /&gt;
&lt;br /&gt;
==== d.mark ====&lt;br /&gt;
&lt;br /&gt;
: [http://trac.osgeo.org/grass/browser/grass-addons/display/d.shortcuts d.mark] is a shell script that quickly displays a marker on the display at a given coordinate.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Hamish Bowman &lt;br /&gt;
&lt;br /&gt;
==== d.region.box ====&lt;br /&gt;
&lt;br /&gt;
: [http://trac.osgeo.org/grass/browser/grass-addons/display/d.region.box d.region.box] is a shell script that quickly displays a box around the current region.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
==== d.stations ====&lt;br /&gt;
&lt;br /&gt;
: [http://trac.osgeo.org/grass/browser/grass-addons/display/d.shortcuts   d.stations] is a shell script that quickly displays vector points (or sites for GRASS 5.4 and below).&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Hamish Bowman &lt;br /&gt;
&lt;br /&gt;
==== d.varea ====&lt;br /&gt;
&lt;br /&gt;
: [http://trac.osgeo.org/grass/browser/grass-addons/display/d.shortcuts d.varea] is a shell script that quickly displays vector areas.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
==== pd-GRASS ====&lt;br /&gt;
&lt;br /&gt;
: [http://www.ornl.gov/sci/gist/software/grass/ pd-GRASS]: Parallel Display for GRASS GIS&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Alex Sorokine&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== [[IconSymbols]] ====&lt;br /&gt;
&lt;br /&gt;
* [[IconSymbols|Symbols]] which can be used with ''d.vect, d.graph'', and ''ps.map''.&lt;br /&gt;
&lt;br /&gt;
=== Postscript add-ons ===&lt;br /&gt;
&lt;br /&gt;
''See also [[ps.map scripts|ps.map samples and templates]]''.&lt;br /&gt;
&lt;br /&gt;
==== ps.atlas ====&lt;br /&gt;
&lt;br /&gt;
: [http://les-ejk.cz/programs/grass/ps.atlas ps.atlas] is a shell script that makes more maps on current region according to input *.psmap file. General map can be stored as vector file. The resulting *.eps maps can be automatically converted to *.pdf files.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
==== [[AreaFillPatterns]] ====&lt;br /&gt;
&lt;br /&gt;
* Hatches for ps.map's vareas&lt;br /&gt;
&lt;br /&gt;
===GRASS and UMN Mapserver===&lt;br /&gt;
&lt;br /&gt;
* [http://www.mail-archive.com/mapserver-users@lists.umn.edu/msg00086.html See interesting posting]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Community]]&lt;br /&gt;
[[Category:Development]]&lt;br /&gt;
[[Category:Documentation]]&lt;br /&gt;
[[Category:Installation]]&lt;/div&gt;</summary>
		<author><name>⚠️EricPatton</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=File:Step_6_Open_Background_Raster.jpg&amp;diff=8212</id>
		<title>File:Step 6 Open Background Raster.jpg</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=File:Step_6_Open_Background_Raster.jpg&amp;diff=8212"/>
		<updated>2009-02-16T21:54:11Z</updated>

		<summary type="html">&lt;p&gt;⚠️EricPatton: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>⚠️EricPatton</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=File:Step_5_Create_Table.png&amp;diff=8211</id>
		<title>File:Step 5 Create Table.png</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=File:Step_5_Create_Table.png&amp;diff=8211"/>
		<updated>2009-02-16T17:49:32Z</updated>

		<summary type="html">&lt;p&gt;⚠️EricPatton: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>⚠️EricPatton</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=File:Step_4_-New_vector_name.png&amp;diff=8210</id>
		<title>File:Step 4 -New vector name.png</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=File:Step_4_-New_vector_name.png&amp;diff=8210"/>
		<updated>2009-02-16T17:46:51Z</updated>

		<summary type="html">&lt;p&gt;⚠️EricPatton: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>⚠️EricPatton</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=File:Step_3_Create_New_GRASS_Vector.png&amp;diff=8209</id>
		<title>File:Step 3 Create New GRASS Vector.png</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=File:Step_3_Create_New_GRASS_Vector.png&amp;diff=8209"/>
		<updated>2009-02-16T17:44:49Z</updated>

		<summary type="html">&lt;p&gt;⚠️EricPatton: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>⚠️EricPatton</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=File:Step2_Select_GRASS_Mapset.png&amp;diff=8208</id>
		<title>File:Step2 Select GRASS Mapset.png</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=File:Step2_Select_GRASS_Mapset.png&amp;diff=8208"/>
		<updated>2009-02-16T17:40:38Z</updated>

		<summary type="html">&lt;p&gt;⚠️EricPatton: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>⚠️EricPatton</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=File:Step1_OpenGrassMapset.png&amp;diff=8207</id>
		<title>File:Step1 OpenGrassMapset.png</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=File:Step1_OpenGrassMapset.png&amp;diff=8207"/>
		<updated>2009-02-16T17:27:29Z</updated>

		<summary type="html">&lt;p&gt;⚠️EricPatton: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>⚠️EricPatton</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=Tips_and_Tricks&amp;diff=8206</id>
		<title>Tips and Tricks</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=Tips_and_Tricks&amp;diff=8206"/>
		<updated>2009-02-16T15:18:28Z</updated>

		<summary type="html">&lt;p&gt;⚠️EricPatton: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Tips and Tricks==&lt;br /&gt;
&lt;br /&gt;
===Using QGIS as a frontend to GRASS===&lt;br /&gt;
&lt;br /&gt;
* QGIS started as a simple viewer for geodata. And that's really what it still is: a simple-to-use geodata viewer with some editing capabilities. That's what it was designed to be and that's what it can do really well. QGIS does not have built-in capabilities for geodata processing and analysis.&lt;br /&gt;
&lt;br /&gt;
:However, a while back, Radim Blazek, who was then a core developer of the GRASS 6 system, decided to write a plugin for QGIS that would make it possible to access GRASS functionality from within the QGIS GUI.&lt;br /&gt;
&lt;br /&gt;
:And that's what you get today, when you download a binary version of QGIS for your platform: QGIS + GRASS 6 plus a plugin that makes using GRASS from QGIS simple and fun.&lt;br /&gt;
&amp;lt;!-- Benjamin Ducke on grass-user 18 Dec 2006 --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
QGIS can run as a frontend to GRASS. There is support for displaying maps, editing maps, and execution of simple GIS functions. The GDAL/OGR library is a requirement for that (but for GRASS anyway):&lt;br /&gt;
&lt;br /&gt;
* QGIS homepage:  http://qgis.org&lt;br /&gt;
* GDAL homepage:  http://www.gdal.org&lt;br /&gt;
&lt;br /&gt;
Here is a nice tutorial for editing vectors using QGIS as a frontend to GRASS: [[Editing_GRASS_vectors_with_QGIS]]&lt;br /&gt;
&lt;br /&gt;
To use GDAL and GRASS together, the GDAL-GRASS plugin must be installed:&lt;br /&gt;
&lt;br /&gt;
* [[Compile and install GRASS and QGIS with GDAL/OGR Plugin]]&lt;br /&gt;
&lt;br /&gt;
Test that the GDAL-GRASS plugin is available with this command:&amp;lt;BR&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
  gdalinfo --formats&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Look for a line like &amp;quot;GRASS (ro): GRASS Database Rasters (5.7+)&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Enable the QGIS GRASS plugin from QGIS: &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
  GUI: Plugins / Plugin Manager / Check the GRASS checkbox&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The GRASS toolbar should now be visible.&lt;br /&gt;
While not a firm requirement, it is easier to start QGIS from within a GRASS session.&lt;br /&gt;
&lt;br /&gt;
* [http://wiki.qgis.org/qgiswiki/GrassCookbook QGIS GRASS Cookbook] - Recipes for common tasks&lt;br /&gt;
&lt;br /&gt;
===Importing SRTM30plus data===&lt;br /&gt;
&lt;br /&gt;
SRTM30plus data consists of 33 files of global topography in the same format as the SRTM30 products distributed by the USGS EROS data center. The grid resolution is 30 second which is roughly one kilometer.&lt;br /&gt;
&lt;br /&gt;
Land data are based on the 1-km averages of topography derived from the USGS SRTM30 grided DEM data product created with data from the NASA Shuttle Radar Topography Mission. GTOPO30 data are used for high latitudes where SRTM data are not available.&lt;br /&gt;
&lt;br /&gt;
Ocean data are based on the Smith and Sandwell global 2-minute grid between latitudes +/- 72 degrees. Higher resolution grids have been added from the LDEO Ridge Multibeam Synthesis Project and the NGDC Coastal Relief Model. Arctic bathymetry is from the International Bathymetric Chart of the Oceans (IBCAO).&lt;br /&gt;
&lt;br /&gt;
All data are derived from public domain sources and these data are also in the public domain.&lt;br /&gt;
&lt;br /&gt;
GRASS 6 script &amp;lt;code&amp;gt;r.in.srtm&amp;lt;/code&amp;gt; described in GRASSNews vol. 3 won't work with this dataset (as it was made for the original SRTM HGT files). But you can import SRTM30plus tiles into GRASS this way:&lt;br /&gt;
&lt;br /&gt;
 r.in.bin -sb input=e020n40.Bathmetry.srtm output=e020n40_topex bytes=2 north=40 south=-10 east=60 west=20 r=6000 c=4800&lt;br /&gt;
 r.colors e020n40_topex rules=etopo2&lt;br /&gt;
&lt;br /&gt;
; Source&lt;br /&gt;
: GRASS Users Mailing List http://grass.itc.it/pipermail/grassuser/2005-August/030018.html&lt;br /&gt;
; Getting SRTM30plus tiles&lt;br /&gt;
: ftp://topex.ucsd.edu/pub/srtm30_plus/data&lt;br /&gt;
&lt;br /&gt;
=== GMT (The Generic Mapping Tools) ===&lt;br /&gt;
&lt;br /&gt;
* [[GRASS and GMT]]&lt;br /&gt;
&lt;br /&gt;
GMT (Generic Mapping Tools) is a Free software package for creating publication quality cartography.&lt;br /&gt;
&lt;br /&gt;
GMT homepage:  http://gmt.soest.hawaii.edu&lt;br /&gt;
&lt;br /&gt;
=== Interfacing R-Statistics with GRASS ===&lt;br /&gt;
&lt;br /&gt;
* [[GRASS_and_Rstat|GRASS and R]]&lt;br /&gt;
&lt;br /&gt;
GRASS may be combined with R-Statistics to create a very powerful geostatistical analysis platform.&lt;br /&gt;
&lt;br /&gt;
R-Statistics homepage  http://www.r-project.org&lt;br /&gt;
&lt;br /&gt;
===Using GRASS with an on-line Web-GIS===&lt;br /&gt;
&lt;br /&gt;
see:&lt;br /&gt;
&lt;br /&gt;
* [[GRASS and MapServer]]&lt;br /&gt;
* [[GRASS and PHP]]&lt;br /&gt;
* [[GRASS and Python]]&lt;br /&gt;
&lt;br /&gt;
(please expand)&lt;br /&gt;
&lt;br /&gt;
===Starting and running GRASS from a script===&lt;br /&gt;
&lt;br /&gt;
See [[GRASS and Shell]].&lt;br /&gt;
&lt;br /&gt;
===Running GRASS remotely on OS X===&lt;br /&gt;
&lt;br /&gt;
Tiger (OS 10.4) changed the default configuration of SSH from previous versions of OS X. You can no longer start  an ssh session with the -X flag and display the Tcl/Tk components of the GRASS GUI remotely. If you are running grass on OS X (10.4) between hosts on a network (i.e. running it on one machine but displaying it on another), you will need to use the &amp;quot;trusted forwarding&amp;quot; mode of SSH in order for the Tcl/Tk generated graphics, such as d.m or gis.m in order for the GUI graphics to make it through your connection. This can be done using the -Y flag when you start the ssh session:&lt;br /&gt;
&lt;br /&gt;
 ssh -Y remotehost&lt;br /&gt;
&lt;br /&gt;
or add this to ~/.ssh/config:&lt;br /&gt;
&lt;br /&gt;
 Host hostname&lt;br /&gt;
   ForwardX11 yes&lt;br /&gt;
   ForwardX11Trusted yes&lt;br /&gt;
&lt;br /&gt;
Using the -X flag, or simply turning on X11Forwarding in the SSH configuration files, is not enough:  the symptoms in this case are that a d.mon window will function fine, but none of the Tcl/Tk dialogues will work, failing with an error message complaining either about Wish not behaving as expected, or a &amp;quot;Bad Atom&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Documentation]]&lt;/div&gt;</summary>
		<author><name>⚠️EricPatton</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=Tips_and_Tricks&amp;diff=8205</id>
		<title>Tips and Tricks</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=Tips_and_Tricks&amp;diff=8205"/>
		<updated>2009-02-16T15:17:52Z</updated>

		<summary type="html">&lt;p&gt;⚠️EricPatton: Create link to Editing vectors using GIS page; for real this time.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Tips and Tricks==&lt;br /&gt;
&lt;br /&gt;
===Using QGIS as a frontend to GRASS===&lt;br /&gt;
&lt;br /&gt;
* QGIS started as a simple viewer for geodata. And that's really what it still is: a simple-to-use geodata viewer with some editing capabilities. That's what it was designed to be and that's what it can do really well. QGIS does not have built-in capabilities for geodata processing and analysis.&lt;br /&gt;
&lt;br /&gt;
:However, a while back, Radim Blazek, who was then a core developer of the GRASS 6 system, decided to write a plugin for QGIS that would make it possible to access GRASS functionality from within the QGIS GUI.&lt;br /&gt;
&lt;br /&gt;
:And that's what you get today, when you download a binary version of QGIS for your platform: QGIS + GRASS 6 plus a plugin that makes using GRASS from QGIS simple and fun.&lt;br /&gt;
&amp;lt;!-- Benjamin Ducke on grass-user 18 Dec 2006 --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
QGIS can run as a frontend to GRASS. There is support for displaying maps, editing maps, and execution of simple GIS functions. The GDAL/OGR library is a requirement for that (but for GRASS anyway):&lt;br /&gt;
&lt;br /&gt;
* QGIS homepage:  http://qgis.org&lt;br /&gt;
* GDAL homepage:  http://www.gdal.org&lt;br /&gt;
&lt;br /&gt;
Here is a nice tutorial for editing vectors using QGIS as a frontend to GRASS: [[Editing_GRASS_vectors_with_QGIS]]&lt;br /&gt;
&lt;br /&gt;
To use the two together, the GDAL-GRASS plugin must be installed:&lt;br /&gt;
&lt;br /&gt;
* [[Compile and install GRASS and QGIS with GDAL/OGR Plugin]]&lt;br /&gt;
&lt;br /&gt;
Test that the GDAL-GRASS plugin is available with this command:&amp;lt;BR&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
  gdalinfo --formats&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Look for a line like &amp;quot;GRASS (ro): GRASS Database Rasters (5.7+)&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Enable the QGIS GRASS plugin from QGIS: &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
  GUI: Plugins / Plugin Manager / Check the GRASS checkbox&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The GRASS toolbar should now be visible.&lt;br /&gt;
While not a firm requirement, it is easier to start QGIS from within a GRASS session.&lt;br /&gt;
&lt;br /&gt;
* [http://wiki.qgis.org/qgiswiki/GrassCookbook QGIS GRASS Cookbook] - Recipes for common tasks&lt;br /&gt;
&lt;br /&gt;
===Importing SRTM30plus data===&lt;br /&gt;
&lt;br /&gt;
SRTM30plus data consists of 33 files of global topography in the same format as the SRTM30 products distributed by the USGS EROS data center. The grid resolution is 30 second which is roughly one kilometer.&lt;br /&gt;
&lt;br /&gt;
Land data are based on the 1-km averages of topography derived from the USGS SRTM30 grided DEM data product created with data from the NASA Shuttle Radar Topography Mission. GTOPO30 data are used for high latitudes where SRTM data are not available.&lt;br /&gt;
&lt;br /&gt;
Ocean data are based on the Smith and Sandwell global 2-minute grid between latitudes +/- 72 degrees. Higher resolution grids have been added from the LDEO Ridge Multibeam Synthesis Project and the NGDC Coastal Relief Model. Arctic bathymetry is from the International Bathymetric Chart of the Oceans (IBCAO).&lt;br /&gt;
&lt;br /&gt;
All data are derived from public domain sources and these data are also in the public domain.&lt;br /&gt;
&lt;br /&gt;
GRASS 6 script &amp;lt;code&amp;gt;r.in.srtm&amp;lt;/code&amp;gt; described in GRASSNews vol. 3 won't work with this dataset (as it was made for the original SRTM HGT files). But you can import SRTM30plus tiles into GRASS this way:&lt;br /&gt;
&lt;br /&gt;
 r.in.bin -sb input=e020n40.Bathmetry.srtm output=e020n40_topex bytes=2 north=40 south=-10 east=60 west=20 r=6000 c=4800&lt;br /&gt;
 r.colors e020n40_topex rules=etopo2&lt;br /&gt;
&lt;br /&gt;
; Source&lt;br /&gt;
: GRASS Users Mailing List http://grass.itc.it/pipermail/grassuser/2005-August/030018.html&lt;br /&gt;
; Getting SRTM30plus tiles&lt;br /&gt;
: ftp://topex.ucsd.edu/pub/srtm30_plus/data&lt;br /&gt;
&lt;br /&gt;
=== GMT (The Generic Mapping Tools) ===&lt;br /&gt;
&lt;br /&gt;
* [[GRASS and GMT]]&lt;br /&gt;
&lt;br /&gt;
GMT (Generic Mapping Tools) is a Free software package for creating publication quality cartography.&lt;br /&gt;
&lt;br /&gt;
GMT homepage:  http://gmt.soest.hawaii.edu&lt;br /&gt;
&lt;br /&gt;
=== Interfacing R-Statistics with GRASS ===&lt;br /&gt;
&lt;br /&gt;
* [[GRASS_and_Rstat|GRASS and R]]&lt;br /&gt;
&lt;br /&gt;
GRASS may be combined with R-Statistics to create a very powerful geostatistical analysis platform.&lt;br /&gt;
&lt;br /&gt;
R-Statistics homepage  http://www.r-project.org&lt;br /&gt;
&lt;br /&gt;
===Using GRASS with an on-line Web-GIS===&lt;br /&gt;
&lt;br /&gt;
see:&lt;br /&gt;
&lt;br /&gt;
* [[GRASS and MapServer]]&lt;br /&gt;
* [[GRASS and PHP]]&lt;br /&gt;
* [[GRASS and Python]]&lt;br /&gt;
&lt;br /&gt;
(please expand)&lt;br /&gt;
&lt;br /&gt;
===Starting and running GRASS from a script===&lt;br /&gt;
&lt;br /&gt;
See [[GRASS and Shell]].&lt;br /&gt;
&lt;br /&gt;
===Running GRASS remotely on OS X===&lt;br /&gt;
&lt;br /&gt;
Tiger (OS 10.4) changed the default configuration of SSH from previous versions of OS X. You can no longer start  an ssh session with the -X flag and display the Tcl/Tk components of the GRASS GUI remotely. If you are running grass on OS X (10.4) between hosts on a network (i.e. running it on one machine but displaying it on another), you will need to use the &amp;quot;trusted forwarding&amp;quot; mode of SSH in order for the Tcl/Tk generated graphics, such as d.m or gis.m in order for the GUI graphics to make it through your connection. This can be done using the -Y flag when you start the ssh session:&lt;br /&gt;
&lt;br /&gt;
 ssh -Y remotehost&lt;br /&gt;
&lt;br /&gt;
or add this to ~/.ssh/config:&lt;br /&gt;
&lt;br /&gt;
 Host hostname&lt;br /&gt;
   ForwardX11 yes&lt;br /&gt;
   ForwardX11Trusted yes&lt;br /&gt;
&lt;br /&gt;
Using the -X flag, or simply turning on X11Forwarding in the SSH configuration files, is not enough:  the symptoms in this case are that a d.mon window will function fine, but none of the Tcl/Tk dialogues will work, failing with an error message complaining either about Wish not behaving as expected, or a &amp;quot;Bad Atom&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Documentation]]&lt;/div&gt;</summary>
		<author><name>⚠️EricPatton</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=Tips_and_Tricks&amp;diff=8204</id>
		<title>Tips and Tricks</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=Tips_and_Tricks&amp;diff=8204"/>
		<updated>2009-02-16T15:10:19Z</updated>

		<summary type="html">&lt;p&gt;⚠️EricPatton: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Tips and Tricks==&lt;br /&gt;
&lt;br /&gt;
===Using QGIS as a frontend to GRASS===&lt;br /&gt;
&lt;br /&gt;
* QGIS started as a simple viewer for geodata. And that's really what it still is: a simple-to-use geodata viewer with some editing capabilities. That's what it was designed to be and that's what it can do really well. QGIS does not have built-in capabilities for geodata processing and analysis.&lt;br /&gt;
&lt;br /&gt;
:However, a while back, Radim Blazek, who was then a core developer of the GRASS 6 system, decided to write a plugin for QGIS that would make it possible to access GRASS functionality from within the QGIS GUI.&lt;br /&gt;
&lt;br /&gt;
:And that's what you get today, when you download a binary version of QGIS for your platform: QGIS + GRASS 6 plus a plugin that makes using GRASS from QGIS simple and fun.&lt;br /&gt;
&amp;lt;!-- Benjamin Ducke on grass-user 18 Dec 2006 --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
QGIS can run as a frontend to GRASS. There is support for displaying maps, editing maps, and execution of simple GIS functions. The GDAL/OGR library is a requirement for that (but for GRASS anyway):&lt;br /&gt;
&lt;br /&gt;
* QGIS homepage:  http://qgis.org&lt;br /&gt;
* GDAL homepage:  http://www.gdal.org&lt;br /&gt;
&lt;br /&gt;
Here is a nice tutorial for editing vectors using QGIS as a frontend to GRASS: [[http://grass.osgeo.org/grass-wiki/Editing_GRASS_vectors_with_QGIS | Editing GRASS vectors with QGIS]]&lt;br /&gt;
&lt;br /&gt;
To use the two together, the GDAL-GRASS plugin must be installed:&lt;br /&gt;
&lt;br /&gt;
* [[Compile and install GRASS and QGIS with GDAL/OGR Plugin]]&lt;br /&gt;
&lt;br /&gt;
Test that the GDAL-GRASS plugin is available with this command:&amp;lt;BR&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
  gdalinfo --formats&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Look for a line like &amp;quot;GRASS (ro): GRASS Database Rasters (5.7+)&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Enable the QGIS GRASS plugin from QGIS: &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
  GUI: Plugins / Plugin Manager / Check the GRASS checkbox&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The GRASS toolbar should now be visible.&lt;br /&gt;
While not a firm requirement, it is easier to start QGIS from within a GRASS session.&lt;br /&gt;
&lt;br /&gt;
* [http://wiki.qgis.org/qgiswiki/GrassCookbook QGIS GRASS Cookbook] - Recipes for common tasks&lt;br /&gt;
&lt;br /&gt;
===Importing SRTM30plus data===&lt;br /&gt;
&lt;br /&gt;
SRTM30plus data consists of 33 files of global topography in the same format as the SRTM30 products distributed by the USGS EROS data center. The grid resolution is 30 second which is roughly one kilometer.&lt;br /&gt;
&lt;br /&gt;
Land data are based on the 1-km averages of topography derived from the USGS SRTM30 grided DEM data product created with data from the NASA Shuttle Radar Topography Mission. GTOPO30 data are used for high latitudes where SRTM data are not available.&lt;br /&gt;
&lt;br /&gt;
Ocean data are based on the Smith and Sandwell global 2-minute grid between latitudes +/- 72 degrees. Higher resolution grids have been added from the LDEO Ridge Multibeam Synthesis Project and the NGDC Coastal Relief Model. Arctic bathymetry is from the International Bathymetric Chart of the Oceans (IBCAO).&lt;br /&gt;
&lt;br /&gt;
All data are derived from public domain sources and these data are also in the public domain.&lt;br /&gt;
&lt;br /&gt;
GRASS 6 script &amp;lt;code&amp;gt;r.in.srtm&amp;lt;/code&amp;gt; described in GRASSNews vol. 3 won't work with this dataset (as it was made for the original SRTM HGT files). But you can import SRTM30plus tiles into GRASS this way:&lt;br /&gt;
&lt;br /&gt;
 r.in.bin -sb input=e020n40.Bathmetry.srtm output=e020n40_topex bytes=2 north=40 south=-10 east=60 west=20 r=6000 c=4800&lt;br /&gt;
 r.colors e020n40_topex rules=etopo2&lt;br /&gt;
&lt;br /&gt;
; Source&lt;br /&gt;
: GRASS Users Mailing List http://grass.itc.it/pipermail/grassuser/2005-August/030018.html&lt;br /&gt;
; Getting SRTM30plus tiles&lt;br /&gt;
: ftp://topex.ucsd.edu/pub/srtm30_plus/data&lt;br /&gt;
&lt;br /&gt;
=== GMT (The Generic Mapping Tools) ===&lt;br /&gt;
&lt;br /&gt;
* [[GRASS and GMT]]&lt;br /&gt;
&lt;br /&gt;
GMT (Generic Mapping Tools) is a Free software package for creating publication quality cartography.&lt;br /&gt;
&lt;br /&gt;
GMT homepage:  http://gmt.soest.hawaii.edu&lt;br /&gt;
&lt;br /&gt;
=== Interfacing R-Statistics with GRASS ===&lt;br /&gt;
&lt;br /&gt;
* [[GRASS_and_Rstat|GRASS and R]]&lt;br /&gt;
&lt;br /&gt;
GRASS may be combined with R-Statistics to create a very powerful geostatistical analysis platform.&lt;br /&gt;
&lt;br /&gt;
R-Statistics homepage  http://www.r-project.org&lt;br /&gt;
&lt;br /&gt;
===Using GRASS with an on-line Web-GIS===&lt;br /&gt;
&lt;br /&gt;
see:&lt;br /&gt;
&lt;br /&gt;
* [[GRASS and MapServer]]&lt;br /&gt;
* [[GRASS and PHP]]&lt;br /&gt;
* [[GRASS and Python]]&lt;br /&gt;
&lt;br /&gt;
(please expand)&lt;br /&gt;
&lt;br /&gt;
===Starting and running GRASS from a script===&lt;br /&gt;
&lt;br /&gt;
See [[GRASS and Shell]].&lt;br /&gt;
&lt;br /&gt;
===Running GRASS remotely on OS X===&lt;br /&gt;
&lt;br /&gt;
Tiger (OS 10.4) changed the default configuration of SSH from previous versions of OS X. You can no longer start  an ssh session with the -X flag and display the Tcl/Tk components of the GRASS GUI remotely. If you are running grass on OS X (10.4) between hosts on a network (i.e. running it on one machine but displaying it on another), you will need to use the &amp;quot;trusted forwarding&amp;quot; mode of SSH in order for the Tcl/Tk generated graphics, such as d.m or gis.m in order for the GUI graphics to make it through your connection. This can be done using the -Y flag when you start the ssh session:&lt;br /&gt;
&lt;br /&gt;
 ssh -Y remotehost&lt;br /&gt;
&lt;br /&gt;
or add this to ~/.ssh/config:&lt;br /&gt;
&lt;br /&gt;
 Host hostname&lt;br /&gt;
   ForwardX11 yes&lt;br /&gt;
   ForwardX11Trusted yes&lt;br /&gt;
&lt;br /&gt;
Using the -X flag, or simply turning on X11Forwarding in the SSH configuration files, is not enough:  the symptoms in this case are that a d.mon window will function fine, but none of the Tcl/Tk dialogues will work, failing with an error message complaining either about Wish not behaving as expected, or a &amp;quot;Bad Atom&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Documentation]]&lt;/div&gt;</summary>
		<author><name>⚠️EricPatton</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=Tips_and_Tricks&amp;diff=8203</id>
		<title>Tips and Tricks</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=Tips_and_Tricks&amp;diff=8203"/>
		<updated>2009-02-16T15:00:38Z</updated>

		<summary type="html">&lt;p&gt;⚠️EricPatton: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Tips and Tricks==&lt;br /&gt;
&lt;br /&gt;
===Using QGIS as a frontend to GRASS===&lt;br /&gt;
&lt;br /&gt;
* QGIS started as a simple viewer for geodata. And that's really what it still is: a simple-to-use geodata viewer with some editing capabilities. That's what it was designed to be and that's what it can do really well. QGIS does not have built-in capabilities for geodata processing and analysis.&lt;br /&gt;
&lt;br /&gt;
:However, a while back, Radim Blazek, who was then a core developer of the GRASS 6 system, decided to write a plugin for QGIS that would make it possible to access GRASS functionality from within the QGIS GUI.&lt;br /&gt;
&lt;br /&gt;
:And that's what you get today, when you download a binary version of QGIS for your platform: QGIS + GRASS 6 plus a plugin that makes using GRASS from QGIS simple and fun.&lt;br /&gt;
&amp;lt;!-- Benjamin Ducke on grass-user 18 Dec 2006 --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
QGIS can run as a frontend to GRASS. There is support for displaying maps, editing maps, and execution of simple GIS functions. The GDAL/OGR library is a requirement for that (but for GRASS anyway):&lt;br /&gt;
&lt;br /&gt;
* QGIS homepage:  http://qgis.org&lt;br /&gt;
* GDAL homepage:  http://www.gdal.org&lt;br /&gt;
&lt;br /&gt;
Here is a nice tutorial for editing vectors using QGIS as a frontend to GRASS: [http://grass.osgeo.org/grass-wiki/Editing_GRASS_vectors_with_QGIS Editing Grass Vectors using QGIS]&lt;br /&gt;
&lt;br /&gt;
To use the two together, the GDAL-GRASS plugin must be installed:&lt;br /&gt;
&lt;br /&gt;
* [[Compile and install GRASS and QGIS with GDAL/OGR Plugin]]&lt;br /&gt;
&lt;br /&gt;
Test that the GDAL-GRASS plugin is available with this command:&amp;lt;BR&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
  gdalinfo --formats&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Look for a line like &amp;quot;GRASS (ro): GRASS Database Rasters (5.7+)&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Enable the QGIS GRASS plugin from QGIS: &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
  GUI: Plugins / Plugin Manager / Check the GRASS checkbox&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The GRASS toolbar should now be visible.&lt;br /&gt;
While not a firm requirement, it is easier to start QGIS from within a GRASS session.&lt;br /&gt;
&lt;br /&gt;
* [http://wiki.qgis.org/qgiswiki/GrassCookbook QGIS GRASS Cookbook] - Recipes for common tasks&lt;br /&gt;
&lt;br /&gt;
===Importing SRTM30plus data===&lt;br /&gt;
&lt;br /&gt;
SRTM30plus data consists of 33 files of global topography in the same format as the SRTM30 products distributed by the USGS EROS data center. The grid resolution is 30 second which is roughly one kilometer.&lt;br /&gt;
&lt;br /&gt;
Land data are based on the 1-km averages of topography derived from the USGS SRTM30 grided DEM data product created with data from the NASA Shuttle Radar Topography Mission. GTOPO30 data are used for high latitudes where SRTM data are not available.&lt;br /&gt;
&lt;br /&gt;
Ocean data are based on the Smith and Sandwell global 2-minute grid between latitudes +/- 72 degrees. Higher resolution grids have been added from the LDEO Ridge Multibeam Synthesis Project and the NGDC Coastal Relief Model. Arctic bathymetry is from the International Bathymetric Chart of the Oceans (IBCAO).&lt;br /&gt;
&lt;br /&gt;
All data are derived from public domain sources and these data are also in the public domain.&lt;br /&gt;
&lt;br /&gt;
GRASS 6 script &amp;lt;code&amp;gt;r.in.srtm&amp;lt;/code&amp;gt; described in GRASSNews vol. 3 won't work with this dataset (as it was made for the original SRTM HGT files). But you can import SRTM30plus tiles into GRASS this way:&lt;br /&gt;
&lt;br /&gt;
 r.in.bin -sb input=e020n40.Bathmetry.srtm output=e020n40_topex bytes=2 north=40 south=-10 east=60 west=20 r=6000 c=4800&lt;br /&gt;
 r.colors e020n40_topex rules=etopo2&lt;br /&gt;
&lt;br /&gt;
; Source&lt;br /&gt;
: GRASS Users Mailing List http://grass.itc.it/pipermail/grassuser/2005-August/030018.html&lt;br /&gt;
; Getting SRTM30plus tiles&lt;br /&gt;
: ftp://topex.ucsd.edu/pub/srtm30_plus/data&lt;br /&gt;
&lt;br /&gt;
=== GMT (The Generic Mapping Tools) ===&lt;br /&gt;
&lt;br /&gt;
* [[GRASS and GMT]]&lt;br /&gt;
&lt;br /&gt;
GMT (Generic Mapping Tools) is a Free software package for creating publication quality cartography.&lt;br /&gt;
&lt;br /&gt;
GMT homepage:  http://gmt.soest.hawaii.edu&lt;br /&gt;
&lt;br /&gt;
=== Interfacing R-Statistics with GRASS ===&lt;br /&gt;
&lt;br /&gt;
* [[GRASS_and_Rstat|GRASS and R]]&lt;br /&gt;
&lt;br /&gt;
GRASS may be combined with R-Statistics to create a very powerful geostatistical analysis platform.&lt;br /&gt;
&lt;br /&gt;
R-Statistics homepage  http://www.r-project.org&lt;br /&gt;
&lt;br /&gt;
===Using GRASS with an on-line Web-GIS===&lt;br /&gt;
&lt;br /&gt;
see:&lt;br /&gt;
&lt;br /&gt;
* [[GRASS and MapServer]]&lt;br /&gt;
* [[GRASS and PHP]]&lt;br /&gt;
* [[GRASS and Python]]&lt;br /&gt;
&lt;br /&gt;
(please expand)&lt;br /&gt;
&lt;br /&gt;
===Starting and running GRASS from a script===&lt;br /&gt;
&lt;br /&gt;
See [[GRASS and Shell]].&lt;br /&gt;
&lt;br /&gt;
===Running GRASS remotely on OS X===&lt;br /&gt;
&lt;br /&gt;
Tiger (OS 10.4) changed the default configuration of SSH from previous versions of OS X. You can no longer start  an ssh session with the -X flag and display the Tcl/Tk components of the GRASS GUI remotely. If you are running grass on OS X (10.4) between hosts on a network (i.e. running it on one machine but displaying it on another), you will need to use the &amp;quot;trusted forwarding&amp;quot; mode of SSH in order for the Tcl/Tk generated graphics, such as d.m or gis.m in order for the GUI graphics to make it through your connection. This can be done using the -Y flag when you start the ssh session:&lt;br /&gt;
&lt;br /&gt;
 ssh -Y remotehost&lt;br /&gt;
&lt;br /&gt;
or add this to ~/.ssh/config:&lt;br /&gt;
&lt;br /&gt;
 Host hostname&lt;br /&gt;
   ForwardX11 yes&lt;br /&gt;
   ForwardX11Trusted yes&lt;br /&gt;
&lt;br /&gt;
Using the -X flag, or simply turning on X11Forwarding in the SSH configuration files, is not enough:  the symptoms in this case are that a d.mon window will function fine, but none of the Tcl/Tk dialogues will work, failing with an error message complaining either about Wish not behaving as expected, or a &amp;quot;Bad Atom&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Documentation]]&lt;/div&gt;</summary>
		<author><name>⚠️EricPatton</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=AddOns&amp;diff=7900</id>
		<title>AddOns</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=AddOns&amp;diff=7900"/>
		<updated>2008-12-01T15:22:55Z</updated>

		<summary type="html">&lt;p&gt;⚠️EricPatton: /* r.fragment */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page contains references to user contributions and add-ons (the original GRASS GIS software can be downloaded [http://grass.osgeo.org/download/index.php here]).&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
== AddOns source code repository ==&lt;br /&gt;
&lt;br /&gt;
The AddOns source code is hosted in [http://svn.osgeo.org/grass/grass-addons/ GRASS-AddOns SVN repository].&lt;br /&gt;
&lt;br /&gt;
To checkout:&lt;br /&gt;
&lt;br /&gt;
 svn checkout &amp;lt;nowiki&amp;gt;https://svn.osgeo.org/grass/grass-addons/&amp;lt;/nowiki&amp;gt; grass-addons&lt;br /&gt;
&lt;br /&gt;
Please contact the [http://lists.osgeo.org/mailman/listinfo/grass-dev grass-dev] mailing list if you would like to host your module there.&lt;br /&gt;
&lt;br /&gt;
== Adding something new ==&lt;br /&gt;
&lt;br /&gt;
Please announce your add-on to the GRASS users' mailing list so that others may be aware of your work.&lt;br /&gt;
&lt;br /&gt;
=== Copyright and licensing information ===&lt;br /&gt;
&lt;br /&gt;
''Please be sure to include copyright and licensing information in the header comments of your code so that others may know how they can use, extend, modify, and redistribute your work.''&lt;br /&gt;
&lt;br /&gt;
e.g. at the top of a shell script:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/sh&lt;br /&gt;
############################################################################&lt;br /&gt;
#&lt;br /&gt;
# MODULE:       v.in.e00&lt;br /&gt;
#&lt;br /&gt;
# AUTHOR(S):    Markus Neteler, Otto Dassau&lt;br /&gt;
#&lt;br /&gt;
# PURPOSE:      Import E00 data into a GRASS vector map&lt;br /&gt;
#               Imports single and split E00 files (.e00, .e01, .e02 ...)&lt;br /&gt;
#&lt;br /&gt;
# COPYRIGHT:    (c) 2004, 2005 GDF Hannover bR, http://www.gdf-hannover.de&lt;br /&gt;
#&lt;br /&gt;
#               This program is free software under the GNU General Public&lt;br /&gt;
#               License (&amp;gt;=v2). Read the file COPYING that comes with GRASS&lt;br /&gt;
#               for details.&lt;br /&gt;
#&lt;br /&gt;
#############################################################################&lt;br /&gt;
#&lt;br /&gt;
# REQUIREMENTS:&lt;br /&gt;
#      -  avcimport: http://avce00.maptools.org&lt;br /&gt;
&lt;br /&gt;
[script follows]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Coding standards ===&lt;br /&gt;
&lt;br /&gt;
Please have a look at our [http://grass.osgeo.org/grass63/source/SUBMITTING_SCRIPTS Shell script coding standards] before submitting here.&lt;br /&gt;
&lt;br /&gt;
There are other coding standards given for modules written in C, Tcl/Tk, and Python''(?)'' located in the GRASS source code.&lt;br /&gt;
&lt;br /&gt;
=== Documenting your code ===&lt;br /&gt;
&lt;br /&gt;
You can have an help page template auto-generated by using the GRASS [[module command line parser | command line parser]] with the &amp;lt;tt&amp;gt;--html-description&amp;lt;/tt&amp;gt; command line option. Please, see also the [http://grass.ibiblio.org/grass63/manuals/html63_user/g.parser.html g.parser help page]&lt;br /&gt;
&lt;br /&gt;
== Miscellaneous Add-ons ==&lt;br /&gt;
&lt;br /&gt;
* [http://trac.osgeo.org/grass/browser/grass-addons/misc/utm_which_zone utm_which_zone.sh] is a shell script to determine UTM zone from Lat/Lon input. Requires [http://www.octave.org Octave] or Matlab to be installed. A shell-only version is [http://dcalvelo.free.fr/grass/utm_which_zone_sh.sh available] which only requires awk.&amp;lt;BR&amp;gt;'''Authors''': Hamish Bowman (Octave part), Markus Neteler (shell script wrapper), Daniel Calvelo (sh+awk version)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Perl scripts for converting data forth and back between Excel files and PostgreSQL: [http://dcalvelo.free.fr/grass/pg2xls.pl pg2xls.pl] reads data from PostgreSQL and produces an excel workbook; [http://dcalvelo.free.fr/grass/xls2sql.pl xls2sql.pl] reads excel files and outputs SQL statements to be fed into an RDBMS. Both scripts need modules from [http://www.cpan.org CPAN], especially [http://search.cpan.org/dist/Spreadsheet-ParseExcel/  Spreadsheet::ParseExcel] for xls2sql.pl and [http://search.cpan.org/~tmtm/Spreadsheet-WriteExcel-FromDB Spreadsheet::WriteExcel::FromDB] and its dependencies for pg2sql.pl. Check the source headers for more info.&amp;lt;BR&amp;gt;'''Authors:''' Daniel Calvelo (xls2sql.pl), Markus Neteler (pg2xls.pl)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://dream.lrrl.arch.tu-muenchen.de/~wqual/perl/dbf2sql.tgz dbf2sql] is a Perl script for translating dbf-tables into a sql-command. dbf-tables are read using dbfdump-command from dbd-xbase-perl module ([http://search.cpan.org/~janpaz/DBD-XBase-0.241/ dbd::xbase] and [http://search.cpan.org/~jv/Getopt-Long-2.35/lib/Getopt/Long.pm getopt::long] have to be installed from CPAN first). There are problems, if the last column of the table contains characters. Suggestions for improvements welcome! &amp;lt;BR&amp;gt;'''Author:'''Wolfgang Qual&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.igc.usp.br/pessoais/guano/downloads/azimuth2.c azimuth2.c] is a small C program to calculate the azimuth and length of vector lines exported by GRASS-GIS as ASCII files (like this: v.out.ascii input=vector output=ascii format=standard). It is useful for create rose diagrams of lineament maps. Improvements on the original code after suggestions by Örs Téglásy, Hungary.&amp;lt;BR&amp;gt;'''Author:''' Carlos Henrique Grohmann&lt;br /&gt;
&lt;br /&gt;
==GRASS 5.x==&lt;br /&gt;
&lt;br /&gt;
===Vector add-ons for GRASS 5===&lt;br /&gt;
&lt;br /&gt;
* See here: http://grass.osgeo.org/download/addons.php&lt;br /&gt;
&lt;br /&gt;
===Raster add-ons for GRASS 5===&lt;br /&gt;
&lt;br /&gt;
* See here: http://grass.osgeo.org/download/addons.php&lt;br /&gt;
&lt;br /&gt;
* [http://www.valledemexico.ambitiouslemon.com/gwmodelling.html r.gmtg] The groundwater modelling tool for grass. A module to use MODFLOW within GRASS. &amp;lt;BR&amp;gt;'''Author''': Jaime Carrera&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.bowdoin.edu/~ltoma/research.html r.terracost] Scalable approach for computing least-cost-path surfaces on massive grid terrains. For GRASS 5.3.&amp;lt;BR&amp;gt;'''Lead author''': Laura Toma&lt;br /&gt;
&lt;br /&gt;
==GRASS 6.x==&lt;br /&gt;
&lt;br /&gt;
=== Vector add-ons ===&lt;br /&gt;
&lt;br /&gt;
See also&lt;br /&gt;
&lt;br /&gt;
 svn co https://svn.osgeo.org/grass/grass-addons/vector&lt;br /&gt;
&lt;br /&gt;
==== v.append ====&lt;br /&gt;
&lt;br /&gt;
: [http://www.public.asu.edu/~cmbarton/files/grass_scripts/v.append v.append] is a shell script combining two vector files AND their associated attribute tables. The vector files should be of the same type and, for best results, should have identically formatted attribute tables.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Michael Barton&lt;br /&gt;
&lt;br /&gt;
==== v.autokrige ====&lt;br /&gt;
&lt;br /&gt;
: [http://precisiongis.blogspot.com/2008/11/vautokrige.html v.autokrige] is a shell script used to achieve automatic kriging from GRASS sites (vector point data), using R with spgrass6 (RGRASS) and automap packages.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Mathieu Grelier&lt;br /&gt;
&lt;br /&gt;
==== v.breach ====&lt;br /&gt;
&lt;br /&gt;
: [http://kufaya.googlepages.com/v.breach.zip v.breach] creates vector maps of lines and points of continously lowering elevation down the input watercourses, based on the input raster DEM.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Maciej Sieczka&lt;br /&gt;
&lt;br /&gt;
==== v.colors ====&lt;br /&gt;
&lt;br /&gt;
: [http://trac.osgeo.org/grass/browser/grass-addons/vector/v.colors v.colors] is a shell script for populating a GRASSRGB column based on a numeric database column and a ''r.colors'' rules file. Works just like ''r.colors'', but for vector maps.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
==== v.count.points.sh ====&lt;br /&gt;
&lt;br /&gt;
: [http://wiki.iosa.it/dokuwiki/spatial_analysis:feature_count v.count.points.sh] counts point features in areas, generates table good as input to d.vect.chart.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Stefano Costa&lt;br /&gt;
&lt;br /&gt;
==== v.digatt ====&lt;br /&gt;
&lt;br /&gt;
: [http://phygeo7.geo.uni-augsburg.de/gis2/scripts/v.digatt v.digatt] (shell script) Interactively assign numeric table attributes to series of vector objects. It is meant to be effective by avoiding to type in the attribute value for all single objects again and again. The user is prompted for typing in an attribute value which is assigned to all objects selected by mouseclick afterwards. Next the display is redrawn after updating the table column. Zooming allows to change the region before the old value can be reused or a new one can be typed in (or copied by mouse from another object) in order to assign it to the next series of objects etc. It is tested not very extensively yet. Therefore better work with a copy of your map and consider using v.digit or d.what.vect -e alternatively. [http://phygeo7.geo.uni-augsburg.de/gis2/scripts/v.digatt.png screenshot].&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Andreas Philipp&lt;br /&gt;
&lt;br /&gt;
==== v.dip ====&lt;br /&gt;
&lt;br /&gt;
: [http://marcin.slodkowski.googlepages.com/v.dip.tgz v.dip] creates points of thickness vectors from the vectors of strike and dip angles. The v.dip is the main ANSI C core program. Program so-called v.dip can run without GRASS environment.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Marcin Slodkowski&lt;br /&gt;
&lt;br /&gt;
==== v.flip ====&lt;br /&gt;
&lt;br /&gt;
: [http://kufaya.googlepages.com/v.flip.zip v.flip] flips the direction of selected vector lines (redundant since GRASS 6.3 - there is &amp;quot;v.edit tool=flip&amp;quot;).&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Maciej Sieczka&lt;br /&gt;
&lt;br /&gt;
==== v.group ====&lt;br /&gt;
&lt;br /&gt;
: [http://www.shockfamily.net/cedric/grass/v.group v.group] generates a new vector map with the same geometry as an existing map. The new map has categories and a table based on grouping by the values in certain columns of the existing map's table. The values in these columns are preserved in the table for the new map. It's like a v.reclass that preserves data.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Cedric Shock&lt;br /&gt;
&lt;br /&gt;
==== v.in.gama ====&lt;br /&gt;
&lt;br /&gt;
: [http://k153-85.fsv.cvut.cz/cgi-bin/viewcvs.cgi/grass6/vector/v.in.gama/ v.in.gama] converts [http://www.gnu.org/software/gama/ GNU GaMa] XML output file to a GRASS vector map layer.&lt;br /&gt;
&lt;br /&gt;
:'''Author:''' Martin Landa&lt;br /&gt;
&lt;br /&gt;
==== v.in.ncdc ====&lt;br /&gt;
&lt;br /&gt;
: [http://trac.osgeo.org/grass/browser/grass-addons/vector/v.in.ncdc v.in.ncdc] imports an [http://www.ncdc.noaa.gov NCDC] stn file (station data) into a GRASS vector map.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Huidae Cho&lt;br /&gt;
&lt;br /&gt;
==== v.in.postgis.sqlquery ====&lt;br /&gt;
&lt;br /&gt;
: [http://precisiongis.blogspot.com/2007/11/vinpostgissqlquery-tool-to-import.html v.in.postgis.sqlquery] imports PostGIS data in GRASS, from arbitrary sql queries.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Mathieu Grelier&lt;br /&gt;
&lt;br /&gt;
==== v.in.osm ====&lt;br /&gt;
&lt;br /&gt;
: [http://kripton.kripserver.net/software/v.in.osm/ v.in.osm]: OpenStreetMap import into GRASS. Yet only supports deprecated API 0.4, will be modified to work with API 0.5 some time soon.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Jannis Achstetter&lt;br /&gt;
&lt;br /&gt;
: See also [http://hamish.bowman.googlepages.com/gpsdrivefiles#osm osm2grass.sh] by H Bowman&lt;br /&gt;
&lt;br /&gt;
==== v.in.ovl ====&lt;br /&gt;
&lt;br /&gt;
: [http://grasslab.gisix.com/scripts/v.in.ovl/ v.in.ovl] is a shell script that imports an ASCII vector file created with TOP10|25|50 or similar products.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Peter Löwe&lt;br /&gt;
&lt;br /&gt;
==== v.lda ====&lt;br /&gt;
&lt;br /&gt;
: [http://www.public.asu.edu/~cmbarton/files/grass_scripts/v.lda v.lda] is a shell script for calculating Ian Johnson's (U. Sidney) Local Density Analysis values to measure clustering of point data at different neighborhood radii. There is an option to create a simple line graph of the results. There have been reports of problems creating the line graph on Cygwin installations of GRASS.&lt;br /&gt;
&lt;br /&gt;
==== v.line.center ====&lt;br /&gt;
&lt;br /&gt;
: [http://kufaya.googlepages.com/v.line.center.zip v.line.center] creates a points vector map with each point located in the middle of the length of the input vector line.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Maciej Sieczka&lt;br /&gt;
&lt;br /&gt;
==== v.lmeasure ====&lt;br /&gt;
&lt;br /&gt;
: [http://ngeo.de/grassstuff/v.lmeasure v.lmeasure] and [http://ngeo.de/grassstuff/v.revlmeasure v.revlmeasure] are two perl scripts that place equidistant vector points along a given arbitrary vector line starting from the beginning or end of the vector line, respectively. Resulting  vector points are labeled with the distance from origin.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Mats Schuh&lt;br /&gt;
&lt;br /&gt;
==== v.out.ascii.db ====&lt;br /&gt;
&lt;br /&gt;
: [http://trac.osgeo.org/grass/browser/grass-addons/vector/v.out.ascii.db v.out.ascii.db] is a shell script for exporting vector point data coordinates and selected attribute columns to either a file or to the console.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
==== v.out.ascii.mat ====&lt;br /&gt;
&lt;br /&gt;
: [http://trac.osgeo.org/grass/browser/grass-addons/vector/v.out.ascii.mat v.out.ascii.mat] is a shell script for exporting vector polygon and polyline data into an ASCII text file suitable for loading into Matlab (or [http://www.gnu.org/software/octave/ Octave]).&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
==== v.out.gmt ====&lt;br /&gt;
&lt;br /&gt;
: [http://trac.osgeo.org/grass/browser/grass-addons/vector/v.out.gmt v.out.gmt] is a shell script that exports a polygon vector file into GMT xy file. psbasemap code was copied from Hamish's r.out.gmt.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Huidae Cho, Hamish Bowman, Dylan Beaudette&lt;br /&gt;
&lt;br /&gt;
==== v.out.kml ====&lt;br /&gt;
&lt;br /&gt;
: [http://grasslab.gisix.com/scripts/v.out.kml/ v.out.kml] is a shell script that exports a vector file into a KML file for Google Earth or Worldwind.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Peter Löwe&lt;br /&gt;
&lt;br /&gt;
==== v.out.svg ====&lt;br /&gt;
&lt;br /&gt;
: [http://svg.cc/grass/index.html v.out.svg] is a module that exports SVG notation along with optional attribute data directly from GRASS 6.x vector layers. Now part of [http://svn.osgeo.org/grass/grass/trunk/vector/v.out.svg/ grass6-svn].&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Klaus Förster&lt;br /&gt;
&lt;br /&gt;
==== v.random.cover ====&lt;br /&gt;
&lt;br /&gt;
: [http://trac.osgeo.org/grass/browser/grass-addons/vector/v.random.cover v.random.cover] is a shell script for creating random points constrained within an irregularly shaped vector area. (v.random places points only in current region rectangle). Optionally the user can upload raster values at the points. See also '&amp;lt;tt&amp;gt;r.random cover= vector_output=&amp;lt;/tt&amp;gt;'&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
==== v.rasterbounds ====&lt;br /&gt;
&lt;br /&gt;
: [http://les-ejk.cz/programs v.rasterbounds] is a shell script for creating polygon-vector file of rasterfile boundaries. The best version of GRASS is 6.1+. If you are using GRASS &amp;lt; 6.1, you  have to be in the same mapset as your raster maps are from.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
==== v.sample.buffer [broken link, please update or delete]====&lt;br /&gt;
&lt;br /&gt;
: [http://www.clubwebcanada.ca/twiens/v.sample.buffer.tgz v.sample.buffer] is a shell script that samples rasters in buffers of a specified size around features in a specified vector file. Sampling results are added as attributes to the vector file. This script was designed for sampling vegetation indices and DEM derived attributes for bird point counts. Sampling results can be one or more basic statistics such as mean, range, max, etc.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Trevor Wiens&lt;br /&gt;
&lt;br /&gt;
==== v.select.region ====&lt;br /&gt;
&lt;br /&gt;
: [ftp://gsca.nrcan.gc.ca/outgoing/Patton/Grass/Scripts/v.select.region.tar.bz2 v.select.region] is a shell script that prints out the names of all vectors matching an input search pattern that has geometry (points, line, areas) that fall within a region bounded by an existing vector map, or within the current Grass region.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Eric Patton&lt;br /&gt;
&lt;br /&gt;
==== v.surf.icw ====&lt;br /&gt;
&lt;br /&gt;
: [http://trac.osgeo.org/grass/browser/grass-addons/vector/v.surf.icw v.surf.icw] is an IDW interpolation method using true distance cost instead of euclidean shortest distance, i.e. ''as the fish swims around an island'' not ''as the bird flies''. This will cleanly travel around hard barriers and a cost surface map may be used to model expensive-cross barriers. Input data points do not need direct line of sight to be considered, but should be kept within a few dozen as the module becomes very computationally expensive. A number of radial basis function options are available. ([http://grass.gdf-hannover.de/wiki/Image:Inlets_03_SurfSal_icw_big.png screenshot])&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
==== v.surf.idwpow ====&lt;br /&gt;
&lt;br /&gt;
: [http://www.geospatial.it/allegri/grass/v.surf.idwpow.zip v.surf.idwpow] integrates the common v.surf.idw algorithm with the exponential parameter for the distance weights&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Giovanni Allegri&lt;br /&gt;
&lt;br /&gt;
==== v.surf.krige ====&lt;br /&gt;
&lt;br /&gt;
: [http://www.gfosservices.it/?q=node/61 v.surf.krige] is a script that do a surface interpolation from vector point data by Kriging method. The interpolated value of a cell is determined by using an omnidirectional variogram model fitted starting from model parameter given by user shown from the experimental semi variogram produced by v.variogram. The script can perform also the Leave-One-out cross validation to test the variogram model &amp;quot;fitted by eye&amp;quot; and an automatic fitted variogram model. The cross validation helps the user to choose the best variogram model to interpolate own data.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Pierluigi De Rosa.&lt;br /&gt;
&lt;br /&gt;
==== v.strahler ====&lt;br /&gt;
&lt;br /&gt;
: [http://www.pois.org/florian/downloads/grass/v.strahler.tgz v.strahler] is a module that calculates the Strahler Order for all lines of a given dendritic network.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Florian Kindl. Available via SVN:&lt;br /&gt;
&lt;br /&gt;
 svn co https://svn.osgeo.org/grass/grass-addons/vector/v.strahler&lt;br /&gt;
&lt;br /&gt;
==== v.swathwidth ====&lt;br /&gt;
&lt;br /&gt;
: [http://david.p.finlayson.googlepages.com/v.swathwidth v.swathwidth] creates a vector map representing the sea bottom coverage of a multibeam (swath) sonar survey.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' David Finlayson&lt;br /&gt;
&lt;br /&gt;
==== v.thickness ====&lt;br /&gt;
&lt;br /&gt;
: [http://marcin.slodkowski.googlepages.com/v.thickness.tgz v.thickness] creates points of thickness vectors from the vectors of strike and dip angles.The v.thickness is GUI GRASS script for v.dip.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Marcin Slodkowski&lt;br /&gt;
&lt;br /&gt;
==== v.trees3d ====&lt;br /&gt;
&lt;br /&gt;
: [http://les-ejk.cz/programs/ v.trees3d] is a module for making 3D trees from input vector point file.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== v.trimesh ====&lt;br /&gt;
: [http://www.valledemexico.ambitiouslemon.com/vtrimesh.html v.trimesh] creates a triangular mesh from a vector map using areal constraints for refinement. It uses Jonathan Shewchuk's Triangle library.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Jaime Carrera&lt;br /&gt;
&lt;br /&gt;
==== v.what.rast.buffer ====&lt;br /&gt;
&lt;br /&gt;
: [http://trac.osgeo.org/grass/browser/grass-addons/vector/v.what.rast.buffer v.what.rast.buffer] is a script that calculates univariate statistics of raster map(s) from buffers around vector points. Results are written to a file. Resolution is taken from each input map.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== v.variogram ====&lt;br /&gt;
&lt;br /&gt;
: [http://www.gfosservices.it/?q=node/61 v.variogram] is a script that create an omnidirectional experimental semi-variogram. This scripts require R-statistics software installed on your machine. Now the script is updated to run on spgrass6 &amp;gt;= 0.3 and sp &amp;gt;= 0.9 [http://grass.osgeo.org/pipermail/statsgrass/2006-October/000455.html reply].&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Ivan Marchesini, Pierluigi De Rosa.&lt;br /&gt;
&lt;br /&gt;
==== AniMove ====&lt;br /&gt;
&lt;br /&gt;
: [http://www.faunalia.it/animov/ AniMove] is software for analysis of animal movement and ranging behaviour using QGIS+GRASS+R.&lt;br /&gt;
&lt;br /&gt;
:'''Authors:''' Support by Faunalia.it&lt;br /&gt;
&lt;br /&gt;
==== Utilities ====&lt;br /&gt;
&lt;br /&gt;
===== Shapemerge =====&lt;br /&gt;
&lt;br /&gt;
: [http://perrygeo.googlecode.com/svn/trunk/gis-bin/shpmerge.sh shpmerge] merges all the shapefiles in the current directory into a single output shapefile&lt;br /&gt;
&lt;br /&gt;
:'''Authors:''' Perrygeo&lt;br /&gt;
&lt;br /&gt;
=== Raster add-ons ===&lt;br /&gt;
&lt;br /&gt;
See also&lt;br /&gt;
&lt;br /&gt;
 svn co https://svn.osgeo.org/grass/grass-addons/raster&lt;br /&gt;
&lt;br /&gt;
==== r.bilateral ====&lt;br /&gt;
&lt;br /&gt;
[http://les-ejk.cz/files/programs/grass/r.bilateral.tgz r.bilateral] Bilateral filter is an edge-preserving filter, which combines domain and range filtering. It is written in C language.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
==== r.boxcount ====&lt;br /&gt;
&lt;br /&gt;
r.boxcount and r.boxcount.sh calculate the fractal dimension for a given map. These are versions for grass6 of [http://www.ucl.ac.uk/~tcrnmar/ Mark Lake's modules] for grass43.&lt;br /&gt;
&lt;br /&gt;
: '''Authors:''' Mark Lake, grass6 port: Florian Kindl.&lt;br /&gt;
&lt;br /&gt;
Available via SVN:&lt;br /&gt;
&lt;br /&gt;
 svn co https://svn.osgeo.org/grass/grass-addons/raster/r.boxcount/&lt;br /&gt;
 svn co https://svn.osgeo.org/grass/grass-addons/raster/r.boxcount.sh/&lt;br /&gt;
&lt;br /&gt;
==== r.colors.quantiles ====&lt;br /&gt;
&lt;br /&gt;
[http://precisiongis.blogspot.com/2008/10/rcolorsquantiles.html r.colors.quantiles] is a shell script used to create raster colors rules based on nquantiles. It uses R and spgrass6 package (RGRASS).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
: '''Authors:''' Mathieu Grelier&lt;br /&gt;
&lt;br /&gt;
==== r.colors.stddev ====&lt;br /&gt;
&lt;br /&gt;
[http://hamish.bowman.googlepages.com/grass_color_maps r.colors.stddev] is a GRASS shell script for creating dynamic color rules for raster maps based on univariate statistics.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
==== r.cpt2grass ====&lt;br /&gt;
&lt;br /&gt;
: [http://hamish.bowman.googlepages.com/grass_color_maps r.cpt2grass] is a GRASS script for importing a [http://www.soest.hawaii.edu/gmt/ GMT] .cpt color table into GRASS. It can save to a text file suitable for r.colors or automatically apply the color table to a raster map.&amp;lt;BR&amp;gt;For a large collection of GMT .cpt files see http://sview01.wiredworkplace.net/pub/cpt-city/&lt;br /&gt;
: Other palette ideas from [http://geography.uoregon.edu/datagraphics/color_scales.htm Univ. Oregon] and [http://oceancolor.gsfc.nasa.gov/PRODUCTS/colorbars.html NASA/Goddard's OceanColor] (latter partially translated for use with GRASS on the [http://trac.osgeo.org/grass/browser/grass-addons/raster/r.colors.tools/palettes grass-addons SVN]).&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
==== r.csr ====&lt;br /&gt;
&lt;br /&gt;
[ftp://gsca.nrcan.gc.ca/outgoing/Patton/Grass/Scripts/r.csr.tar.bz2 r.csr] integrates several Grass programs to produce colored, shaded-relief rasters in one step. Accepts single or multiple elevation/bathymetry maps as input; optionally will fill data holidays with 3x3 median filter, multiple times, if required; can apply color maps from a) input raster, b) another raster in MAPSET, or c) from a rules file; otherwise, rainbow colorbar is applied. Output colored, shaded-relief rasters can optionally be exported to tiff format if the appropriate flag is given. Shading parameters can be modified, though useful defaults are given.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Eric Patton&lt;br /&gt;
&lt;br /&gt;
==== r.dominant_dir.m and r.calc_terraflow_dir.m ====&lt;br /&gt;
&lt;br /&gt;
[http://trac.osgeo.org/grass/browser/grass-addons/raster/r.terraflow.tools dominant_dir.m and calc_terraflow_dir.m] are two Matlab scripts for determining the dominant flow direction from a r.terraflow MFD map and converting into a GRASS aspect map for use with d.rast.arrow, etc.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
==== r.eucdist ====&lt;br /&gt;
&lt;br /&gt;
[http://david.p.finlayson.googlepages.com/r.eucdist r.eucdist] creates a raster map estimating the euclidean distance from known cells.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' David Finlayson&lt;br /&gt;
&lt;br /&gt;
==== r.fragment ====&lt;br /&gt;
&lt;br /&gt;
[ftp://gsca.nrcan.gc.ca/outgoing/Patton/Grass/Scripts/r.fragment.tar.bz2 r.fragment] fragments a raster into a user-defined set of smaller tiles according to an input number of rows and columns. &lt;br /&gt;
: '''Author:''' Eric Patton&lt;br /&gt;
&lt;br /&gt;
==== r.game_of_life ====&lt;br /&gt;
&lt;br /&gt;
[http://trac.osgeo.org/grass/browser/grass-addons/raster/r.game_of_life r.game_of_life] is a shell script which runs Conway's classic Game of Life using GRASS raster modules. It is meant to demonstrate how easy it is to program cellular automata in GRASS as well as various 3D raster volume and time series visualization techniques.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
==== r.gauss ====&lt;br /&gt;
&lt;br /&gt;
[http://www.les-ejk.cz/files/programs/grass/r.gauss.tgz r.gauss] is Gaussian and Laplacian of Gaussian filter for GRASS. It is written in C language.&lt;br /&gt;
&lt;br /&gt;
:'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
==== r.gradgrid4 ====&lt;br /&gt;
&lt;br /&gt;
[http://www.uibk.ac.at/geographie/personal/mergili/gradgrid4.zip gradgrid4] is a tool for interpolating values of discrete data points to a raster map, applying a local regression approach with a predictor raster. The model is based on shell and python scripts as well as an R batchfile. It was tested on Fedora Core 6 with GRASS 6.2.1 and R 2.5.1, but should work under most UNIX systems. After unzipping the gradgrid4 folder, store it at any place in your local file system. In the subfolder docs you can find a manual and a publication draft with a detailed description of the concept and the example of an application. The subfolder testloc constitutes a GRASS location with test data.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Martin Mergili&lt;br /&gt;
&lt;br /&gt;
==== r.in.onearth ====&lt;br /&gt;
&lt;br /&gt;
[http://www-pool.math.tu-berlin.de/~soeren/grass/modules/ r.in.onearth] for download and import satellite images direct from the NASA onearth WMS server into GRASS.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Soeren Gebbert&lt;br /&gt;
&lt;br /&gt;
==== r.in.wms ====&lt;br /&gt;
&lt;br /&gt;
[http://les-ejk.cz/files/programs/grass/r.in.wms.tgz r.in.wms] for download and import maps direct from  WMS servers into GRASS. This script is written in Python Programming language. Note GRASS 6.2+ provides a shell script version of r.in.wms, take care of which one is actually being run.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
==== r.inund.fluv ====&lt;br /&gt;
&lt;br /&gt;
[https://svn.osgeo.org/grass/grass-addons/raster/r.inund.fluv/ r.inund.fluv]This command allows to obtain a fluvial potentially inundation map given a high-resolution DTM of the area surrounding the river and a water surface profile calculated through an 1-D hydrodinamic model. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
: '''Authors:''' Roberto Marzocchi, Bianca Federici, Domenico Sguerso&lt;br /&gt;
&lt;br /&gt;
==== r.isoregions ====&lt;br /&gt;
&lt;br /&gt;
[http://precisiongis.blogspot.com/2007/12/risoregions.html r.isoregions] allows isoregions creation from a GRASS raster map. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
: '''Authors:''' Mathieu Grelier&lt;br /&gt;
&lt;br /&gt;
==== r.interp.mask ====&lt;br /&gt;
&lt;br /&gt;
[http://david.p.finlayson.googlepages.com/r.interp.mask r.interp.mask] Creates a user-specified buffer around interpolation points that can be used as a MASK to prevent or clip excessive extrapolation artifacts. This works much better than a standard convex hull around the points.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' David Finlayson&lt;br /&gt;
&lt;br /&gt;
==== r.li ====&lt;br /&gt;
&lt;br /&gt;
[http://www.faunalia.it/download/r_li/ r.li] is a more flexible and faster replacement of the old r.le. '''''Moved into 6.3-SVN'''''.&lt;br /&gt;
&lt;br /&gt;
: '''Authors:''' Claudio Porta, Davide Spano, Serena Pallecchi, [http://www.faunalia.it Faunalia]&lt;br /&gt;
&lt;br /&gt;
==== r.local_max.pl ====&lt;br /&gt;
&lt;br /&gt;
[http://les-ejk.cz/files/programs/local_max.pl Local maxima] is a Perl script for &amp;lt;code&amp;gt;r.mapcalc&amp;lt;/code&amp;gt;. It detects local maxima of the image.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
==== r.mandelbrot ====&lt;br /&gt;
&lt;br /&gt;
[http://grasslab.gisix.com/scripts/r.mandelbrot r.mandelbrot] is a shell script to calculate the Mandelbrot set.- for GRASS versions 6.X.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Peter Löwe&lt;br /&gt;
&lt;br /&gt;
==== mcda====&lt;br /&gt;
&lt;br /&gt;
mcda suite is a toolset for geographics multi-criteria decision aiding and data analysis based on ELECTRE (r.mcda.electre), REGIME (r.mcda.regime) and FUZZY (r.mcda.fuzzy) algorithm. The module r.roughset is also included  for geographics rough set analisys and knowledge discovery based on rough set library. It is written in C language for GRASS versions 6.X.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Gianluca Massei (g_massa@libero.it ) - Antonio Boggia&lt;br /&gt;
&lt;br /&gt;
Available via SVN:&lt;br /&gt;
&lt;br /&gt;
 svn co https://svn.osgeo.org/grass/grass-addons/raster/mcda/&lt;br /&gt;
&lt;br /&gt;
==== r.mlv ====&lt;br /&gt;
&lt;br /&gt;
[http://les-ejk.cz/files/programs/grass/r.mlv.tgz r.mlv] is Mean of least variance filter for GRASS. It is an edge-preserving (or even edge-enhacing) filter, which should serve for removing additive noise from images. It is written in C language.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
==== r.out.jpeg ====&lt;br /&gt;
&lt;br /&gt;
[http://www.geospatial.it/allegri/grass/r.out.jpeg_ r.out.jpeg] is a simple GRASS script to export georeferenced JPEG images from rasters, keeping the associated color table. It is a two-step export: first a ppm file is created, then it is converted to jpeg usgin the &amp;quot;convert&amp;quot; command from ImageMagick&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Giovanni Allegri&lt;br /&gt;
&lt;br /&gt;
==== r.out.gmt ====&lt;br /&gt;
&lt;br /&gt;
[http://trac.osgeo.org/grass/browser/grass-addons/raster/r.out.gmt r.out.gmt] is a GRASS script for exporting a GRASS raster map into a [http://www.soest.hawaii.edu/gmt/ GMT] grid file. It also creates a GMT color table from the data and can generate some GMT commands for plotting a postscript file. (code is experimental, but functional)&amp;lt;BR&amp;gt;see  also http://169.237.35.250/~dylan/grass_user_group/#GMT_and_GRASS-overview&lt;br /&gt;
&lt;br /&gt;
: '''Authors:''' Hamish Bowman, Dylan Beaudette&lt;br /&gt;
&lt;br /&gt;
==== r.out.gmt2 ====&lt;br /&gt;
&lt;br /&gt;
[http://trac.osgeo.org/grass/browser/grass-addons/raster/r.out.gmt2 r.out.gmt2] is a modified version of Hamish's r.out.gmt.  Added options for title, xlabel, ylabel, comment, and map width.  Removed any settings that can be changed by gmtset for more flexibility.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Huidae Cho, Hamish Bowman, Dylan Beaudette&lt;br /&gt;
&lt;br /&gt;
==== r.pack ====&lt;br /&gt;
&lt;br /&gt;
[http://trac.osgeo.org/grass/browser/grass-addons/raster/r.pack r.pack and r.unpack] are two GRASS scripts for transfering raster maps to another computer as a single file.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
==== r.roughness ====&lt;br /&gt;
&lt;br /&gt;
[http://www.igc.usp.br/pessoais/guano/downloads/r.roughness r.roughness] is a shell script to calculate the surface roughness of a DEM, using r.surf.area and v.surf.rst. (for GRASS versions 6.1 and above)&lt;br /&gt;
&lt;br /&gt;
[http://www.igc.usp.br/pessoais/guano/downloads/r.roughness60 r.roughness60] - for GRASS versions 6.0.X&lt;br /&gt;
&lt;br /&gt;
[http://www.igc.usp.br/pessoais/guano/downloads/r.roughness.window.area r.roughness.window.area] - calculate surface roughness as the ratio of real (surface) area and planar area, using a moving-window approach.&lt;br /&gt;
&lt;br /&gt;
[http://www.igc.usp.br/pessoais/guano/downloads/r.roughness.window.vector r.roughness.window.vector] - calculate surface roughness as vector dispersion, using a moving-window approach. Resulting maps are: Vector Strength (R) and Inverted Fisher's k parameter. &lt;br /&gt;
&lt;br /&gt;
[http://www.igc.usp.br/pessoais/guano/downloads/r.roughness.window.vector.html r.roughness.window.vector.html] - provisional help page for r.roughness.window.vector.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Carlos Henrique Grohmann&lt;br /&gt;
&lt;br /&gt;
==== r.roughset ====&lt;br /&gt;
&lt;br /&gt;
r.roughset is a module for geographics rough set analisys and knowledge discovery based on rough set library. It is written in C language for GRASS versions 6.X.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Gianluca Massei (g_massa@libero.it ) - Antonio Boggia&lt;br /&gt;
&lt;br /&gt;
Available via SVN:&lt;br /&gt;
&lt;br /&gt;
 svn co https://svn.osgeo.org/grass/grass-addons/raster/mcda/r.roughset/&lt;br /&gt;
&lt;br /&gt;
==== r.smoothpatch ====&lt;br /&gt;
&lt;br /&gt;
[http://david.p.finlayson.googlepages.com/r.smoothpatch r.smoothpatch] creates a composite of two rasters using a distance-weighted average across the transition to smooth the edges.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' David Finlayson&lt;br /&gt;
&lt;br /&gt;
==== r.soils.texture ====&lt;br /&gt;
&lt;br /&gt;
r.soils.texture is a module to define soils texture from sand and clay raster file with a schema text file (now FAO,USDA and ISSS are available). It is written in C language. - for GRASS versions 6.x - For bugs and suggest: g_massa@libero.it &lt;br /&gt;
&lt;br /&gt;
:'''Author:''' Gianluca Massei&lt;br /&gt;
&lt;br /&gt;
Available via SVN:&lt;br /&gt;
&lt;br /&gt;
 svn co https://svn.osgeo.org/grass/grass-addons/raster/r.soils.texture/&lt;br /&gt;
&lt;br /&gt;
==== r.surf.nnbathy ====&lt;br /&gt;
&lt;br /&gt;
[http://kufaya.googlepages.com/r.surf.nnbathy.zip r.surf.nnbathy] interpolates a surface from a raster input using the [http://www.marine.csiro.au/~sakov/ nn] natural neighbor interpolation library. Provides triangulation, Sibson natural neighbor interpolation and non-Sibsonian interpolation.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Maciej Sieczka&lt;br /&gt;
&lt;br /&gt;
==== r.tileset ====&lt;br /&gt;
&lt;br /&gt;
[http://www.shockfamily.net/cedric/grass/r.tileset r.tileset] generates a list of tiles and sizes in a source projection that cover the region in the current database with appropriate resolution. The size of individual tiles can be constrained. Only tiles intersecting the current region are returned. These tilings are appropriate for requesting data from another projection to meet the specifications of the current region. For example, it could be used to generate tile requests to a latitude / longitude WMS server like this &amp;lt;code&amp;gt;r.tileset -w sourceproj=&amp;quot;+init=epsg:4326&amp;quot;&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Cedric Shock&lt;br /&gt;
&lt;br /&gt;
==== r.traveltime ====&lt;br /&gt;
&lt;br /&gt;
[http://jesbergwetter.twoday.net/stories/4845555/ r.traveltime] computes the travel time of surface runoff to an outlet. The program starts at the basin outlet and calculates the travel time at each raster cell recursively. A drainage area related threhold considers even  surface and also channel runoff. Travel times are derived by assuming kinematic wave approximation. The results can be used to derive a time-area function. This might be usefull for precipitation-runoff calculations (estimation of flood predictions) with a lumped hydrologic model (user-specified unit hydrograph).&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Kristian Förster&lt;br /&gt;
&lt;br /&gt;
==== r.watershed2 ====&lt;br /&gt;
&lt;br /&gt;
[http://trac.osgeo.org/grass/browser/grass-addons/raster/r.watershed2 r.watershed2] is a much faster version of r.watershed. Results are identical to the original r.watershed module. A new option has been added specifying maxmimum memory usage in MB for the disk swap memory mode.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Markus Metz&lt;br /&gt;
&lt;br /&gt;
==== r.zc.pl ====&lt;br /&gt;
&lt;br /&gt;
[http://les-ejk.cz/files/programs/zc.pl Zero crossing] is a simple Perl script, finds the ,,zero crossings`` from the Laplacian of Gaussian filter (see above). It is really &amp;lt;em&amp;gt;very&amp;lt;/em&amp;gt; simple, the edges don't need to be really on that pixel, where they are detected, no interpolation is performed.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
==== GIPE ====&lt;br /&gt;
&lt;br /&gt;
The GRASS Image Processing Environment (GIPE) has USLE, Energy-balance and radiance-reflectance correction models.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Yann Chemin (unless specified otherwise).&lt;br /&gt;
   &lt;br /&gt;
 svn co https://svn.osgeo.org/grass/grass-addons/gipe&lt;br /&gt;
&lt;br /&gt;
Remark: This is progressively moved to main GRASS SVN (aka GRASS 7)&lt;br /&gt;
&lt;br /&gt;
:* r.hydro.CASC2D, ported from GRASS 5.x version, is temporarily here waiting to return to main GRASS.&lt;br /&gt;
&lt;br /&gt;
:* r.soiltex2prop creates porosity, Saturated Hydraulic conductivity (Ksat) and wetting front pressure head (Hf) from percentage of sand and clay after Rawls et al., 1990. This is a must for r.hydro.CASC2D.&lt;br /&gt;
&lt;br /&gt;
:* i.biomass creates biomass growth map from fPAR, lightuse efficiency, water availability (or evap.fraction), Lat, doy and tsw.&lt;br /&gt;
&lt;br /&gt;
:* i.dn2ref.l7, r.dn2ref.ast create top of atmosphere reflectance for Landsat 7ETM+ and ASTER. These modules also have a flag for radiance output. Updated i.dn2ref.l7 to read .met calibration file.  &lt;br /&gt;
&lt;br /&gt;
:* i.dn2full.l[5,7] is an attempt to get all bands of Landsat[5,7] calibrated and corrected to either reflectance or temperature, reads only the .met file.  &lt;br /&gt;
&lt;br /&gt;
:* i.dn2potrad.l[5,7] is an attempt to get ET potential from DN of Landsat 7 (Careful! No Atmospheric correction!).  &lt;br /&gt;
&lt;br /&gt;
:* i.eb.* are a set of 10+ GRASS modules that together perform the main functions of  the SEBAL model (Bastiaanssen, 1995). Those functions include (but are not limited to) Soil heat flux, sensible heat flux, net radiation, evaporative fraction at satellite overpass, diurnal actual evapotranspiration, momentum roughness length, etc. These  modules are also part of any Energy-Balance related processing. &lt;br /&gt;
&lt;br /&gt;
:* i.evapo.potrad creates diurnal Potential evapotranspiration assuming all net radiation becomes ET, according to SEBAL model (Bastiaanssen, 1995). This module also has a flag for diurnal net radiation as required by SEBAL in i.eb.eta. &lt;br /&gt;
&lt;br /&gt;
:* i.evapo.SENAY creates actual evapotranspiration following the regional method of Senay (2007). &lt;br /&gt;
&lt;br /&gt;
:* i.lmf creates a Local Maximum Fitting on the temporal dimension of the multi-date input dataset, working, but more precision still to be added.&lt;br /&gt;
&lt;br /&gt;
:* i.vi.mpi is the mpi version of i.vi for cluster GRASS GIS education (no speed up here!) '''Author:''' Shamim Akhter &lt;br /&gt;
&lt;br /&gt;
:* i.modis.stateqa extracts State Quality Assessment information from Modis 500m (MOD09A) products.&lt;br /&gt;
&lt;br /&gt;
:* i.water creates a Water Mask from NDVI and Albedo, or specifically for Modis: NDVI and Band 7.&lt;br /&gt;
&lt;br /&gt;
:* i.wi creates a given Water Index (only one so far).&lt;br /&gt;
&lt;br /&gt;
==== HydroFOSS ====&lt;br /&gt;
&lt;br /&gt;
HydroFOSS - a GIS embedded approach for Free &amp;amp; Open Source Hydrological modeling.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Massimiliano Cannata&lt;br /&gt;
 &lt;br /&gt;
 svn co https://svn.osgeo.org/grass/grass-addons/HydroFOSS/&lt;br /&gt;
&lt;br /&gt;
==== hikereport ====&lt;br /&gt;
&lt;br /&gt;
python script that computes length, cumulative uphill and downhill, average slopes on an interactively drawn path. Based on r.profile's output.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Stefano Negri&lt;br /&gt;
&lt;br /&gt;
 http://tracce.wordpress.com/?attachment_id=71&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===General add-ons===&lt;br /&gt;
&lt;br /&gt;
==== g.laptop.sh ====&lt;br /&gt;
&lt;br /&gt;
: [http://www.nature-consult.de/dassau/g.laptop/g.laptop.sh g.laptop.sh] is an interactive shell script to extract raster and vector data from current Location into a new one. Data can be copied or extracted in current or original resolution and region extend. This script was written to extract smaller parts of a GRASS location to be able to present them on a laptop without the necessity to transfer huge data. Maps do not have to be in the same mapset.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Otto Dassau &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Readline completion ====&lt;br /&gt;
&lt;br /&gt;
: '''''Readline completion''''' for GRASS commands under the bash shell: [http://www.sorokine.info/grass-complete/ grass-complete] won't clutter the environment but needs to be installed; [http://dcalvelo.free.fr/grass/grass_rlcompleter.sh grass_rlcompleter.sh] needs almost no installation but will pollute the environment. Grass-Complete currently requires Bash version 2.05 for proper install.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Alexandre Sorokine (grass-complete), Daniel Calvelo (grass_rlcompleter.sh)&lt;br /&gt;
&lt;br /&gt;
==== g.region.nbcell ====&lt;br /&gt;
&lt;br /&gt;
: [http://precisiongis.blogspot.com/2008/02/gregionnbcell.html g.region.nbcell] is a shell script used to fix the number of cells in the current region.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Mathieu Grelier&lt;br /&gt;
&lt;br /&gt;
==== g.region.point ====&lt;br /&gt;
&lt;br /&gt;
: [http://trac.osgeo.org/grass/browser/grass-addons/general/g.region.point g.region.point] is a shell script which resets the computational region to a square box around a given coordinate. It is intended for use within GRASS scripts to speed up processing by limiting expensive raster calculations to a small area of interest.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
==== g.xlist ====&lt;br /&gt;
&lt;br /&gt;
: [http://trac.osgeo.org/grass/browser/grass-addons/general/g.xlist g.xlist] is a C implementation of g.mlist. g.xlist searches for data files matching a pattern given by wildcards or POSIX Extended Regular Expressions. POSIX regex(3) functions are required.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Huidae Cho&lt;br /&gt;
&lt;br /&gt;
==== g.xremove ====&lt;br /&gt;
&lt;br /&gt;
: [http://trac.osgeo.org/grass/browser/grass-addons/general/g.xremove g.xremove] is a C implementation of g.mremove. g.xremove removes data files matching a pattern given by wildcards or POSIX Extended Regular Expressions. POSIX regex(3) functions are required.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Huidae Cho&lt;br /&gt;
&lt;br /&gt;
=== Imagery add-ons ===&lt;br /&gt;
&lt;br /&gt;
See also&lt;br /&gt;
&lt;br /&gt;
 svn co https://svn.osgeo.org/grass/grass-addons/imagery&lt;br /&gt;
&lt;br /&gt;
==== i.points.reproj ====&lt;br /&gt;
&lt;br /&gt;
: [http://trac.osgeo.org/grass/browser/grass-addons/imagery/i.points.reproj i.points.reproj] is a shell script that will use cs2cs to reproject the target coordinates of a group's POINTS file. By running i.rectify directly to the new target projection, a generation of resampling data loss can be avoided (versus i.rectify + r.proj). On the other hand, i.rectify does not calculate cell resolution well if the map is to be rotated ([http://intevation.de/rt/webrt?serial_num=3296 bug #3296]), in those cases i.rectify+r.proj may be the better option.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
==== i.pr ====&lt;br /&gt;
&lt;br /&gt;
: Image classification: implements k-NN (multiclass), classification trees (multiclass), maximum likelihood (multiclass), Support Vector Machines (binary), bagging versions of all the base classifiers, AdaBoost for binary trees and support vector machines. It allows feature manipulation (normalization, principal components,...). It also implements feature selection techniques (RFE, E-RFE,...), statistical tests on variables, tools for resampling (cross-validation and bootstrap) and cost-sensitive techniques for trees and support vector machines.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Stefano Merler. Available via SVN:&lt;br /&gt;
&lt;br /&gt;
   svn co https://svn.osgeo.org/grass/grass-addons/imagery/i.pr&lt;br /&gt;
&lt;br /&gt;
==== i.warp ====&lt;br /&gt;
&lt;br /&gt;
: [http://trac.osgeo.org/grass/browser/grass-addons/imagery/i.warp i.warp] is a shell script that will use gdalwarp to rectify a raw input image using thin plate splines. The map should be imported into GRASS with r.in.gdal and GCPs set with i.points. Input is the raw image (GeoTIFF, JPEG, etc). Output is a GeoTIFF in the imagery group's target location's map projection. Requires a recent (early 2006) version of GRASS 6.1, or newer.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
=== Display add-ons ===&lt;br /&gt;
&lt;br /&gt;
See also&lt;br /&gt;
&lt;br /&gt;
 svn co https://svn.osgeo.org/grass/grass-addons/display&lt;br /&gt;
&lt;br /&gt;
==== d.edit.rast ====&lt;br /&gt;
&lt;br /&gt;
: [http://trac.osgeo.org/grass/browser/grass-addons/display/d.edit.rast d.edit.rast] edits cells in an existing raster map displayed on the current monitor.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Huidae Cho&lt;br /&gt;
&lt;br /&gt;
==== d.frame.quarter ====&lt;br /&gt;
&lt;br /&gt;
: [http://trac.osgeo.org/grass/browser/grass-addons/display/d.frame.split d.frame.quarter] is a shell script that will split the display into four quadrants (or sixths) using ''d.frame''. Individual frames are named ''uno, dos, tres, cuatro'', and ''full_screen''.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
==== d.frame.split ====&lt;br /&gt;
&lt;br /&gt;
: [http://trac.osgeo.org/grass/browser/grass-addons/display/d.frame.split d.frame.split] is similar as ''d.frame.quarter'', but works for 2,4,6,8,9,12, and 16 subframes and gives an option to spread the frames horizontally or vertically. Replacement for ''d.split'' and ''d.frame.quarter''. Used in GRASS 7 as ''d.split''.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
==== d.hyperlink ====&lt;br /&gt;
&lt;br /&gt;
: [ftp://gsca.nrcan.gc.ca/outgoing/Patton/Grass/Scripts/d.hyperlink.tar.bz2 d.hyperlink] is an interactive shell script that allows the viewing of hyperlinked images from a vector's attribute table in an external image viewer. Queries can be made via SQL statements or interactive mouse-clicking. The attribute table must be pre-populated with a column containing the image to link the vector to; the user also specifies the image folder in the current MAPSET where the images are located. The script currently supports gimp, Eye of Gnome, gthumb, gpdf, and Inkscape image viewers.&lt;br /&gt;
&lt;br /&gt;
: '''Author: '''Eric Patton&lt;br /&gt;
&lt;br /&gt;
==== d.mark ====&lt;br /&gt;
&lt;br /&gt;
: [http://trac.osgeo.org/grass/browser/grass-addons/display/d.shortcuts d.mark] is a shell script that quickly displays a marker on the display at a given coordinate.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Hamish Bowman &lt;br /&gt;
&lt;br /&gt;
==== d.region.box ====&lt;br /&gt;
&lt;br /&gt;
: [http://trac.osgeo.org/grass/browser/grass-addons/display/d.region.box d.region.box] is a shell script that quickly displays a box around the current region.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
==== d.stations ====&lt;br /&gt;
&lt;br /&gt;
: [http://trac.osgeo.org/grass/browser/grass-addons/display/d.shortcuts   d.stations] is a shell script that quickly displays vector points (or sites for GRASS 5.4 and below).&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Hamish Bowman &lt;br /&gt;
&lt;br /&gt;
==== d.varea ====&lt;br /&gt;
&lt;br /&gt;
: [http://trac.osgeo.org/grass/browser/grass-addons/display/d.shortcuts d.varea] is a shell script that quickly displays vector areas.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
==== pd-GRASS ====&lt;br /&gt;
&lt;br /&gt;
: [http://www.ornl.gov/sci/gist/software/grass/ pd-GRASS]: Parallel Display for GRASS GIS&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Alex Sorokine&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== [[IconSymbols]] ====&lt;br /&gt;
&lt;br /&gt;
* [[IconSymbols|Symbols]] which can be used with ''d.vect, d.graph'', and ''ps.map''.&lt;br /&gt;
&lt;br /&gt;
=== Postscript add-ons ===&lt;br /&gt;
&lt;br /&gt;
''See also [[ps.map scripts|ps.map samples and templates]]''.&lt;br /&gt;
&lt;br /&gt;
==== ps.atlas ====&lt;br /&gt;
&lt;br /&gt;
: [http://les-ejk.cz/programs/grass/ps.atlas ps.atlas] is a shell script that makes more maps on current region according to input *.psmap file. General map can be stored as vector file. The resulting *.eps maps can be automatically converted to *.pdf files.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
==== [[AreaFillPatterns]] ====&lt;br /&gt;
&lt;br /&gt;
* Hatches for ps.map's vareas&lt;br /&gt;
&lt;br /&gt;
===GRASS and UMN Mapserver===&lt;br /&gt;
&lt;br /&gt;
* [http://www.mail-archive.com/mapserver-users@lists.umn.edu/msg00086.html See interesting posting]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Community]]&lt;br /&gt;
[[Category:Development]]&lt;br /&gt;
[[Category:Documentation]]&lt;br /&gt;
[[Category:Installation]]&lt;/div&gt;</summary>
		<author><name>⚠️EricPatton</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=AddOns&amp;diff=7899</id>
		<title>AddOns</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=AddOns&amp;diff=7899"/>
		<updated>2008-12-01T15:22:23Z</updated>

		<summary type="html">&lt;p&gt;⚠️EricPatton: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page contains references to user contributions and add-ons (the original GRASS GIS software can be downloaded [http://grass.osgeo.org/download/index.php here]).&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
== AddOns source code repository ==&lt;br /&gt;
&lt;br /&gt;
The AddOns source code is hosted in [http://svn.osgeo.org/grass/grass-addons/ GRASS-AddOns SVN repository].&lt;br /&gt;
&lt;br /&gt;
To checkout:&lt;br /&gt;
&lt;br /&gt;
 svn checkout &amp;lt;nowiki&amp;gt;https://svn.osgeo.org/grass/grass-addons/&amp;lt;/nowiki&amp;gt; grass-addons&lt;br /&gt;
&lt;br /&gt;
Please contact the [http://lists.osgeo.org/mailman/listinfo/grass-dev grass-dev] mailing list if you would like to host your module there.&lt;br /&gt;
&lt;br /&gt;
== Adding something new ==&lt;br /&gt;
&lt;br /&gt;
Please announce your add-on to the GRASS users' mailing list so that others may be aware of your work.&lt;br /&gt;
&lt;br /&gt;
=== Copyright and licensing information ===&lt;br /&gt;
&lt;br /&gt;
''Please be sure to include copyright and licensing information in the header comments of your code so that others may know how they can use, extend, modify, and redistribute your work.''&lt;br /&gt;
&lt;br /&gt;
e.g. at the top of a shell script:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/sh&lt;br /&gt;
############################################################################&lt;br /&gt;
#&lt;br /&gt;
# MODULE:       v.in.e00&lt;br /&gt;
#&lt;br /&gt;
# AUTHOR(S):    Markus Neteler, Otto Dassau&lt;br /&gt;
#&lt;br /&gt;
# PURPOSE:      Import E00 data into a GRASS vector map&lt;br /&gt;
#               Imports single and split E00 files (.e00, .e01, .e02 ...)&lt;br /&gt;
#&lt;br /&gt;
# COPYRIGHT:    (c) 2004, 2005 GDF Hannover bR, http://www.gdf-hannover.de&lt;br /&gt;
#&lt;br /&gt;
#               This program is free software under the GNU General Public&lt;br /&gt;
#               License (&amp;gt;=v2). Read the file COPYING that comes with GRASS&lt;br /&gt;
#               for details.&lt;br /&gt;
#&lt;br /&gt;
#############################################################################&lt;br /&gt;
#&lt;br /&gt;
# REQUIREMENTS:&lt;br /&gt;
#      -  avcimport: http://avce00.maptools.org&lt;br /&gt;
&lt;br /&gt;
[script follows]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Coding standards ===&lt;br /&gt;
&lt;br /&gt;
Please have a look at our [http://grass.osgeo.org/grass63/source/SUBMITTING_SCRIPTS Shell script coding standards] before submitting here.&lt;br /&gt;
&lt;br /&gt;
There are other coding standards given for modules written in C, Tcl/Tk, and Python''(?)'' located in the GRASS source code.&lt;br /&gt;
&lt;br /&gt;
=== Documenting your code ===&lt;br /&gt;
&lt;br /&gt;
You can have an help page template auto-generated by using the GRASS [[module command line parser | command line parser]] with the &amp;lt;tt&amp;gt;--html-description&amp;lt;/tt&amp;gt; command line option. Please, see also the [http://grass.ibiblio.org/grass63/manuals/html63_user/g.parser.html g.parser help page]&lt;br /&gt;
&lt;br /&gt;
== Miscellaneous Add-ons ==&lt;br /&gt;
&lt;br /&gt;
* [http://trac.osgeo.org/grass/browser/grass-addons/misc/utm_which_zone utm_which_zone.sh] is a shell script to determine UTM zone from Lat/Lon input. Requires [http://www.octave.org Octave] or Matlab to be installed. A shell-only version is [http://dcalvelo.free.fr/grass/utm_which_zone_sh.sh available] which only requires awk.&amp;lt;BR&amp;gt;'''Authors''': Hamish Bowman (Octave part), Markus Neteler (shell script wrapper), Daniel Calvelo (sh+awk version)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Perl scripts for converting data forth and back between Excel files and PostgreSQL: [http://dcalvelo.free.fr/grass/pg2xls.pl pg2xls.pl] reads data from PostgreSQL and produces an excel workbook; [http://dcalvelo.free.fr/grass/xls2sql.pl xls2sql.pl] reads excel files and outputs SQL statements to be fed into an RDBMS. Both scripts need modules from [http://www.cpan.org CPAN], especially [http://search.cpan.org/dist/Spreadsheet-ParseExcel/  Spreadsheet::ParseExcel] for xls2sql.pl and [http://search.cpan.org/~tmtm/Spreadsheet-WriteExcel-FromDB Spreadsheet::WriteExcel::FromDB] and its dependencies for pg2sql.pl. Check the source headers for more info.&amp;lt;BR&amp;gt;'''Authors:''' Daniel Calvelo (xls2sql.pl), Markus Neteler (pg2xls.pl)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://dream.lrrl.arch.tu-muenchen.de/~wqual/perl/dbf2sql.tgz dbf2sql] is a Perl script for translating dbf-tables into a sql-command. dbf-tables are read using dbfdump-command from dbd-xbase-perl module ([http://search.cpan.org/~janpaz/DBD-XBase-0.241/ dbd::xbase] and [http://search.cpan.org/~jv/Getopt-Long-2.35/lib/Getopt/Long.pm getopt::long] have to be installed from CPAN first). There are problems, if the last column of the table contains characters. Suggestions for improvements welcome! &amp;lt;BR&amp;gt;'''Author:'''Wolfgang Qual&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.igc.usp.br/pessoais/guano/downloads/azimuth2.c azimuth2.c] is a small C program to calculate the azimuth and length of vector lines exported by GRASS-GIS as ASCII files (like this: v.out.ascii input=vector output=ascii format=standard). It is useful for create rose diagrams of lineament maps. Improvements on the original code after suggestions by Örs Téglásy, Hungary.&amp;lt;BR&amp;gt;'''Author:''' Carlos Henrique Grohmann&lt;br /&gt;
&lt;br /&gt;
==GRASS 5.x==&lt;br /&gt;
&lt;br /&gt;
===Vector add-ons for GRASS 5===&lt;br /&gt;
&lt;br /&gt;
* See here: http://grass.osgeo.org/download/addons.php&lt;br /&gt;
&lt;br /&gt;
===Raster add-ons for GRASS 5===&lt;br /&gt;
&lt;br /&gt;
* See here: http://grass.osgeo.org/download/addons.php&lt;br /&gt;
&lt;br /&gt;
* [http://www.valledemexico.ambitiouslemon.com/gwmodelling.html r.gmtg] The groundwater modelling tool for grass. A module to use MODFLOW within GRASS. &amp;lt;BR&amp;gt;'''Author''': Jaime Carrera&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.bowdoin.edu/~ltoma/research.html r.terracost] Scalable approach for computing least-cost-path surfaces on massive grid terrains. For GRASS 5.3.&amp;lt;BR&amp;gt;'''Lead author''': Laura Toma&lt;br /&gt;
&lt;br /&gt;
==GRASS 6.x==&lt;br /&gt;
&lt;br /&gt;
=== Vector add-ons ===&lt;br /&gt;
&lt;br /&gt;
See also&lt;br /&gt;
&lt;br /&gt;
 svn co https://svn.osgeo.org/grass/grass-addons/vector&lt;br /&gt;
&lt;br /&gt;
==== v.append ====&lt;br /&gt;
&lt;br /&gt;
: [http://www.public.asu.edu/~cmbarton/files/grass_scripts/v.append v.append] is a shell script combining two vector files AND their associated attribute tables. The vector files should be of the same type and, for best results, should have identically formatted attribute tables.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Michael Barton&lt;br /&gt;
&lt;br /&gt;
==== v.autokrige ====&lt;br /&gt;
&lt;br /&gt;
: [http://precisiongis.blogspot.com/2008/11/vautokrige.html v.autokrige] is a shell script used to achieve automatic kriging from GRASS sites (vector point data), using R with spgrass6 (RGRASS) and automap packages.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Mathieu Grelier&lt;br /&gt;
&lt;br /&gt;
==== v.breach ====&lt;br /&gt;
&lt;br /&gt;
: [http://kufaya.googlepages.com/v.breach.zip v.breach] creates vector maps of lines and points of continously lowering elevation down the input watercourses, based on the input raster DEM.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Maciej Sieczka&lt;br /&gt;
&lt;br /&gt;
==== v.colors ====&lt;br /&gt;
&lt;br /&gt;
: [http://trac.osgeo.org/grass/browser/grass-addons/vector/v.colors v.colors] is a shell script for populating a GRASSRGB column based on a numeric database column and a ''r.colors'' rules file. Works just like ''r.colors'', but for vector maps.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
==== v.count.points.sh ====&lt;br /&gt;
&lt;br /&gt;
: [http://wiki.iosa.it/dokuwiki/spatial_analysis:feature_count v.count.points.sh] counts point features in areas, generates table good as input to d.vect.chart.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Stefano Costa&lt;br /&gt;
&lt;br /&gt;
==== v.digatt ====&lt;br /&gt;
&lt;br /&gt;
: [http://phygeo7.geo.uni-augsburg.de/gis2/scripts/v.digatt v.digatt] (shell script) Interactively assign numeric table attributes to series of vector objects. It is meant to be effective by avoiding to type in the attribute value for all single objects again and again. The user is prompted for typing in an attribute value which is assigned to all objects selected by mouseclick afterwards. Next the display is redrawn after updating the table column. Zooming allows to change the region before the old value can be reused or a new one can be typed in (or copied by mouse from another object) in order to assign it to the next series of objects etc. It is tested not very extensively yet. Therefore better work with a copy of your map and consider using v.digit or d.what.vect -e alternatively. [http://phygeo7.geo.uni-augsburg.de/gis2/scripts/v.digatt.png screenshot].&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Andreas Philipp&lt;br /&gt;
&lt;br /&gt;
==== v.dip ====&lt;br /&gt;
&lt;br /&gt;
: [http://marcin.slodkowski.googlepages.com/v.dip.tgz v.dip] creates points of thickness vectors from the vectors of strike and dip angles. The v.dip is the main ANSI C core program. Program so-called v.dip can run without GRASS environment.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Marcin Slodkowski&lt;br /&gt;
&lt;br /&gt;
==== v.flip ====&lt;br /&gt;
&lt;br /&gt;
: [http://kufaya.googlepages.com/v.flip.zip v.flip] flips the direction of selected vector lines (redundant since GRASS 6.3 - there is &amp;quot;v.edit tool=flip&amp;quot;).&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Maciej Sieczka&lt;br /&gt;
&lt;br /&gt;
==== v.group ====&lt;br /&gt;
&lt;br /&gt;
: [http://www.shockfamily.net/cedric/grass/v.group v.group] generates a new vector map with the same geometry as an existing map. The new map has categories and a table based on grouping by the values in certain columns of the existing map's table. The values in these columns are preserved in the table for the new map. It's like a v.reclass that preserves data.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Cedric Shock&lt;br /&gt;
&lt;br /&gt;
==== v.in.gama ====&lt;br /&gt;
&lt;br /&gt;
: [http://k153-85.fsv.cvut.cz/cgi-bin/viewcvs.cgi/grass6/vector/v.in.gama/ v.in.gama] converts [http://www.gnu.org/software/gama/ GNU GaMa] XML output file to a GRASS vector map layer.&lt;br /&gt;
&lt;br /&gt;
:'''Author:''' Martin Landa&lt;br /&gt;
&lt;br /&gt;
==== v.in.ncdc ====&lt;br /&gt;
&lt;br /&gt;
: [http://trac.osgeo.org/grass/browser/grass-addons/vector/v.in.ncdc v.in.ncdc] imports an [http://www.ncdc.noaa.gov NCDC] stn file (station data) into a GRASS vector map.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Huidae Cho&lt;br /&gt;
&lt;br /&gt;
==== v.in.postgis.sqlquery ====&lt;br /&gt;
&lt;br /&gt;
: [http://precisiongis.blogspot.com/2007/11/vinpostgissqlquery-tool-to-import.html v.in.postgis.sqlquery] imports PostGIS data in GRASS, from arbitrary sql queries.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Mathieu Grelier&lt;br /&gt;
&lt;br /&gt;
==== v.in.osm ====&lt;br /&gt;
&lt;br /&gt;
: [http://kripton.kripserver.net/software/v.in.osm/ v.in.osm]: OpenStreetMap import into GRASS. Yet only supports deprecated API 0.4, will be modified to work with API 0.5 some time soon.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Jannis Achstetter&lt;br /&gt;
&lt;br /&gt;
: See also [http://hamish.bowman.googlepages.com/gpsdrivefiles#osm osm2grass.sh] by H Bowman&lt;br /&gt;
&lt;br /&gt;
==== v.in.ovl ====&lt;br /&gt;
&lt;br /&gt;
: [http://grasslab.gisix.com/scripts/v.in.ovl/ v.in.ovl] is a shell script that imports an ASCII vector file created with TOP10|25|50 or similar products.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Peter Löwe&lt;br /&gt;
&lt;br /&gt;
==== v.lda ====&lt;br /&gt;
&lt;br /&gt;
: [http://www.public.asu.edu/~cmbarton/files/grass_scripts/v.lda v.lda] is a shell script for calculating Ian Johnson's (U. Sidney) Local Density Analysis values to measure clustering of point data at different neighborhood radii. There is an option to create a simple line graph of the results. There have been reports of problems creating the line graph on Cygwin installations of GRASS.&lt;br /&gt;
&lt;br /&gt;
==== v.line.center ====&lt;br /&gt;
&lt;br /&gt;
: [http://kufaya.googlepages.com/v.line.center.zip v.line.center] creates a points vector map with each point located in the middle of the length of the input vector line.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Maciej Sieczka&lt;br /&gt;
&lt;br /&gt;
==== v.lmeasure ====&lt;br /&gt;
&lt;br /&gt;
: [http://ngeo.de/grassstuff/v.lmeasure v.lmeasure] and [http://ngeo.de/grassstuff/v.revlmeasure v.revlmeasure] are two perl scripts that place equidistant vector points along a given arbitrary vector line starting from the beginning or end of the vector line, respectively. Resulting  vector points are labeled with the distance from origin.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Mats Schuh&lt;br /&gt;
&lt;br /&gt;
==== v.out.ascii.db ====&lt;br /&gt;
&lt;br /&gt;
: [http://trac.osgeo.org/grass/browser/grass-addons/vector/v.out.ascii.db v.out.ascii.db] is a shell script for exporting vector point data coordinates and selected attribute columns to either a file or to the console.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
==== v.out.ascii.mat ====&lt;br /&gt;
&lt;br /&gt;
: [http://trac.osgeo.org/grass/browser/grass-addons/vector/v.out.ascii.mat v.out.ascii.mat] is a shell script for exporting vector polygon and polyline data into an ASCII text file suitable for loading into Matlab (or [http://www.gnu.org/software/octave/ Octave]).&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
==== v.out.gmt ====&lt;br /&gt;
&lt;br /&gt;
: [http://trac.osgeo.org/grass/browser/grass-addons/vector/v.out.gmt v.out.gmt] is a shell script that exports a polygon vector file into GMT xy file. psbasemap code was copied from Hamish's r.out.gmt.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Huidae Cho, Hamish Bowman, Dylan Beaudette&lt;br /&gt;
&lt;br /&gt;
==== v.out.kml ====&lt;br /&gt;
&lt;br /&gt;
: [http://grasslab.gisix.com/scripts/v.out.kml/ v.out.kml] is a shell script that exports a vector file into a KML file for Google Earth or Worldwind.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Peter Löwe&lt;br /&gt;
&lt;br /&gt;
==== v.out.svg ====&lt;br /&gt;
&lt;br /&gt;
: [http://svg.cc/grass/index.html v.out.svg] is a module that exports SVG notation along with optional attribute data directly from GRASS 6.x vector layers. Now part of [http://svn.osgeo.org/grass/grass/trunk/vector/v.out.svg/ grass6-svn].&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Klaus Förster&lt;br /&gt;
&lt;br /&gt;
==== v.random.cover ====&lt;br /&gt;
&lt;br /&gt;
: [http://trac.osgeo.org/grass/browser/grass-addons/vector/v.random.cover v.random.cover] is a shell script for creating random points constrained within an irregularly shaped vector area. (v.random places points only in current region rectangle). Optionally the user can upload raster values at the points. See also '&amp;lt;tt&amp;gt;r.random cover= vector_output=&amp;lt;/tt&amp;gt;'&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
==== v.rasterbounds ====&lt;br /&gt;
&lt;br /&gt;
: [http://les-ejk.cz/programs v.rasterbounds] is a shell script for creating polygon-vector file of rasterfile boundaries. The best version of GRASS is 6.1+. If you are using GRASS &amp;lt; 6.1, you  have to be in the same mapset as your raster maps are from.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
==== v.sample.buffer [broken link, please update or delete]====&lt;br /&gt;
&lt;br /&gt;
: [http://www.clubwebcanada.ca/twiens/v.sample.buffer.tgz v.sample.buffer] is a shell script that samples rasters in buffers of a specified size around features in a specified vector file. Sampling results are added as attributes to the vector file. This script was designed for sampling vegetation indices and DEM derived attributes for bird point counts. Sampling results can be one or more basic statistics such as mean, range, max, etc.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Trevor Wiens&lt;br /&gt;
&lt;br /&gt;
==== v.select.region ====&lt;br /&gt;
&lt;br /&gt;
: [ftp://gsca.nrcan.gc.ca/outgoing/Patton/Grass/Scripts/v.select.region.tar.bz2 v.select.region] is a shell script that prints out the names of all vectors matching an input search pattern that has geometry (points, line, areas) that fall within a region bounded by an existing vector map, or within the current Grass region.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Eric Patton&lt;br /&gt;
&lt;br /&gt;
==== v.surf.icw ====&lt;br /&gt;
&lt;br /&gt;
: [http://trac.osgeo.org/grass/browser/grass-addons/vector/v.surf.icw v.surf.icw] is an IDW interpolation method using true distance cost instead of euclidean shortest distance, i.e. ''as the fish swims around an island'' not ''as the bird flies''. This will cleanly travel around hard barriers and a cost surface map may be used to model expensive-cross barriers. Input data points do not need direct line of sight to be considered, but should be kept within a few dozen as the module becomes very computationally expensive. A number of radial basis function options are available. ([http://grass.gdf-hannover.de/wiki/Image:Inlets_03_SurfSal_icw_big.png screenshot])&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
==== v.surf.idwpow ====&lt;br /&gt;
&lt;br /&gt;
: [http://www.geospatial.it/allegri/grass/v.surf.idwpow.zip v.surf.idwpow] integrates the common v.surf.idw algorithm with the exponential parameter for the distance weights&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Giovanni Allegri&lt;br /&gt;
&lt;br /&gt;
==== v.surf.krige ====&lt;br /&gt;
&lt;br /&gt;
: [http://www.gfosservices.it/?q=node/61 v.surf.krige] is a script that do a surface interpolation from vector point data by Kriging method. The interpolated value of a cell is determined by using an omnidirectional variogram model fitted starting from model parameter given by user shown from the experimental semi variogram produced by v.variogram. The script can perform also the Leave-One-out cross validation to test the variogram model &amp;quot;fitted by eye&amp;quot; and an automatic fitted variogram model. The cross validation helps the user to choose the best variogram model to interpolate own data.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Pierluigi De Rosa.&lt;br /&gt;
&lt;br /&gt;
==== v.strahler ====&lt;br /&gt;
&lt;br /&gt;
: [http://www.pois.org/florian/downloads/grass/v.strahler.tgz v.strahler] is a module that calculates the Strahler Order for all lines of a given dendritic network.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Florian Kindl. Available via SVN:&lt;br /&gt;
&lt;br /&gt;
 svn co https://svn.osgeo.org/grass/grass-addons/vector/v.strahler&lt;br /&gt;
&lt;br /&gt;
==== v.swathwidth ====&lt;br /&gt;
&lt;br /&gt;
: [http://david.p.finlayson.googlepages.com/v.swathwidth v.swathwidth] creates a vector map representing the sea bottom coverage of a multibeam (swath) sonar survey.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' David Finlayson&lt;br /&gt;
&lt;br /&gt;
==== v.thickness ====&lt;br /&gt;
&lt;br /&gt;
: [http://marcin.slodkowski.googlepages.com/v.thickness.tgz v.thickness] creates points of thickness vectors from the vectors of strike and dip angles.The v.thickness is GUI GRASS script for v.dip.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Marcin Slodkowski&lt;br /&gt;
&lt;br /&gt;
==== v.trees3d ====&lt;br /&gt;
&lt;br /&gt;
: [http://les-ejk.cz/programs/ v.trees3d] is a module for making 3D trees from input vector point file.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== v.trimesh ====&lt;br /&gt;
: [http://www.valledemexico.ambitiouslemon.com/vtrimesh.html v.trimesh] creates a triangular mesh from a vector map using areal constraints for refinement. It uses Jonathan Shewchuk's Triangle library.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Jaime Carrera&lt;br /&gt;
&lt;br /&gt;
==== v.what.rast.buffer ====&lt;br /&gt;
&lt;br /&gt;
: [http://trac.osgeo.org/grass/browser/grass-addons/vector/v.what.rast.buffer v.what.rast.buffer] is a script that calculates univariate statistics of raster map(s) from buffers around vector points. Results are written to a file. Resolution is taken from each input map.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== v.variogram ====&lt;br /&gt;
&lt;br /&gt;
: [http://www.gfosservices.it/?q=node/61 v.variogram] is a script that create an omnidirectional experimental semi-variogram. This scripts require R-statistics software installed on your machine. Now the script is updated to run on spgrass6 &amp;gt;= 0.3 and sp &amp;gt;= 0.9 [http://grass.osgeo.org/pipermail/statsgrass/2006-October/000455.html reply].&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Ivan Marchesini, Pierluigi De Rosa.&lt;br /&gt;
&lt;br /&gt;
==== AniMove ====&lt;br /&gt;
&lt;br /&gt;
: [http://www.faunalia.it/animov/ AniMove] is software for analysis of animal movement and ranging behaviour using QGIS+GRASS+R.&lt;br /&gt;
&lt;br /&gt;
:'''Authors:''' Support by Faunalia.it&lt;br /&gt;
&lt;br /&gt;
==== Utilities ====&lt;br /&gt;
&lt;br /&gt;
===== Shapemerge =====&lt;br /&gt;
&lt;br /&gt;
: [http://perrygeo.googlecode.com/svn/trunk/gis-bin/shpmerge.sh shpmerge] merges all the shapefiles in the current directory into a single output shapefile&lt;br /&gt;
&lt;br /&gt;
:'''Authors:''' Perrygeo&lt;br /&gt;
&lt;br /&gt;
=== Raster add-ons ===&lt;br /&gt;
&lt;br /&gt;
See also&lt;br /&gt;
&lt;br /&gt;
 svn co https://svn.osgeo.org/grass/grass-addons/raster&lt;br /&gt;
&lt;br /&gt;
==== r.bilateral ====&lt;br /&gt;
&lt;br /&gt;
[http://les-ejk.cz/files/programs/grass/r.bilateral.tgz r.bilateral] Bilateral filter is an edge-preserving filter, which combines domain and range filtering. It is written in C language.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
==== r.boxcount ====&lt;br /&gt;
&lt;br /&gt;
r.boxcount and r.boxcount.sh calculate the fractal dimension for a given map. These are versions for grass6 of [http://www.ucl.ac.uk/~tcrnmar/ Mark Lake's modules] for grass43.&lt;br /&gt;
&lt;br /&gt;
: '''Authors:''' Mark Lake, grass6 port: Florian Kindl.&lt;br /&gt;
&lt;br /&gt;
Available via SVN:&lt;br /&gt;
&lt;br /&gt;
 svn co https://svn.osgeo.org/grass/grass-addons/raster/r.boxcount/&lt;br /&gt;
 svn co https://svn.osgeo.org/grass/grass-addons/raster/r.boxcount.sh/&lt;br /&gt;
&lt;br /&gt;
==== r.colors.quantiles ====&lt;br /&gt;
&lt;br /&gt;
[http://precisiongis.blogspot.com/2008/10/rcolorsquantiles.html r.colors.quantiles] is a shell script used to create raster colors rules based on nquantiles. It uses R and spgrass6 package (RGRASS).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
: '''Authors:''' Mathieu Grelier&lt;br /&gt;
&lt;br /&gt;
==== r.colors.stddev ====&lt;br /&gt;
&lt;br /&gt;
[http://hamish.bowman.googlepages.com/grass_color_maps r.colors.stddev] is a GRASS shell script for creating dynamic color rules for raster maps based on univariate statistics.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
==== r.cpt2grass ====&lt;br /&gt;
&lt;br /&gt;
: [http://hamish.bowman.googlepages.com/grass_color_maps r.cpt2grass] is a GRASS script for importing a [http://www.soest.hawaii.edu/gmt/ GMT] .cpt color table into GRASS. It can save to a text file suitable for r.colors or automatically apply the color table to a raster map.&amp;lt;BR&amp;gt;For a large collection of GMT .cpt files see http://sview01.wiredworkplace.net/pub/cpt-city/&lt;br /&gt;
: Other palette ideas from [http://geography.uoregon.edu/datagraphics/color_scales.htm Univ. Oregon] and [http://oceancolor.gsfc.nasa.gov/PRODUCTS/colorbars.html NASA/Goddard's OceanColor] (latter partially translated for use with GRASS on the [http://trac.osgeo.org/grass/browser/grass-addons/raster/r.colors.tools/palettes grass-addons SVN]).&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
==== r.csr ====&lt;br /&gt;
&lt;br /&gt;
[ftp://gsca.nrcan.gc.ca/outgoing/Patton/Grass/Scripts/r.csr.tar.bz2 r.csr] integrates several Grass programs to produce colored, shaded-relief rasters in one step. Accepts single or multiple elevation/bathymetry maps as input; optionally will fill data holidays with 3x3 median filter, multiple times, if required; can apply color maps from a) input raster, b) another raster in MAPSET, or c) from a rules file; otherwise, rainbow colorbar is applied. Output colored, shaded-relief rasters can optionally be exported to tiff format if the appropriate flag is given. Shading parameters can be modified, though useful defaults are given.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Eric Patton&lt;br /&gt;
&lt;br /&gt;
==== r.dominant_dir.m and r.calc_terraflow_dir.m ====&lt;br /&gt;
&lt;br /&gt;
[http://trac.osgeo.org/grass/browser/grass-addons/raster/r.terraflow.tools dominant_dir.m and calc_terraflow_dir.m] are two Matlab scripts for determining the dominant flow direction from a r.terraflow MFD map and converting into a GRASS aspect map for use with d.rast.arrow, etc.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
==== r.eucdist ====&lt;br /&gt;
&lt;br /&gt;
[http://david.p.finlayson.googlepages.com/r.eucdist r.eucdist] creates a raster map estimating the euclidean distance from known cells.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' David Finlayson&lt;br /&gt;
&lt;br /&gt;
==== r.fragment ====&lt;br /&gt;
&lt;br /&gt;
[ftp://gsca.nrcan.gc.ca/outgoing/Patton/Grass/Scripts/r.fragment.tar.bz2 r.fragment] fragments a raster into a user-defined set of smaller tiles according to an input number of rows and columns. Optionally, a null value threshold can be set to filter out candidate tiles that would have a large percentage of null cells.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Eric Patton&lt;br /&gt;
&lt;br /&gt;
==== r.game_of_life ====&lt;br /&gt;
&lt;br /&gt;
[http://trac.osgeo.org/grass/browser/grass-addons/raster/r.game_of_life r.game_of_life] is a shell script which runs Conway's classic Game of Life using GRASS raster modules. It is meant to demonstrate how easy it is to program cellular automata in GRASS as well as various 3D raster volume and time series visualization techniques.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
==== r.gauss ====&lt;br /&gt;
&lt;br /&gt;
[http://www.les-ejk.cz/files/programs/grass/r.gauss.tgz r.gauss] is Gaussian and Laplacian of Gaussian filter for GRASS. It is written in C language.&lt;br /&gt;
&lt;br /&gt;
:'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
==== r.gradgrid4 ====&lt;br /&gt;
&lt;br /&gt;
[http://www.uibk.ac.at/geographie/personal/mergili/gradgrid4.zip gradgrid4] is a tool for interpolating values of discrete data points to a raster map, applying a local regression approach with a predictor raster. The model is based on shell and python scripts as well as an R batchfile. It was tested on Fedora Core 6 with GRASS 6.2.1 and R 2.5.1, but should work under most UNIX systems. After unzipping the gradgrid4 folder, store it at any place in your local file system. In the subfolder docs you can find a manual and a publication draft with a detailed description of the concept and the example of an application. The subfolder testloc constitutes a GRASS location with test data.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Martin Mergili&lt;br /&gt;
&lt;br /&gt;
==== r.in.onearth ====&lt;br /&gt;
&lt;br /&gt;
[http://www-pool.math.tu-berlin.de/~soeren/grass/modules/ r.in.onearth] for download and import satellite images direct from the NASA onearth WMS server into GRASS.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Soeren Gebbert&lt;br /&gt;
&lt;br /&gt;
==== r.in.wms ====&lt;br /&gt;
&lt;br /&gt;
[http://les-ejk.cz/files/programs/grass/r.in.wms.tgz r.in.wms] for download and import maps direct from  WMS servers into GRASS. This script is written in Python Programming language. Note GRASS 6.2+ provides a shell script version of r.in.wms, take care of which one is actually being run.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
==== r.inund.fluv ====&lt;br /&gt;
&lt;br /&gt;
[https://svn.osgeo.org/grass/grass-addons/raster/r.inund.fluv/ r.inund.fluv]This command allows to obtain a fluvial potentially inundation map given a high-resolution DTM of the area surrounding the river and a water surface profile calculated through an 1-D hydrodinamic model. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
: '''Authors:''' Roberto Marzocchi, Bianca Federici, Domenico Sguerso&lt;br /&gt;
&lt;br /&gt;
==== r.isoregions ====&lt;br /&gt;
&lt;br /&gt;
[http://precisiongis.blogspot.com/2007/12/risoregions.html r.isoregions] allows isoregions creation from a GRASS raster map. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
: '''Authors:''' Mathieu Grelier&lt;br /&gt;
&lt;br /&gt;
==== r.interp.mask ====&lt;br /&gt;
&lt;br /&gt;
[http://david.p.finlayson.googlepages.com/r.interp.mask r.interp.mask] Creates a user-specified buffer around interpolation points that can be used as a MASK to prevent or clip excessive extrapolation artifacts. This works much better than a standard convex hull around the points.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' David Finlayson&lt;br /&gt;
&lt;br /&gt;
==== r.li ====&lt;br /&gt;
&lt;br /&gt;
[http://www.faunalia.it/download/r_li/ r.li] is a more flexible and faster replacement of the old r.le. '''''Moved into 6.3-SVN'''''.&lt;br /&gt;
&lt;br /&gt;
: '''Authors:''' Claudio Porta, Davide Spano, Serena Pallecchi, [http://www.faunalia.it Faunalia]&lt;br /&gt;
&lt;br /&gt;
==== r.local_max.pl ====&lt;br /&gt;
&lt;br /&gt;
[http://les-ejk.cz/files/programs/local_max.pl Local maxima] is a Perl script for &amp;lt;code&amp;gt;r.mapcalc&amp;lt;/code&amp;gt;. It detects local maxima of the image.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
==== r.mandelbrot ====&lt;br /&gt;
&lt;br /&gt;
[http://grasslab.gisix.com/scripts/r.mandelbrot r.mandelbrot] is a shell script to calculate the Mandelbrot set.- for GRASS versions 6.X.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Peter Löwe&lt;br /&gt;
&lt;br /&gt;
==== mcda====&lt;br /&gt;
&lt;br /&gt;
mcda suite is a toolset for geographics multi-criteria decision aiding and data analysis based on ELECTRE (r.mcda.electre), REGIME (r.mcda.regime) and FUZZY (r.mcda.fuzzy) algorithm. The module r.roughset is also included  for geographics rough set analisys and knowledge discovery based on rough set library. It is written in C language for GRASS versions 6.X.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Gianluca Massei (g_massa@libero.it ) - Antonio Boggia&lt;br /&gt;
&lt;br /&gt;
Available via SVN:&lt;br /&gt;
&lt;br /&gt;
 svn co https://svn.osgeo.org/grass/grass-addons/raster/mcda/&lt;br /&gt;
&lt;br /&gt;
==== r.mlv ====&lt;br /&gt;
&lt;br /&gt;
[http://les-ejk.cz/files/programs/grass/r.mlv.tgz r.mlv] is Mean of least variance filter for GRASS. It is an edge-preserving (or even edge-enhacing) filter, which should serve for removing additive noise from images. It is written in C language.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
==== r.out.jpeg ====&lt;br /&gt;
&lt;br /&gt;
[http://www.geospatial.it/allegri/grass/r.out.jpeg_ r.out.jpeg] is a simple GRASS script to export georeferenced JPEG images from rasters, keeping the associated color table. It is a two-step export: first a ppm file is created, then it is converted to jpeg usgin the &amp;quot;convert&amp;quot; command from ImageMagick&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Giovanni Allegri&lt;br /&gt;
&lt;br /&gt;
==== r.out.gmt ====&lt;br /&gt;
&lt;br /&gt;
[http://trac.osgeo.org/grass/browser/grass-addons/raster/r.out.gmt r.out.gmt] is a GRASS script for exporting a GRASS raster map into a [http://www.soest.hawaii.edu/gmt/ GMT] grid file. It also creates a GMT color table from the data and can generate some GMT commands for plotting a postscript file. (code is experimental, but functional)&amp;lt;BR&amp;gt;see  also http://169.237.35.250/~dylan/grass_user_group/#GMT_and_GRASS-overview&lt;br /&gt;
&lt;br /&gt;
: '''Authors:''' Hamish Bowman, Dylan Beaudette&lt;br /&gt;
&lt;br /&gt;
==== r.out.gmt2 ====&lt;br /&gt;
&lt;br /&gt;
[http://trac.osgeo.org/grass/browser/grass-addons/raster/r.out.gmt2 r.out.gmt2] is a modified version of Hamish's r.out.gmt.  Added options for title, xlabel, ylabel, comment, and map width.  Removed any settings that can be changed by gmtset for more flexibility.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Huidae Cho, Hamish Bowman, Dylan Beaudette&lt;br /&gt;
&lt;br /&gt;
==== r.pack ====&lt;br /&gt;
&lt;br /&gt;
[http://trac.osgeo.org/grass/browser/grass-addons/raster/r.pack r.pack and r.unpack] are two GRASS scripts for transfering raster maps to another computer as a single file.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
==== r.roughness ====&lt;br /&gt;
&lt;br /&gt;
[http://www.igc.usp.br/pessoais/guano/downloads/r.roughness r.roughness] is a shell script to calculate the surface roughness of a DEM, using r.surf.area and v.surf.rst. (for GRASS versions 6.1 and above)&lt;br /&gt;
&lt;br /&gt;
[http://www.igc.usp.br/pessoais/guano/downloads/r.roughness60 r.roughness60] - for GRASS versions 6.0.X&lt;br /&gt;
&lt;br /&gt;
[http://www.igc.usp.br/pessoais/guano/downloads/r.roughness.window.area r.roughness.window.area] - calculate surface roughness as the ratio of real (surface) area and planar area, using a moving-window approach.&lt;br /&gt;
&lt;br /&gt;
[http://www.igc.usp.br/pessoais/guano/downloads/r.roughness.window.vector r.roughness.window.vector] - calculate surface roughness as vector dispersion, using a moving-window approach. Resulting maps are: Vector Strength (R) and Inverted Fisher's k parameter. &lt;br /&gt;
&lt;br /&gt;
[http://www.igc.usp.br/pessoais/guano/downloads/r.roughness.window.vector.html r.roughness.window.vector.html] - provisional help page for r.roughness.window.vector.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Carlos Henrique Grohmann&lt;br /&gt;
&lt;br /&gt;
==== r.roughset ====&lt;br /&gt;
&lt;br /&gt;
r.roughset is a module for geographics rough set analisys and knowledge discovery based on rough set library. It is written in C language for GRASS versions 6.X.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Gianluca Massei (g_massa@libero.it ) - Antonio Boggia&lt;br /&gt;
&lt;br /&gt;
Available via SVN:&lt;br /&gt;
&lt;br /&gt;
 svn co https://svn.osgeo.org/grass/grass-addons/raster/mcda/r.roughset/&lt;br /&gt;
&lt;br /&gt;
==== r.smoothpatch ====&lt;br /&gt;
&lt;br /&gt;
[http://david.p.finlayson.googlepages.com/r.smoothpatch r.smoothpatch] creates a composite of two rasters using a distance-weighted average across the transition to smooth the edges.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' David Finlayson&lt;br /&gt;
&lt;br /&gt;
==== r.soils.texture ====&lt;br /&gt;
&lt;br /&gt;
r.soils.texture is a module to define soils texture from sand and clay raster file with a schema text file (now FAO,USDA and ISSS are available). It is written in C language. - for GRASS versions 6.x - For bugs and suggest: g_massa@libero.it &lt;br /&gt;
&lt;br /&gt;
:'''Author:''' Gianluca Massei&lt;br /&gt;
&lt;br /&gt;
Available via SVN:&lt;br /&gt;
&lt;br /&gt;
 svn co https://svn.osgeo.org/grass/grass-addons/raster/r.soils.texture/&lt;br /&gt;
&lt;br /&gt;
==== r.surf.nnbathy ====&lt;br /&gt;
&lt;br /&gt;
[http://kufaya.googlepages.com/r.surf.nnbathy.zip r.surf.nnbathy] interpolates a surface from a raster input using the [http://www.marine.csiro.au/~sakov/ nn] natural neighbor interpolation library. Provides triangulation, Sibson natural neighbor interpolation and non-Sibsonian interpolation.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Maciej Sieczka&lt;br /&gt;
&lt;br /&gt;
==== r.tileset ====&lt;br /&gt;
&lt;br /&gt;
[http://www.shockfamily.net/cedric/grass/r.tileset r.tileset] generates a list of tiles and sizes in a source projection that cover the region in the current database with appropriate resolution. The size of individual tiles can be constrained. Only tiles intersecting the current region are returned. These tilings are appropriate for requesting data from another projection to meet the specifications of the current region. For example, it could be used to generate tile requests to a latitude / longitude WMS server like this &amp;lt;code&amp;gt;r.tileset -w sourceproj=&amp;quot;+init=epsg:4326&amp;quot;&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Cedric Shock&lt;br /&gt;
&lt;br /&gt;
==== r.traveltime ====&lt;br /&gt;
&lt;br /&gt;
[http://jesbergwetter.twoday.net/stories/4845555/ r.traveltime] computes the travel time of surface runoff to an outlet. The program starts at the basin outlet and calculates the travel time at each raster cell recursively. A drainage area related threhold considers even  surface and also channel runoff. Travel times are derived by assuming kinematic wave approximation. The results can be used to derive a time-area function. This might be usefull for precipitation-runoff calculations (estimation of flood predictions) with a lumped hydrologic model (user-specified unit hydrograph).&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Kristian Förster&lt;br /&gt;
&lt;br /&gt;
==== r.watershed2 ====&lt;br /&gt;
&lt;br /&gt;
[http://trac.osgeo.org/grass/browser/grass-addons/raster/r.watershed2 r.watershed2] is a much faster version of r.watershed. Results are identical to the original r.watershed module. A new option has been added specifying maxmimum memory usage in MB for the disk swap memory mode.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Markus Metz&lt;br /&gt;
&lt;br /&gt;
==== r.zc.pl ====&lt;br /&gt;
&lt;br /&gt;
[http://les-ejk.cz/files/programs/zc.pl Zero crossing] is a simple Perl script, finds the ,,zero crossings`` from the Laplacian of Gaussian filter (see above). It is really &amp;lt;em&amp;gt;very&amp;lt;/em&amp;gt; simple, the edges don't need to be really on that pixel, where they are detected, no interpolation is performed.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
==== GIPE ====&lt;br /&gt;
&lt;br /&gt;
The GRASS Image Processing Environment (GIPE) has USLE, Energy-balance and radiance-reflectance correction models.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Yann Chemin (unless specified otherwise).&lt;br /&gt;
   &lt;br /&gt;
 svn co https://svn.osgeo.org/grass/grass-addons/gipe&lt;br /&gt;
&lt;br /&gt;
Remark: This is progressively moved to main GRASS SVN (aka GRASS 7)&lt;br /&gt;
&lt;br /&gt;
:* r.hydro.CASC2D, ported from GRASS 5.x version, is temporarily here waiting to return to main GRASS.&lt;br /&gt;
&lt;br /&gt;
:* r.soiltex2prop creates porosity, Saturated Hydraulic conductivity (Ksat) and wetting front pressure head (Hf) from percentage of sand and clay after Rawls et al., 1990. This is a must for r.hydro.CASC2D.&lt;br /&gt;
&lt;br /&gt;
:* i.biomass creates biomass growth map from fPAR, lightuse efficiency, water availability (or evap.fraction), Lat, doy and tsw.&lt;br /&gt;
&lt;br /&gt;
:* i.dn2ref.l7, r.dn2ref.ast create top of atmosphere reflectance for Landsat 7ETM+ and ASTER. These modules also have a flag for radiance output. Updated i.dn2ref.l7 to read .met calibration file.  &lt;br /&gt;
&lt;br /&gt;
:* i.dn2full.l[5,7] is an attempt to get all bands of Landsat[5,7] calibrated and corrected to either reflectance or temperature, reads only the .met file.  &lt;br /&gt;
&lt;br /&gt;
:* i.dn2potrad.l[5,7] is an attempt to get ET potential from DN of Landsat 7 (Careful! No Atmospheric correction!).  &lt;br /&gt;
&lt;br /&gt;
:* i.eb.* are a set of 10+ GRASS modules that together perform the main functions of  the SEBAL model (Bastiaanssen, 1995). Those functions include (but are not limited to) Soil heat flux, sensible heat flux, net radiation, evaporative fraction at satellite overpass, diurnal actual evapotranspiration, momentum roughness length, etc. These  modules are also part of any Energy-Balance related processing. &lt;br /&gt;
&lt;br /&gt;
:* i.evapo.potrad creates diurnal Potential evapotranspiration assuming all net radiation becomes ET, according to SEBAL model (Bastiaanssen, 1995). This module also has a flag for diurnal net radiation as required by SEBAL in i.eb.eta. &lt;br /&gt;
&lt;br /&gt;
:* i.evapo.SENAY creates actual evapotranspiration following the regional method of Senay (2007). &lt;br /&gt;
&lt;br /&gt;
:* i.lmf creates a Local Maximum Fitting on the temporal dimension of the multi-date input dataset, working, but more precision still to be added.&lt;br /&gt;
&lt;br /&gt;
:* i.vi.mpi is the mpi version of i.vi for cluster GRASS GIS education (no speed up here!) '''Author:''' Shamim Akhter &lt;br /&gt;
&lt;br /&gt;
:* i.modis.stateqa extracts State Quality Assessment information from Modis 500m (MOD09A) products.&lt;br /&gt;
&lt;br /&gt;
:* i.water creates a Water Mask from NDVI and Albedo, or specifically for Modis: NDVI and Band 7.&lt;br /&gt;
&lt;br /&gt;
:* i.wi creates a given Water Index (only one so far).&lt;br /&gt;
&lt;br /&gt;
==== HydroFOSS ====&lt;br /&gt;
&lt;br /&gt;
HydroFOSS - a GIS embedded approach for Free &amp;amp; Open Source Hydrological modeling.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Massimiliano Cannata&lt;br /&gt;
 &lt;br /&gt;
 svn co https://svn.osgeo.org/grass/grass-addons/HydroFOSS/&lt;br /&gt;
&lt;br /&gt;
==== hikereport ====&lt;br /&gt;
&lt;br /&gt;
python script that computes length, cumulative uphill and downhill, average slopes on an interactively drawn path. Based on r.profile's output.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Stefano Negri&lt;br /&gt;
&lt;br /&gt;
 http://tracce.wordpress.com/?attachment_id=71&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===General add-ons===&lt;br /&gt;
&lt;br /&gt;
==== g.laptop.sh ====&lt;br /&gt;
&lt;br /&gt;
: [http://www.nature-consult.de/dassau/g.laptop/g.laptop.sh g.laptop.sh] is an interactive shell script to extract raster and vector data from current Location into a new one. Data can be copied or extracted in current or original resolution and region extend. This script was written to extract smaller parts of a GRASS location to be able to present them on a laptop without the necessity to transfer huge data. Maps do not have to be in the same mapset.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Otto Dassau &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Readline completion ====&lt;br /&gt;
&lt;br /&gt;
: '''''Readline completion''''' for GRASS commands under the bash shell: [http://www.sorokine.info/grass-complete/ grass-complete] won't clutter the environment but needs to be installed; [http://dcalvelo.free.fr/grass/grass_rlcompleter.sh grass_rlcompleter.sh] needs almost no installation but will pollute the environment. Grass-Complete currently requires Bash version 2.05 for proper install.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Alexandre Sorokine (grass-complete), Daniel Calvelo (grass_rlcompleter.sh)&lt;br /&gt;
&lt;br /&gt;
==== g.region.nbcell ====&lt;br /&gt;
&lt;br /&gt;
: [http://precisiongis.blogspot.com/2008/02/gregionnbcell.html g.region.nbcell] is a shell script used to fix the number of cells in the current region.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Mathieu Grelier&lt;br /&gt;
&lt;br /&gt;
==== g.region.point ====&lt;br /&gt;
&lt;br /&gt;
: [http://trac.osgeo.org/grass/browser/grass-addons/general/g.region.point g.region.point] is a shell script which resets the computational region to a square box around a given coordinate. It is intended for use within GRASS scripts to speed up processing by limiting expensive raster calculations to a small area of interest.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
==== g.xlist ====&lt;br /&gt;
&lt;br /&gt;
: [http://trac.osgeo.org/grass/browser/grass-addons/general/g.xlist g.xlist] is a C implementation of g.mlist. g.xlist searches for data files matching a pattern given by wildcards or POSIX Extended Regular Expressions. POSIX regex(3) functions are required.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Huidae Cho&lt;br /&gt;
&lt;br /&gt;
==== g.xremove ====&lt;br /&gt;
&lt;br /&gt;
: [http://trac.osgeo.org/grass/browser/grass-addons/general/g.xremove g.xremove] is a C implementation of g.mremove. g.xremove removes data files matching a pattern given by wildcards or POSIX Extended Regular Expressions. POSIX regex(3) functions are required.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Huidae Cho&lt;br /&gt;
&lt;br /&gt;
=== Imagery add-ons ===&lt;br /&gt;
&lt;br /&gt;
See also&lt;br /&gt;
&lt;br /&gt;
 svn co https://svn.osgeo.org/grass/grass-addons/imagery&lt;br /&gt;
&lt;br /&gt;
==== i.points.reproj ====&lt;br /&gt;
&lt;br /&gt;
: [http://trac.osgeo.org/grass/browser/grass-addons/imagery/i.points.reproj i.points.reproj] is a shell script that will use cs2cs to reproject the target coordinates of a group's POINTS file. By running i.rectify directly to the new target projection, a generation of resampling data loss can be avoided (versus i.rectify + r.proj). On the other hand, i.rectify does not calculate cell resolution well if the map is to be rotated ([http://intevation.de/rt/webrt?serial_num=3296 bug #3296]), in those cases i.rectify+r.proj may be the better option.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
==== i.pr ====&lt;br /&gt;
&lt;br /&gt;
: Image classification: implements k-NN (multiclass), classification trees (multiclass), maximum likelihood (multiclass), Support Vector Machines (binary), bagging versions of all the base classifiers, AdaBoost for binary trees and support vector machines. It allows feature manipulation (normalization, principal components,...). It also implements feature selection techniques (RFE, E-RFE,...), statistical tests on variables, tools for resampling (cross-validation and bootstrap) and cost-sensitive techniques for trees and support vector machines.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Stefano Merler. Available via SVN:&lt;br /&gt;
&lt;br /&gt;
   svn co https://svn.osgeo.org/grass/grass-addons/imagery/i.pr&lt;br /&gt;
&lt;br /&gt;
==== i.warp ====&lt;br /&gt;
&lt;br /&gt;
: [http://trac.osgeo.org/grass/browser/grass-addons/imagery/i.warp i.warp] is a shell script that will use gdalwarp to rectify a raw input image using thin plate splines. The map should be imported into GRASS with r.in.gdal and GCPs set with i.points. Input is the raw image (GeoTIFF, JPEG, etc). Output is a GeoTIFF in the imagery group's target location's map projection. Requires a recent (early 2006) version of GRASS 6.1, or newer.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
=== Display add-ons ===&lt;br /&gt;
&lt;br /&gt;
See also&lt;br /&gt;
&lt;br /&gt;
 svn co https://svn.osgeo.org/grass/grass-addons/display&lt;br /&gt;
&lt;br /&gt;
==== d.edit.rast ====&lt;br /&gt;
&lt;br /&gt;
: [http://trac.osgeo.org/grass/browser/grass-addons/display/d.edit.rast d.edit.rast] edits cells in an existing raster map displayed on the current monitor.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Huidae Cho&lt;br /&gt;
&lt;br /&gt;
==== d.frame.quarter ====&lt;br /&gt;
&lt;br /&gt;
: [http://trac.osgeo.org/grass/browser/grass-addons/display/d.frame.split d.frame.quarter] is a shell script that will split the display into four quadrants (or sixths) using ''d.frame''. Individual frames are named ''uno, dos, tres, cuatro'', and ''full_screen''.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
==== d.frame.split ====&lt;br /&gt;
&lt;br /&gt;
: [http://trac.osgeo.org/grass/browser/grass-addons/display/d.frame.split d.frame.split] is similar as ''d.frame.quarter'', but works for 2,4,6,8,9,12, and 16 subframes and gives an option to spread the frames horizontally or vertically. Replacement for ''d.split'' and ''d.frame.quarter''. Used in GRASS 7 as ''d.split''.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
==== d.hyperlink ====&lt;br /&gt;
&lt;br /&gt;
: [ftp://gsca.nrcan.gc.ca/outgoing/Patton/Grass/Scripts/d.hyperlink.tar.bz2 d.hyperlink] is an interactive shell script that allows the viewing of hyperlinked images from a vector's attribute table in an external image viewer. Queries can be made via SQL statements or interactive mouse-clicking. The attribute table must be pre-populated with a column containing the image to link the vector to; the user also specifies the image folder in the current MAPSET where the images are located. The script currently supports gimp, Eye of Gnome, gthumb, gpdf, and Inkscape image viewers.&lt;br /&gt;
&lt;br /&gt;
: '''Author: '''Eric Patton&lt;br /&gt;
&lt;br /&gt;
==== d.mark ====&lt;br /&gt;
&lt;br /&gt;
: [http://trac.osgeo.org/grass/browser/grass-addons/display/d.shortcuts d.mark] is a shell script that quickly displays a marker on the display at a given coordinate.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Hamish Bowman &lt;br /&gt;
&lt;br /&gt;
==== d.region.box ====&lt;br /&gt;
&lt;br /&gt;
: [http://trac.osgeo.org/grass/browser/grass-addons/display/d.region.box d.region.box] is a shell script that quickly displays a box around the current region.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
==== d.stations ====&lt;br /&gt;
&lt;br /&gt;
: [http://trac.osgeo.org/grass/browser/grass-addons/display/d.shortcuts   d.stations] is a shell script that quickly displays vector points (or sites for GRASS 5.4 and below).&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Hamish Bowman &lt;br /&gt;
&lt;br /&gt;
==== d.varea ====&lt;br /&gt;
&lt;br /&gt;
: [http://trac.osgeo.org/grass/browser/grass-addons/display/d.shortcuts d.varea] is a shell script that quickly displays vector areas.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
==== pd-GRASS ====&lt;br /&gt;
&lt;br /&gt;
: [http://www.ornl.gov/sci/gist/software/grass/ pd-GRASS]: Parallel Display for GRASS GIS&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Alex Sorokine&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== [[IconSymbols]] ====&lt;br /&gt;
&lt;br /&gt;
* [[IconSymbols|Symbols]] which can be used with ''d.vect, d.graph'', and ''ps.map''.&lt;br /&gt;
&lt;br /&gt;
=== Postscript add-ons ===&lt;br /&gt;
&lt;br /&gt;
''See also [[ps.map scripts|ps.map samples and templates]]''.&lt;br /&gt;
&lt;br /&gt;
==== ps.atlas ====&lt;br /&gt;
&lt;br /&gt;
: [http://les-ejk.cz/programs/grass/ps.atlas ps.atlas] is a shell script that makes more maps on current region according to input *.psmap file. General map can be stored as vector file. The resulting *.eps maps can be automatically converted to *.pdf files.&lt;br /&gt;
&lt;br /&gt;
: '''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
==== [[AreaFillPatterns]] ====&lt;br /&gt;
&lt;br /&gt;
* Hatches for ps.map's vareas&lt;br /&gt;
&lt;br /&gt;
===GRASS and UMN Mapserver===&lt;br /&gt;
&lt;br /&gt;
* [http://www.mail-archive.com/mapserver-users@lists.umn.edu/msg00086.html See interesting posting]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Community]]&lt;br /&gt;
[[Category:Development]]&lt;br /&gt;
[[Category:Documentation]]&lt;br /&gt;
[[Category:Installation]]&lt;/div&gt;</summary>
		<author><name>⚠️EricPatton</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=AddOns&amp;diff=5739</id>
		<title>AddOns</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=AddOns&amp;diff=5739"/>
		<updated>2008-01-24T15:02:56Z</updated>

		<summary type="html">&lt;p&gt;⚠️EricPatton: edited v.select.region description text&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page contains references to user contributions and add-ons (the original GRASS GIS software can be downloaded [http://grass.osgeo.org/download/index.php here]).&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
== AddOns source code repository ==&lt;br /&gt;
&lt;br /&gt;
The AddOns source code is hosted in [http://svn.osgeo.org/grass/grass-addons/ GRASS-AddOns SVN repository].&lt;br /&gt;
&lt;br /&gt;
To checkout:&lt;br /&gt;
&lt;br /&gt;
 svn checkout https://svn.osgeo.org/grass/grass-addons/ grass-addons&lt;br /&gt;
&lt;br /&gt;
Please contact the [http://lists.osgeo.org/mailman/listinfo/grass-dev grass-dev] mailing list if you would like to host your module there.&lt;br /&gt;
&lt;br /&gt;
== Adding something new ==&lt;br /&gt;
&lt;br /&gt;
Please announce your add-on to the GRASS users' mailing list so that others may be aware of your work.&lt;br /&gt;
&lt;br /&gt;
=== Copyright and licensing information ===&lt;br /&gt;
&lt;br /&gt;
''Please be sure to include copyright and licensing information in the header comments of your code so that others may know how they can use, extend, modify, and redistribute your work.''&lt;br /&gt;
&lt;br /&gt;
e.g. at the top of a shell script:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/sh&lt;br /&gt;
############################################################################&lt;br /&gt;
#&lt;br /&gt;
# MODULE:       v.in.e00&lt;br /&gt;
#&lt;br /&gt;
# AUTHOR(S):    Markus Neteler, Otto Dassau&lt;br /&gt;
#&lt;br /&gt;
# PURPOSE:      Import E00 data into a GRASS vector map&lt;br /&gt;
#               Imports single and split E00 files (.e00, .e01, .e02 ...)&lt;br /&gt;
#&lt;br /&gt;
# COPYRIGHT:    (c) 2004, 2005 GDF Hannover bR, http://www.gdf-hannover.de&lt;br /&gt;
#&lt;br /&gt;
#               This program is free software under the GNU General Public&lt;br /&gt;
#               License (&amp;gt;=v2). Read the file COPYING that comes with GRASS&lt;br /&gt;
#               for details.&lt;br /&gt;
#&lt;br /&gt;
#############################################################################&lt;br /&gt;
#&lt;br /&gt;
# REQUIREMENTS:&lt;br /&gt;
#      -  avcimport: http://avce00.maptools.org&lt;br /&gt;
&lt;br /&gt;
[script follows]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Coding standards ===&lt;br /&gt;
&lt;br /&gt;
Please have a look at our [http://grass.osgeo.org/grass63/source/SUBMITTING_SCRIPTS Shell script coding standards] before submitting here.&lt;br /&gt;
&lt;br /&gt;
There are other coding standards given for modules written in C, Tcl/Tk, and Python''(?)'' located in the GRASS source code.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Miscellaneous Add-ons ==&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/utm_which_zone.sh utm_which_zone.sh] is a shell script to determine UTM zone from Lat/Lon input. Requires [http://www.octave.org Octave] to be installed. A shell-only version is [http://dcalvelo.free.fr/grass/utm_which_zone_sh.sh available] which only requires awk.&amp;lt;BR&amp;gt;'''Authors''': Hamish Bowman (Octave part), Markus Neteler (shell script wrapper), Daniel Calvelo (sh+awk version)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Perl scripts for converting data forth and back between Excel files and PostgreSQL: [http://dcalvelo.free.fr/grass/pg2xls.pl pg2xls.pl] reads data from PostgreSQL and produces an excel workbook; [http://dcalvelo.free.fr/grass/xls2sql.pl xls2sql.pl] reads excel files and outputs SQL statements to be fed into an RDBMS. Both scripts need modules from [http://www.cpan.org CPAN], especially [http://search.cpan.org/dist/Spreadsheet-ParseExcel/  Spreadsheet::ParseExcel] for xls2sql.pl and [http://search.cpan.org/~tmtm/Spreadsheet-WriteExcel-FromDB Spreadsheet::WriteExcel::FromDB] and its dependencies for pg2sql.pl. Check the source headers for more info.&amp;lt;BR&amp;gt;'''Authors:''' Daniel Calvelo (xls2sql.pl), Markus Neteler (pg2xls.pl)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://dream.lrrl.arch.tu-muenchen.de/~wqual/perl/dbf2sql.tgz dbf2sql] is a Perl script for translating dbf-tables into a sql-command. dbf-tables are read using dbfdump-command from dbd-xbase-perl module ([http://search.cpan.org/~janpaz/DBD-XBase-0.241/ dbd::xbase] and [http://search.cpan.org/~jv/Getopt-Long-2.35/lib/Getopt/Long.pm getopt::long] have to be installed from CPAN first). There are problems, if the last column of the table contains characters. Suggestions for improvements welcome! &amp;lt;BR&amp;gt;'''Author:'''Wolfgang Qual&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.igc.usp.br/pessoais/guano/downloads/azimuth2.c azimuth2.c] is a small C program to calculate the azimuth and length of vector lines exported by GRASS-GIS as ASCII files (like this: v.out.ascii input=vector output=ascii format=standard). It is useful for create rose diagrams of lineament maps. Improvements on the original code after suggestions by Örs Téglásy, Hungary.&amp;lt;BR&amp;gt;'''Author:''' Carlos Henrique Grohmann&lt;br /&gt;
&lt;br /&gt;
==GRASS 5.x==&lt;br /&gt;
&lt;br /&gt;
===Vector add-ons for GRASS 5===&lt;br /&gt;
&lt;br /&gt;
* See here: http://grass.osgeo.org/download/addons.php&lt;br /&gt;
&lt;br /&gt;
===Raster add-ons for GRASS 5===&lt;br /&gt;
&lt;br /&gt;
* See here: http://grass.osgeo.org/download/addons.php&lt;br /&gt;
&lt;br /&gt;
* [http://www.valledemexico.ambitiouslemon.com/gwmodelling.html r.gmtg] The groundwater modelling tool for grass. A module to use MODFLOW within GRASS. &amp;lt;BR&amp;gt;'''Author''': Jaime Carrera&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.bowdoin.edu/~ltoma/research.html r.terracost] Scalable approach for computing least-cost-path surfaces on massive grid terrains. For GRASS 5.3.&amp;lt;BR&amp;gt;'''Lead author''': Laura Toma&lt;br /&gt;
&lt;br /&gt;
==GRASS 6.x==&lt;br /&gt;
&lt;br /&gt;
===Vector add-ons===&lt;br /&gt;
&lt;br /&gt;
* [http://grasslab.gisix.com/scripts/v.out.kml/ v.out.kml] is a shell script that exports a vector file into a KML file for Google Earth or Worldwind. &amp;lt;BR&amp;gt;'''Author:''' Peter Löwe&lt;br /&gt;
&lt;br /&gt;
* [http://grasslab.gisix.com/scripts/v.in.ovl/ v.in.ovl] is a shell script that imports an ASCII vector file created with TOP10|25|50 or similar products. &amp;lt;BR&amp;gt;'''Author:''' Peter Löwe&lt;br /&gt;
&lt;br /&gt;
* [http://geni.ath.cx/grass/v.out.gmt v.out.gmt] is a shell script that exports a polygon vector file into GMT xy file. psbasemap code was copied from Hamish's r.out.gmt. &amp;lt;BR&amp;gt;'''Author:''' Huidae Cho, Hamish Bowman, Dylan Beaudette&lt;br /&gt;
&lt;br /&gt;
* [http://www.pois.org/florian/downloads/grass/v.strahler.tgz v.strahler] is a module that calculates the Strahler Order for all lines of a given dendritic network. &amp;lt;BR&amp;gt;'''Author:''' Florian Kindl. Available via SVN:&lt;br /&gt;
&lt;br /&gt;
   svn co https://svn.osgeo.org/grass/grass-addons/v.strahler&lt;br /&gt;
&lt;br /&gt;
* [http://svg.cc/grass/index.html v.out.svg] is a module that exports SVG notation along with optional attribute data directly from GRASS 6.x vector layers. Now part of grass63-cvs. &amp;lt;BR&amp;gt;'''Author:''' Klaus Förster&lt;br /&gt;
&lt;br /&gt;
* [http://les-ejk.cz/programs/ v.trees3d] is a module for making 3D trees from input vector point file. &amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
* [http://www.public.asu.edu/~cmbarton/files/grass_scripts/v.lda v.lda] is a shell script for calculating Ian Johnson's (U. Sidney) Local Density Analysis values to measure clustering of point data at different neighborhood radii. There is an option to create a simple line graph of the results. There have been reports of problems creating the line graph on Cygwin installations of GRASS.&amp;lt;BR&amp;gt;'''Author:''' Michael Barton &lt;br /&gt;
&lt;br /&gt;
* [http://www.public.asu.edu/~cmbarton/files/grass_scripts/v.append v.append] is a shell script combining two vector files AND their associated attribute tables. The vector files should be of the same type and, for best results, should have identically formatted attribute tables.&amp;lt;BR&amp;gt;'''Author:''' Michael Barton &lt;br /&gt;
&lt;br /&gt;
* [http://www.shockfamily.net/cedric/grass/v.group v.group] generates a new vector map with the same geometry as an existing map. The new map has categories and a table based on grouping by the values in certain columns of the existing map's table. The values in these columns are preserved in the table for the new map. It's like a v.reclass that preserves data.&amp;lt;BR&amp;gt;'''Author:''' Cedric Shock&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/v.out.ascii.db v.out.ascii.db] is a shell script for exporting vector point data coordinates and selected attribute columns to either a file or to the console.&amp;lt;BR&amp;gt;'''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
* [http://les-ejk.cz/programs v.rasterbounds] is a shell script for creating polygon-vector file of rasterfile boundaries. The best version of GRASS is 6.1+. If you are using GRASS &amp;lt; 6.1, you  have to be in the same mapset as your raster maps are from.&amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
* [http://www.clubwebcanada.ca/twiens/v.sample.buffer.tgz v.sample.buffer] is a shell script that samples rasters in buffers of a specified size around features in a specified vector file. Sampling results are added as attributes to the vector file. This script was designed for sampling vegetation indices and DEM derived attributes for bird point counts. Sampling results can be one or more basic statistics such as mean, range, max, etc.&amp;lt;BR&amp;gt;'''Author:''' Trevor Wiens&lt;br /&gt;
&lt;br /&gt;
* [http://www.gfosservices.it/materiale_didattico/moduli/grass_kriging.tar.gz v.variogram] is a script that create an omnidirectional experimental semi-variogram. This scripts require R-statistics software installed on your machine. Now the script is updated to run on spgrass6 &amp;gt;= 0.3 and sp &amp;gt;= 0.9 [http://grass.osgeo.org/pipermail/statsgrass/2006-October/000455.html reply]. &amp;lt;BR&amp;gt;'''Author:''' Ivan Marchesini, Pierluigi De Rosa.&lt;br /&gt;
&lt;br /&gt;
* [http://www.gfosservices.it/materiale_didattico/moduli/grass_kriging.tar.gz v.surf.krige] is a script that do a surface interpolation from vector point data by Kriging method. The interpolated value of a cell is determined by using an omnidirectional variogram model fitted starting from model parameter given by user shown from the experimental semi variogram produced by v.variogram. The script can perform also the Leave-One-out cross validation to test the variogram model &amp;quot;fitted by eye&amp;quot; and an automatic fitted variogram model. The cross validation helps the user to choose the best variogram model to interpolate own data. &amp;lt;BR&amp;gt;'''Author:''' Pierluigi De Rosa.&lt;br /&gt;
&lt;br /&gt;
* [http://ngeo.de/grassstuff/v.lmeasure v.lmeasure] and [http://ngeo.de/grassstuff/v.revlmeasure v.revlmeasure] are two perl scripts that place equidistant vector points along a given arbitrary vector line starting from the beginning or end of the vector line, respectively. Resulting  vector points are labeled with the distance from origin.&amp;lt;BR&amp;gt;'''Author:''' Mats Schuh&lt;br /&gt;
&lt;br /&gt;
* [http://david.p.finlayson.googlepages.com/v.swathwidth v.swathwidth] creates a vector map representing the sea bottom coverage of a multibeam (swath) sonar survey.&amp;lt;BR&amp;gt;'''Author:''' David Finlayson&lt;br /&gt;
&lt;br /&gt;
* [http://kufaya.googlepages.com/v.flip.zip v.flip] flips the direction of selected vector lines (redundant since GRASS 6.3 - there is &amp;quot;v.edit tool=flip&amp;quot;). &amp;lt;BR&amp;gt;'''Author:''' Maciej Sieczka&lt;br /&gt;
&lt;br /&gt;
* [http://phygeo7.geo.uni-augsburg.de/gis2/scripts/v.digatt v.digatt] (shell script) Interactively assign numeric table attributes to series of vector objects. It is meant to be effective by avoiding to type in the attribute value for all single objects again and again. The user is prompted for typing in an attribute value which is assigned to all objects selected by mouseclick afterwards. Next the display is redrawn after updating the table column. Zooming allows to change the region before the old value can be reused or a new one can be typed in (or copied by mouse from another object) in order to assign it to the next series of objects etc. It is tested not very extensively yet. Therefore better work with a copy of your map and consider using v.digit or d.what.vect -e alternatively. [http://phygeo7.geo.uni-augsburg.de/gis2/scripts/v.digatt.png screenshot]. &amp;lt;BR&amp;gt;'''Author:''' Andreas Philipp&lt;br /&gt;
&lt;br /&gt;
* [http://k153-85.fsv.cvut.cz/cgi-bin/viewcvs.cgi/grass6/vector/v.in.gama/ v.in.gama] converts [http://www.gnu.org/software/gama/ GNU GaMa] XML output file to a GRASS vector map layer.&amp;lt;br /&amp;gt;'''Author:''' Martin Landa&lt;br /&gt;
&lt;br /&gt;
* [http://kufaya.googlepages.com/v.breach.zip v.breach] creates vector maps of lines and points of continously lowering elevation down the input watercourses, based on the input raster DEM.&amp;lt;BR&amp;gt;'''Author:''' Maciej Sieczka&lt;br /&gt;
&lt;br /&gt;
* [http://kufaya.googlepages.com/v.line.center.zip v.line.center] creates a points vector map with each point located in the middle of the length of the input vector line.&amp;lt;BR&amp;gt;'''Author:''' Maciej Sieczka&lt;br /&gt;
&lt;br /&gt;
* [http://wiki.iosa.it/dokuwiki/spatial_analysis:feature_count v.count.points.sh] counts point features in areas, generates table good as input to d.vect.chart.&amp;lt;BR&amp;gt;'''Author:''' Stefano Costa&lt;br /&gt;
&lt;br /&gt;
* [http://kripton.kripserver.net/software/v.in.osm/ v.in.osm]: OpenStreetMap import into GRASS. Yet only supports deprecated API 0.4, will be modified to work with API 0.5 some time soon&amp;lt;BR&amp;gt;'''Author:''' Jannis Achstetter&lt;br /&gt;
** See also [http://hamish.bowman.googlepages.com/gpsdrivefiles#osm osm2grass.sh] by H Bowman&lt;br /&gt;
&lt;br /&gt;
* [http://marcin.slodkowski.googlepages.com/v.dip.tgz v.dip] creates points of thickness vectors from the vectors of strike and dip angles. The v.dip is the main ANSI C core program. Program so-called v.dip can run without GRASS environment.&amp;lt;BR&amp;gt;'''Author:''' Marcin Slodkowski&lt;br /&gt;
&lt;br /&gt;
* [http://marcin.slodkowski.googlepages.com/v.thickness.tgz v.thickness] creates points of thickness vectors from the vectors of strike and dip angles.The v.thickness is GUI GRASS script for v.dip.&amp;lt;BR&amp;gt;'''Author:''' Marcin Slodkowski&lt;br /&gt;
&lt;br /&gt;
* [http://www.geospatial.it/allegri/grass/v.surf.idwpow.zip v.surf.idwpow] integrates the common v.surf.idw algorithm with the exponential parameter for the distance weights&amp;lt;BR&amp;gt;'''Author:''' Giovanni Allegri&lt;br /&gt;
&lt;br /&gt;
* [ftp://gsca.nrcan.gc.ca/outgoing/Patton/Grass/Scripts/v.select.region.tar.bz2 v.select.region] is a shell script that prints out the names of all vectors matching an input search pattern that has geometry (points, line, areas) that fall within a region bounded by an existing vector map, or within the current Grass region.&amp;lt;BR&amp;gt;'''Author:''' Eric Patton&lt;br /&gt;
&lt;br /&gt;
=== Raster add-ons ===&lt;br /&gt;
&lt;br /&gt;
* HydroFOSS - a GIS embedded approach for Free &amp;amp; Open Source Hydrological modeling:&amp;lt;br&amp;gt;'''Author:''' Massimiliano Cannata&lt;br /&gt;
 &amp;lt;tt&amp;gt;svn co https://svn.osgeo.org/grass/grass-addons/HydroFOSS/&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* [http://geonomica.googlepages.com/r.soils.texture.zip r.soils.texture] is a module to define soils texture from sand and clay raster file with a schema text file (now only USDA schema). It is written in C language. - for GRASS versions 6.X - For bugs and suggest: g_massa@libero.it &amp;lt;BR&amp;gt; '''Author:''' Gianluca Massei&lt;br /&gt;
&lt;br /&gt;
* [http://grasslab.gisix.com/scripts/r.mandelbrot r.mandelbrot] is a shell script to calculate the Mandelbrot set.- for GRASS versions 6.X&amp;lt;BR&amp;gt;'''Author:''' Peter Löwe&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/r.game_of_life r.game_of_life] is a shell script which runs Conway's classic Game of Life using GRASS raster modules. It is meant to demonstrate how easy it is to program cellular automata in GRASS as well as various 3D raster volume and time series visualization techniques.&amp;lt;BR&amp;gt;'''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
* [http://www.igc.usp.br/pessoais/guano/downloads/r.roughness r.roughness] is a shell script to calculate the surface roughness of a DEM, using r.surf.area and v.surf.rst. (for GRASS versions 6.1 and above)&lt;br /&gt;
* [http://www.igc.usp.br/pessoais/guano/downloads/r.roughness60 r.roughness60] - for GRASS versions 6.0.X&lt;br /&gt;
* [http://www.igc.usp.br/pessoais/guano/downloads/r.roughness.window.area r.roughness.window.area] - calculate surface roughness as the ratio of real (surface) area and planar area, using a moving-window approach.&lt;br /&gt;
* [http://www.igc.usp.br/pessoais/guano/downloads/r.roughness.window.vector r.roughness.window.vector] - calculate surface roughness as vector dispersion, using a moving-window approach. Resulting maps are: Vector Strength (R) and Inverted Fisher's k parameter. &lt;br /&gt;
* [http://www.igc.usp.br/pessoais/guano/downloads/r.roughness.window.vector.html r.roughness.window.vector.html] - provisional help page for r.roughness.window.vector.&amp;lt;BR&amp;gt;'''Author:''' Carlos Henrique Grohmann&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.les-ejk.cz/files/programs/grass/r.gauss.tgz r.gauss] is Gaussian and Laplacian of Gaussian filter for GRASS. It is written in C language.&amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://les-ejk.cz/files/programs/grass/r.mlv.tgz r.mlv] is Mean of least variance filter for GRASS. It is an edge-preserving (or even edge-enhacing) filter, which should serve for removing additive noise from images. It is written in C language.&amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://les-ejk.cz/files/programs/grass/r.bilateral.tgz r.bilateral] Bilateral filter is an edge-preserving filter, which combines domain and range filtering. It is written in C language.&amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://les-ejk.cz/files/programs/zc.pl Zero crossing] is a simple Perl script, finds the ,,zero crossings`` from the Laplacian of Gaussian filter (see above). It is really &amp;lt;em&amp;gt;very&amp;lt;/em&amp;gt; simple, the edges don't need to be really on that pixel, where they are detected, no interpolation is performed.&amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
     '''Usage:'''&lt;br /&gt;
     zc.pl -i input -o output |r.mapcalc&lt;br /&gt;
&lt;br /&gt;
* [http://les-ejk.cz/files/programs/local_max.pl Local maxima] is a Perl script for &amp;lt;code&amp;gt;r.mapcalc&amp;lt;/code&amp;gt;. It detects local maxima of the image.&amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
     '''Usage:'''&lt;br /&gt;
     local_maxima.pl -i input -o output -s matrix_size|r.mapcalc&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/r.out.gmt r.out.gmt] is a GRASS script for exporting a GRASS raster map into a [http://www.soest.hawaii.edu/gmt/ GMT] grid file. It also creates a GMT color table from the data and can generate some GMT commands for plotting a postscript file. (code is experimental, but functional)&amp;lt;BR&amp;gt;see  also http://169.237.35.250/~dylan/grass_user_group/#GMT_and_GRASS-overview&amp;lt;BR&amp;gt;'''Authors:''' Hamish Bowman, Dylan Beaudette&lt;br /&gt;
&lt;br /&gt;
* [http://www.geospatial.it/allegri/grass/r.out.jpeg_ r.out.jpeg] is a simple GRASS script to export georeferenced JPEG images from rasters, keeping the associated color table. It is a two-step export: first a ppm file is created, then it is converted to jpeg usgin the &amp;quot;convert&amp;quot; command from ImageMagick&amp;lt;BR&amp;gt;'''Author:''' Giovanni Allegri&lt;br /&gt;
&lt;br /&gt;
* [http://geni.ath.cx/grass/r.out.gmt yet another r.out.gmt] is a modified version of Hamish's r.out.gmt.  Added options for title, xlabel, ylabel, comment, and map width.  Removed any settings that can be changed by gmtset for more flexibility.&amp;lt;BR&amp;gt;'''Author:''' Hamish Bowman, Huidae Cho, Dylan Beaudette&lt;br /&gt;
&lt;br /&gt;
* [http://hamish.bowman.googlepages.com/grass_color_maps r.cpt2grass] is a GRASS script for importing a [http://www.soest.hawaii.edu/gmt/ GMT] .cpt color table into GRASS. It can save to a text file suitable for r.colors or automatically apply the color table to a raster map.&amp;lt;BR&amp;gt;For a large collection of GMT .cpt files see http://sview01.wiredworkplace.net/pub/cpt-city/&amp;lt;BR&amp;gt;'''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
* [http://hamish.bowman.googlepages.com/grass_color_maps r.colors.stddev] is a GRASS shell script for creating dynamic color rules for raster maps based on univariate statistics.&amp;lt;BR&amp;gt;'''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/r.pack r.pack] and [http://bambi.otago.ac.nz/hamish/grass/r.unpack r.unpack] are two GRASS scripts for transfering raster maps to another computer as a single file.&amp;lt;BR&amp;gt;'''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/dominant_dir.m dominant_dir.m] and [http://bambi.otago.ac.nz/hamish/grass/calc_terraflow_dir.m calc_terraflow_dir.m] are two Matlab scripts for determining the dominant flow direction from a r.terraflow MFD map and converting into a GRASS aspect map for use with d.rast.arrow, etc.&amp;lt;BR&amp;gt;'''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
* [http://www-pool.math.tu-berlin.de/~soeren/grass/modules/ r.in.onearth] for download and import satellite images direct from the NASA onearth WMS server into GRASS.&amp;lt;BR&amp;gt;'''Author:''' Soeren Gebbert&lt;br /&gt;
&lt;br /&gt;
* [http://les-ejk.cz/files/programs/grass/r.in.wms.tgz r.in.wms] for download and import maps direct from  WMS servers into GRASS. This script is written in Python Programming language. Note GRASS 6.2+ provides a shell script version of r.in.wms, take care of which one is actually being run.&amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
* [http://www.shockfamily.net/cedric/grass/r.tileset r.tileset] generates a list of tiles and sizes in a source projection that cover the region in the current database with appropriate resolution. The size of individual tiles can be constrained. Only tiles intersecting the current region are returned. These tilings are appropriate for requesting data from another projection to meet the specifications of the current region. For example, it could be used to generate tile requests to a latitude / longitude WMS server like this &amp;lt;code&amp;gt;r.tileset -w sourceproj=&amp;quot;+init=epsg:4326&amp;quot;&amp;lt;/code&amp;gt;.&amp;lt;BR&amp;gt;'''Author:''' Cedric Shock&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [ftp://gsca.nrcan.gc.ca/outgoing/Patton/Grass/Scripts/r.csr.tar.bz2 r.csr] integrates several Grass programs to produce colored, shaded-relief rasters in one step. Accepts single or multiple elevation/bathymetry maps as input; optionally will fill data holidays with 3x3 median filter, multiple times, if required; can apply color maps from a) input raster, b) another raster in MAPSET, or c) from a rules file; otherwise, rainbow colorbar is applied. Output colored, shaded-relief rasters can optionally be exported to tiff format and archived using tar with gzip/bzip2 compression if appropriate flags are given. Shading parameters can be modified, though useful defaults are given. &amp;lt;BR&amp;gt;'''Author:''' Eric Patton&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [ftp://gsca.nrcan.gc.ca/outgoing/Patton/Grass/Scripts/r.fragment.tar.bz2 r.fragment] fragments a raster into a user-defined set of smaller tiles according to an input number of rows and columns. Optionally, a null value threshold can be set to filter out candidate tiles that would have a large percentage of null cells. &amp;lt;BR&amp;gt;'''Author:''' Eric Patton&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://david.p.finlayson.googlepages.com/r.eucdist r.eucdist] creates a raster map estimating the euclidean distance from known cells.&amp;lt;BR&amp;gt;'''Author:''' David Finlayson&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://david.p.finlayson.googlepages.com/r.smoothpatch r.smoothpatch] creates a composite of two rasters using a distance-weighted average across the transition to smooth the edges.&amp;lt;BR&amp;gt;'''Author:''' David Finlayson&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.faunalia.it/download/r_li/ r.li] is a more flexible and faster replacement of the old r.le. '''''Moved into 6.3-CVS'''''.&amp;lt;BR&amp;gt;'''Authors:''' Claudio Porta, Davide Spano, Serena Pallecchi, [http://www.faunalia.it Faunalia]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://kufaya.googlepages.com/r.surf.nnbathy.zip r.surf.nnbathy] interpolates a surface from a raster input using the [http://www.marine.csiro.au/~sakov/ nn] natural neighbor interpolation library. Provides triangulation, Sibson natural neighbor interpolation and non-Sibsonian interpolation. &amp;lt;BR&amp;gt;'''Author:''' Maciej Sieczka&lt;br /&gt;
&lt;br /&gt;
* [http://www.uibk.ac.at/geographie/personal/mergili/gradgrid4.zip gradgrid4] is a tool for interpolating values of discrete data points to a raster map, applying a local regression approach with a predictor raster. The model is based on shell and python scripts as well as an R batchfile. It was tested on Fedora Core 6 with GRASS 6.2.1 and R 2.5.1, but should work under most UNIX systems. After unzipping the gradgrid4 folder, store it at any place in your local file system. In the subfolder docs you can find a manual and a publication draft with a detailed description of the concept and the example of an application. The subfolder testloc constitutes a GRASS location with test data. &amp;lt;BR&amp;gt;'''Author:''' Martin Mergili&lt;br /&gt;
&lt;br /&gt;
* The GRASS Image Processing Environment (GIPE) has USLE, Energy-balance and radiance-reflectance correction models. &amp;lt;BR&amp;gt;'''Author:''' Yann Chemin (unless specified otherwise).&amp;lt;br&amp;gt; It is available by anonymous reading through this command (thanks Markus!):&amp;lt;br&amp;gt;&lt;br /&gt;
   &amp;lt;tt&amp;gt;svn co https://svn.osgeo.org/grass/grass-addons/gipe&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
** r.usler creates USLE R factor (Rainfall erosivity) from annual precipitations. It has 4 methods, Morgan, Roose, Foster and El-Swaify to choose from. '''Authors:''' Natalia Medvedeva and Yann Chemin &lt;br /&gt;
** r.uslek creates USLE K factor (soil erodibility) from sand, clay, silt fractions and organic matter fraction. Based on USDA 1951 (p209) quoted in FAO World Soil CD, and from some generic [soil class+OM] to K conversion table. &lt;br /&gt;
** r.albedo creates Albedo. Albedo is the shortwave surface reflectance in the range of 0.3-3 micro-meters. This module takes Modis, Aster, Landsat or AVHRR individual surface reflectance bands to calculate Albedo. This module is a precursor to r.sun  or any Energy-Balance related processing. &lt;br /&gt;
** r.eb.* are a set of 10+ GRASS modules that together perform the main functions of  the SEBAL model (Bastiaanssen, 1995). Those functions include (but are not limited to) Soil heat flux, sensible heat flux, net radiation, evaporative fraction at satellite overpass, diurnal actual evapotranspiration, momentum roughness length, etc. These  modules are also part of any Energy-Balance related processing. &lt;br /&gt;
** r.evapo.potrad creates diurnal Potential evapotranspiration assuming all net radiation becomes ET, according to SEBAL model (Bastiaanssen, 1995). This module also has a flag for diurnal net radiation as required by SEBAL in r.eb.eta. &lt;br /&gt;
** r.vi creates a given Vegetation index from a list of 13 of them, most of them only requiring Red and NIR. Updated to accept all types of input data. '''Authors:''' Baburao Kamble and Yann Chemin&lt;br /&gt;
** r.vi.mpi is the mpi verion for cluster GRASS GIS education (no speed up here!) '''Author:''' Shamim Akhter &lt;br /&gt;
** r.dn2ref.l7, r.dn2ref.ast create top of atmosphere reflectance for Landsat 7ETM+ and ASTER. These modules also have a flag for radiance output. Updated r.dn2ref.l7 to read .met calibration file.  &lt;br /&gt;
** r.dn2full.l7 is an attempt to get all bands of Landsat7 calibrated and corrected to either reflectance or temperature, reads only the .met file.  &lt;br /&gt;
** r.dn2potrad.l7] is an attempt to get ET potential from DN of Landsat 7 (Careful! No Atmospheric correction!).  &lt;br /&gt;
** r.biomass creates biomass growth map from fPAR, lightuse efficiency, water availability (or evap.fraction), Lat, doy and tsw.&lt;br /&gt;
&lt;br /&gt;
* r.boxcount and r.boxcount.sh calculate the fractal dimension for a given map. These are versions for grass6 of [http://www.ucl.ac.uk/~tcrnmar/ Mark Lake's modules] for grass43.&amp;lt;br&amp;gt; '''Authors:''' Mark Lake, grass6 port: Florian Kindl. Available via SVN: &amp;lt;tt&amp;gt;svn co https://svn.osgeo.org/grass/grass-addons/r.boxcount/&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;svn co https://svn.osgeo.org/grass/grass-addons/r.boxcount.sh/&amp;lt;/tt&amp;gt;&lt;br /&gt;
* [http://home.arcor.de/jesbergwetter/main_sw.html r.traveltime] computes the travel time of surface runoff to an outlet. The program starts at the basin outlet and calculates the travel time at each raster cell recursively. A drainage area related threhold considers even  surface and also channel runoff. Travel times are derived by assuming kinematic wave approximation. The results can be used to derive a time-area function. This might be usefull for precipitation-runoff calculations (estimation of flood predictions) with a lumped hydrologic model (user-specified unit hydrograph).&amp;lt;BR&amp;gt;'''Author:''' Kristian Förster&lt;br /&gt;
&lt;br /&gt;
===General add-ons===&lt;br /&gt;
&lt;br /&gt;
* [http://www.nature-consult.de/dassau/g.laptop/g.laptop.sh g.laptop.sh] is an interactive shell script to extract raster and vector data from current Location into a new one. Data can be copied or extracted in current or original resolution and region extend. This script was written to extract smaller parts of a GRASS location to be able to present them on a laptop without the necessity to transfer huge data. Maps do not have to be in the same mapset.&amp;lt;BR&amp;gt;'''Author:''' Otto Dassau &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* '''''Readline completion''''' for GRASS commands under the bash shell: [http://www.sorokine.info/grass-complete/ grass-complete] won't clutter the environment but needs to be installed; [http://dcalvelo.free.fr/grass/grass_rlcompleter.sh grass_rlcompleter.sh] needs almost no installation but will pollute the environment. Grass-Complete currently requires Bash version 2.05 for proper install.&amp;lt;BR&amp;gt;'''Author:''' Alexandre Sorokine (grass-complete), Daniel Calvelo (grass_rlcompleter.sh)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Imagery add-ons ===&lt;br /&gt;
&lt;br /&gt;
* i.atcorr: Atmospheric Correction using Christo Zietsman's implementation of 6s code in C/C++. &amp;lt;BR&amp;gt;'''Author:''' Christo Zietsman. Recently incorporated into main CVS.&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/gdal/i.warp61 i.warp61] is a shell script that will use gdalwarp to rectify a raw input image using thin plate splines. The map should be imported into GRASS with r.in.gdal and GCPs set with i.points. Input is the raw image (GeoTIFF, JPEG, etc). Output is a GeoTIFF in the imagery group's target location's map projection. Requires a recent (early 2006) version of GRASS 6.1, or newer.&amp;lt;BR&amp;gt;'''Author:''' Hamish Bowman&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/i.points.reproj i.points.reproj] is a shell script that will use cs2cs to reproject the target coordinates of a group's POINTS file. By running i.rectify directly to the new target projection, a generation of resampling data loss can be avoided (versus i.rectify + r.proj). On the other hand, i.rectify does not calculate cell resolution well if the map is to be rotated ([http://intevation.de/rt/webrt?serial_num=3296 bug #3296]), in those cases i.rectify+r.proj may be the better option.&amp;lt;BR&amp;gt;'''Author:''' Hamish Bowman&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* i.pr: Image classification: implements k-NN (multiclass), classification trees (multiclass), maximum likelihood (multiclass), Support Vector Machines (binary), bagging versions of all the base classifiers, AdaBoost for binary trees and support vector machines. It allows feature manipulation (normalization, principal components,...). It also implements feature selection techniques (RFE, E-RFE,...), statistical tests on variables, tools for resampling (cross-validation and bootstrap) and cost-sensitive techniques for trees and support vector machines. &amp;lt;BR&amp;gt;'''Author:''' Stefano Merler. Available via SVN:&lt;br /&gt;
&lt;br /&gt;
   svn co https://svn.osgeo.org/grass/grass-addons/i.pr&lt;br /&gt;
&lt;br /&gt;
=== Display add-ons ===&lt;br /&gt;
&lt;br /&gt;
==== [[IconSymbols]] ====&lt;br /&gt;
* [[IconSymbols|Symbols]] which can be used with ''d.vect, d.graph'', and ''ps.map''.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Modules ====&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/d.frame.quarter d.frame.quarter] is a shell script that will split the display into four quadrants (or sixths) using ''d.frame''. Individual frames are named ''uno, dos, tres, cuatro'', and ''full_screen''.&lt;br /&gt;
: [http://bambi.otago.ac.nz/hamish/grass/d.frame.split d.frame.split] is similar, but works for 2,4,6,8,9,12, and 16 subframes and gives an option to spread the frames horizontally or vertically. Replacement for ''d.split'' and ''d.frame.quarter''.&lt;br /&gt;
: '''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [ftp://gsca.nrcan.gc.ca/outgoing/Patton/Grass/Scripts/d.hyperlink.tar.bz2 d.hyperlink] is an interactive shell script that allows the viewing of hyperlinked images from a vector's attribute table in an external image viewer. Queries can be made via SQL statements or interactive mouse-clicking. The attribute table must be pre-populated with a column containing the image to link the vector to; the user also specifies the image folder in the current MAPSET where the images are located. The script currently supports gimp, Eye of Gnome, gthumb, gpdf, and Inkscape image viewers. &amp;lt;BR&amp;gt;'''Author: '''Eric Patton&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.ornl.gov/sci/gist/software/grass/ pd-GRASS]: Parallel Display for GRASS GIS&amp;lt;BR&amp;gt;'''Author:''' Alex Sorokine&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/d.region.box d.region.box] is a shell script that quickly displays a box around the current region.&amp;lt;BR&amp;gt;'''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/d.stations d.stations] is a shell script that quickly displays vector points (or sites for GRASS 5.4 and below).&amp;lt;BR&amp;gt;'''Author:''' Hamish Bowman &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/d.mark d.mark] is a shell script that quickly displays a marker on the display at a given coordinate.&amp;lt;BR&amp;gt;'''Author:''' Hamish Bowman &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/d.varea d.varea] is a shell script that quickly displays vector areas.&amp;lt;BR&amp;gt;'''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://geni.ath.cx/grass/d.edit.rast d.edit.rast] edits cells in an existing raster map displayed on the current monitor.&amp;lt;BR&amp;gt;'''Author:''' Huidae Cho&lt;br /&gt;
&lt;br /&gt;
=== Postscript add-ons ===&lt;br /&gt;
&lt;br /&gt;
''''' [[ps.map scripts|ps.map samples and templates]] '''''&lt;br /&gt;
&lt;br /&gt;
* [http://les-ejk.cz/programs/grass/ps.atlas ps.atlas] is a shell script that makes more maps on current region according to input *.psmap file. General map can be stored as vector file. The resulting *.eps maps can be automatically converted to *.pdf files.&amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== [[AreaFillPatterns]] ====&lt;br /&gt;
* Hatches for ps.map's vareas&lt;br /&gt;
&lt;br /&gt;
===GRASS and UMN Mapserver===&lt;br /&gt;
&lt;br /&gt;
* [http://www.mail-archive.com/mapserver-users@lists.umn.edu/msg00086.html See interesting posting]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Community]]&lt;br /&gt;
[[Category:Development]]&lt;br /&gt;
[[Category:Documentation]]&lt;br /&gt;
[[Category:Installation]]&lt;/div&gt;</summary>
		<author><name>⚠️EricPatton</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=AddOns&amp;diff=5738</id>
		<title>AddOns</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=AddOns&amp;diff=5738"/>
		<updated>2008-01-24T14:54:14Z</updated>

		<summary type="html">&lt;p&gt;⚠️EricPatton: /* Vector add-ons */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page contains references to user contributions and add-ons (the original GRASS GIS software can be downloaded [http://grass.osgeo.org/download/index.php here]).&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
== AddOns source code repository ==&lt;br /&gt;
&lt;br /&gt;
The AddOns source code is hosted in [http://svn.osgeo.org/grass/grass-addons/ GRASS-AddOns SVN repository].&lt;br /&gt;
&lt;br /&gt;
To checkout:&lt;br /&gt;
&lt;br /&gt;
 svn checkout https://svn.osgeo.org/grass/grass-addons/ grass-addons&lt;br /&gt;
&lt;br /&gt;
Please contact the [http://lists.osgeo.org/mailman/listinfo/grass-dev grass-dev] mailing list if you would like to host your module there.&lt;br /&gt;
&lt;br /&gt;
== Adding something new ==&lt;br /&gt;
&lt;br /&gt;
Please announce your add-on to the GRASS users' mailing list so that others may be aware of your work.&lt;br /&gt;
&lt;br /&gt;
=== Copyright and licensing information ===&lt;br /&gt;
&lt;br /&gt;
''Please be sure to include copyright and licensing information in the header comments of your code so that others may know how they can use, extend, modify, and redistribute your work.''&lt;br /&gt;
&lt;br /&gt;
e.g. at the top of a shell script:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/sh&lt;br /&gt;
############################################################################&lt;br /&gt;
#&lt;br /&gt;
# MODULE:       v.in.e00&lt;br /&gt;
#&lt;br /&gt;
# AUTHOR(S):    Markus Neteler, Otto Dassau&lt;br /&gt;
#&lt;br /&gt;
# PURPOSE:      Import E00 data into a GRASS vector map&lt;br /&gt;
#               Imports single and split E00 files (.e00, .e01, .e02 ...)&lt;br /&gt;
#&lt;br /&gt;
# COPYRIGHT:    (c) 2004, 2005 GDF Hannover bR, http://www.gdf-hannover.de&lt;br /&gt;
#&lt;br /&gt;
#               This program is free software under the GNU General Public&lt;br /&gt;
#               License (&amp;gt;=v2). Read the file COPYING that comes with GRASS&lt;br /&gt;
#               for details.&lt;br /&gt;
#&lt;br /&gt;
#############################################################################&lt;br /&gt;
#&lt;br /&gt;
# REQUIREMENTS:&lt;br /&gt;
#      -  avcimport: http://avce00.maptools.org&lt;br /&gt;
&lt;br /&gt;
[script follows]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Coding standards ===&lt;br /&gt;
&lt;br /&gt;
Please have a look at our [http://grass.osgeo.org/grass63/source/SUBMITTING_SCRIPTS Shell script coding standards] before submitting here.&lt;br /&gt;
&lt;br /&gt;
There are other coding standards given for modules written in C, Tcl/Tk, and Python''(?)'' located in the GRASS source code.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Miscellaneous Add-ons ==&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/utm_which_zone.sh utm_which_zone.sh] is a shell script to determine UTM zone from Lat/Lon input. Requires [http://www.octave.org Octave] to be installed. A shell-only version is [http://dcalvelo.free.fr/grass/utm_which_zone_sh.sh available] which only requires awk.&amp;lt;BR&amp;gt;'''Authors''': Hamish Bowman (Octave part), Markus Neteler (shell script wrapper), Daniel Calvelo (sh+awk version)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Perl scripts for converting data forth and back between Excel files and PostgreSQL: [http://dcalvelo.free.fr/grass/pg2xls.pl pg2xls.pl] reads data from PostgreSQL and produces an excel workbook; [http://dcalvelo.free.fr/grass/xls2sql.pl xls2sql.pl] reads excel files and outputs SQL statements to be fed into an RDBMS. Both scripts need modules from [http://www.cpan.org CPAN], especially [http://search.cpan.org/dist/Spreadsheet-ParseExcel/  Spreadsheet::ParseExcel] for xls2sql.pl and [http://search.cpan.org/~tmtm/Spreadsheet-WriteExcel-FromDB Spreadsheet::WriteExcel::FromDB] and its dependencies for pg2sql.pl. Check the source headers for more info.&amp;lt;BR&amp;gt;'''Authors:''' Daniel Calvelo (xls2sql.pl), Markus Neteler (pg2xls.pl)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://dream.lrrl.arch.tu-muenchen.de/~wqual/perl/dbf2sql.tgz dbf2sql] is a Perl script for translating dbf-tables into a sql-command. dbf-tables are read using dbfdump-command from dbd-xbase-perl module ([http://search.cpan.org/~janpaz/DBD-XBase-0.241/ dbd::xbase] and [http://search.cpan.org/~jv/Getopt-Long-2.35/lib/Getopt/Long.pm getopt::long] have to be installed from CPAN first). There are problems, if the last column of the table contains characters. Suggestions for improvements welcome! &amp;lt;BR&amp;gt;'''Author:'''Wolfgang Qual&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.igc.usp.br/pessoais/guano/downloads/azimuth2.c azimuth2.c] is a small C program to calculate the azimuth and length of vector lines exported by GRASS-GIS as ASCII files (like this: v.out.ascii input=vector output=ascii format=standard). It is useful for create rose diagrams of lineament maps. Improvements on the original code after suggestions by Örs Téglásy, Hungary.&amp;lt;BR&amp;gt;'''Author:''' Carlos Henrique Grohmann&lt;br /&gt;
&lt;br /&gt;
==GRASS 5.x==&lt;br /&gt;
&lt;br /&gt;
===Vector add-ons for GRASS 5===&lt;br /&gt;
&lt;br /&gt;
* See here: http://grass.osgeo.org/download/addons.php&lt;br /&gt;
&lt;br /&gt;
===Raster add-ons for GRASS 5===&lt;br /&gt;
&lt;br /&gt;
* See here: http://grass.osgeo.org/download/addons.php&lt;br /&gt;
&lt;br /&gt;
* [http://www.valledemexico.ambitiouslemon.com/gwmodelling.html r.gmtg] The groundwater modelling tool for grass. A module to use MODFLOW within GRASS. &amp;lt;BR&amp;gt;'''Author''': Jaime Carrera&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.bowdoin.edu/~ltoma/research.html r.terracost] Scalable approach for computing least-cost-path surfaces on massive grid terrains. For GRASS 5.3.&amp;lt;BR&amp;gt;'''Lead author''': Laura Toma&lt;br /&gt;
&lt;br /&gt;
==GRASS 6.x==&lt;br /&gt;
&lt;br /&gt;
===Vector add-ons===&lt;br /&gt;
&lt;br /&gt;
* [http://grasslab.gisix.com/scripts/v.out.kml/ v.out.kml] is a shell script that exports a vector file into a KML file for Google Earth or Worldwind. &amp;lt;BR&amp;gt;'''Author:''' Peter Löwe&lt;br /&gt;
&lt;br /&gt;
* [http://grasslab.gisix.com/scripts/v.in.ovl/ v.in.ovl] is a shell script that imports an ASCII vector file created with TOP10|25|50 or similar products. &amp;lt;BR&amp;gt;'''Author:''' Peter Löwe&lt;br /&gt;
&lt;br /&gt;
* [http://geni.ath.cx/grass/v.out.gmt v.out.gmt] is a shell script that exports a polygon vector file into GMT xy file. psbasemap code was copied from Hamish's r.out.gmt. &amp;lt;BR&amp;gt;'''Author:''' Huidae Cho, Hamish Bowman, Dylan Beaudette&lt;br /&gt;
&lt;br /&gt;
* [http://www.pois.org/florian/downloads/grass/v.strahler.tgz v.strahler] is a module that calculates the Strahler Order for all lines of a given dendritic network. &amp;lt;BR&amp;gt;'''Author:''' Florian Kindl. Available via SVN:&lt;br /&gt;
&lt;br /&gt;
   svn co https://svn.osgeo.org/grass/grass-addons/v.strahler&lt;br /&gt;
&lt;br /&gt;
* [http://svg.cc/grass/index.html v.out.svg] is a module that exports SVG notation along with optional attribute data directly from GRASS 6.x vector layers. Now part of grass63-cvs. &amp;lt;BR&amp;gt;'''Author:''' Klaus Förster&lt;br /&gt;
&lt;br /&gt;
* [http://les-ejk.cz/programs/ v.trees3d] is a module for making 3D trees from input vector point file. &amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
* [http://www.public.asu.edu/~cmbarton/files/grass_scripts/v.lda v.lda] is a shell script for calculating Ian Johnson's (U. Sidney) Local Density Analysis values to measure clustering of point data at different neighborhood radii. There is an option to create a simple line graph of the results. There have been reports of problems creating the line graph on Cygwin installations of GRASS.&amp;lt;BR&amp;gt;'''Author:''' Michael Barton &lt;br /&gt;
&lt;br /&gt;
* [http://www.public.asu.edu/~cmbarton/files/grass_scripts/v.append v.append] is a shell script combining two vector files AND their associated attribute tables. The vector files should be of the same type and, for best results, should have identically formatted attribute tables.&amp;lt;BR&amp;gt;'''Author:''' Michael Barton &lt;br /&gt;
&lt;br /&gt;
* [http://www.shockfamily.net/cedric/grass/v.group v.group] generates a new vector map with the same geometry as an existing map. The new map has categories and a table based on grouping by the values in certain columns of the existing map's table. The values in these columns are preserved in the table for the new map. It's like a v.reclass that preserves data.&amp;lt;BR&amp;gt;'''Author:''' Cedric Shock&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/v.out.ascii.db v.out.ascii.db] is a shell script for exporting vector point data coordinates and selected attribute columns to either a file or to the console.&amp;lt;BR&amp;gt;'''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
* [http://les-ejk.cz/programs v.rasterbounds] is a shell script for creating polygon-vector file of rasterfile boundaries. The best version of GRASS is 6.1+. If you are using GRASS &amp;lt; 6.1, you  have to be in the same mapset as your raster maps are from.&amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
* [http://www.clubwebcanada.ca/twiens/v.sample.buffer.tgz v.sample.buffer] is a shell script that samples rasters in buffers of a specified size around features in a specified vector file. Sampling results are added as attributes to the vector file. This script was designed for sampling vegetation indices and DEM derived attributes for bird point counts. Sampling results can be one or more basic statistics such as mean, range, max, etc.&amp;lt;BR&amp;gt;'''Author:''' Trevor Wiens&lt;br /&gt;
&lt;br /&gt;
* [http://www.gfosservices.it/materiale_didattico/moduli/grass_kriging.tar.gz v.variogram] is a script that create an omnidirectional experimental semi-variogram. This scripts require R-statistics software installed on your machine. Now the script is updated to run on spgrass6 &amp;gt;= 0.3 and sp &amp;gt;= 0.9 [http://grass.osgeo.org/pipermail/statsgrass/2006-October/000455.html reply]. &amp;lt;BR&amp;gt;'''Author:''' Ivan Marchesini, Pierluigi De Rosa.&lt;br /&gt;
&lt;br /&gt;
* [http://www.gfosservices.it/materiale_didattico/moduli/grass_kriging.tar.gz v.surf.krige] is a script that do a surface interpolation from vector point data by Kriging method. The interpolated value of a cell is determined by using an omnidirectional variogram model fitted starting from model parameter given by user shown from the experimental semi variogram produced by v.variogram. The script can perform also the Leave-One-out cross validation to test the variogram model &amp;quot;fitted by eye&amp;quot; and an automatic fitted variogram model. The cross validation helps the user to choose the best variogram model to interpolate own data. &amp;lt;BR&amp;gt;'''Author:''' Pierluigi De Rosa.&lt;br /&gt;
&lt;br /&gt;
* [http://ngeo.de/grassstuff/v.lmeasure v.lmeasure] and [http://ngeo.de/grassstuff/v.revlmeasure v.revlmeasure] are two perl scripts that place equidistant vector points along a given arbitrary vector line starting from the beginning or end of the vector line, respectively. Resulting  vector points are labeled with the distance from origin.&amp;lt;BR&amp;gt;'''Author:''' Mats Schuh&lt;br /&gt;
&lt;br /&gt;
* [http://david.p.finlayson.googlepages.com/v.swathwidth v.swathwidth] creates a vector map representing the sea bottom coverage of a multibeam (swath) sonar survey.&amp;lt;BR&amp;gt;'''Author:''' David Finlayson&lt;br /&gt;
&lt;br /&gt;
* [http://kufaya.googlepages.com/v.flip.zip v.flip] flips the direction of selected vector lines (redundant since GRASS 6.3 - there is &amp;quot;v.edit tool=flip&amp;quot;). &amp;lt;BR&amp;gt;'''Author:''' Maciej Sieczka&lt;br /&gt;
&lt;br /&gt;
* [http://phygeo7.geo.uni-augsburg.de/gis2/scripts/v.digatt v.digatt] (shell script) Interactively assign numeric table attributes to series of vector objects. It is meant to be effective by avoiding to type in the attribute value for all single objects again and again. The user is prompted for typing in an attribute value which is assigned to all objects selected by mouseclick afterwards. Next the display is redrawn after updating the table column. Zooming allows to change the region before the old value can be reused or a new one can be typed in (or copied by mouse from another object) in order to assign it to the next series of objects etc. It is tested not very extensively yet. Therefore better work with a copy of your map and consider using v.digit or d.what.vect -e alternatively. [http://phygeo7.geo.uni-augsburg.de/gis2/scripts/v.digatt.png screenshot]. &amp;lt;BR&amp;gt;'''Author:''' Andreas Philipp&lt;br /&gt;
&lt;br /&gt;
* [http://k153-85.fsv.cvut.cz/cgi-bin/viewcvs.cgi/grass6/vector/v.in.gama/ v.in.gama] converts [http://www.gnu.org/software/gama/ GNU GaMa] XML output file to a GRASS vector map layer.&amp;lt;br /&amp;gt;'''Author:''' Martin Landa&lt;br /&gt;
&lt;br /&gt;
* [http://kufaya.googlepages.com/v.breach.zip v.breach] creates vector maps of lines and points of continously lowering elevation down the input watercourses, based on the input raster DEM.&amp;lt;BR&amp;gt;'''Author:''' Maciej Sieczka&lt;br /&gt;
&lt;br /&gt;
* [http://kufaya.googlepages.com/v.line.center.zip v.line.center] creates a points vector map with each point located in the middle of the length of the input vector line.&amp;lt;BR&amp;gt;'''Author:''' Maciej Sieczka&lt;br /&gt;
&lt;br /&gt;
* [http://wiki.iosa.it/dokuwiki/spatial_analysis:feature_count v.count.points.sh] counts point features in areas, generates table good as input to d.vect.chart.&amp;lt;BR&amp;gt;'''Author:''' Stefano Costa&lt;br /&gt;
&lt;br /&gt;
* [http://kripton.kripserver.net/software/v.in.osm/ v.in.osm]: OpenStreetMap import into GRASS. Yet only supports deprecated API 0.4, will be modified to work with API 0.5 some time soon&amp;lt;BR&amp;gt;'''Author:''' Jannis Achstetter&lt;br /&gt;
** See also [http://hamish.bowman.googlepages.com/gpsdrivefiles#osm osm2grass.sh] by H Bowman&lt;br /&gt;
&lt;br /&gt;
* [http://marcin.slodkowski.googlepages.com/v.dip.tgz v.dip] creates points of thickness vectors from the vectors of strike and dip angles. The v.dip is the main ANSI C core program. Program so-called v.dip can run without GRASS environment.&amp;lt;BR&amp;gt;'''Author:''' Marcin Slodkowski&lt;br /&gt;
&lt;br /&gt;
* [http://marcin.slodkowski.googlepages.com/v.thickness.tgz v.thickness] creates points of thickness vectors from the vectors of strike and dip angles.The v.thickness is GUI GRASS script for v.dip.&amp;lt;BR&amp;gt;'''Author:''' Marcin Slodkowski&lt;br /&gt;
&lt;br /&gt;
* [http://www.geospatial.it/allegri/grass/v.surf.idwpow.zip v.surf.idwpow] integrates the common v.surf.idw algorithm with the exponential parameter for the distance weights&amp;lt;BR&amp;gt;'''Author:''' Giovanni Allegri&lt;br /&gt;
&lt;br /&gt;
* [ftp://gsca.nrcan.gc.ca/outgoing/Patton/Grass/Scripts/v.select.region.tar.bz2 v.select.region] is a shell script that prints out the names of all vectors matching an input search pattern that fall within a region bounded by an existing vector map, or within the current Grass region.&amp;lt;BR&amp;gt;'''Author:''' Eric Patton&lt;br /&gt;
&lt;br /&gt;
=== Raster add-ons ===&lt;br /&gt;
&lt;br /&gt;
* HydroFOSS - a GIS embedded approach for Free &amp;amp; Open Source Hydrological modeling:&amp;lt;br&amp;gt;'''Author:''' Massimiliano Cannata&lt;br /&gt;
 &amp;lt;tt&amp;gt;svn co https://svn.osgeo.org/grass/grass-addons/HydroFOSS/&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* [http://geonomica.googlepages.com/r.soils.texture.zip r.soils.texture] is a module to define soils texture from sand and clay raster file with a schema text file (now only USDA schema). It is written in C language. - for GRASS versions 6.X - For bugs and suggest: g_massa@libero.it &amp;lt;BR&amp;gt; '''Author:''' Gianluca Massei&lt;br /&gt;
&lt;br /&gt;
* [http://grasslab.gisix.com/scripts/r.mandelbrot r.mandelbrot] is a shell script to calculate the Mandelbrot set.- for GRASS versions 6.X&amp;lt;BR&amp;gt;'''Author:''' Peter Löwe&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/r.game_of_life r.game_of_life] is a shell script which runs Conway's classic Game of Life using GRASS raster modules. It is meant to demonstrate how easy it is to program cellular automata in GRASS as well as various 3D raster volume and time series visualization techniques.&amp;lt;BR&amp;gt;'''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
* [http://www.igc.usp.br/pessoais/guano/downloads/r.roughness r.roughness] is a shell script to calculate the surface roughness of a DEM, using r.surf.area and v.surf.rst. (for GRASS versions 6.1 and above)&lt;br /&gt;
* [http://www.igc.usp.br/pessoais/guano/downloads/r.roughness60 r.roughness60] - for GRASS versions 6.0.X&lt;br /&gt;
* [http://www.igc.usp.br/pessoais/guano/downloads/r.roughness.window.area r.roughness.window.area] - calculate surface roughness as the ratio of real (surface) area and planar area, using a moving-window approach.&lt;br /&gt;
* [http://www.igc.usp.br/pessoais/guano/downloads/r.roughness.window.vector r.roughness.window.vector] - calculate surface roughness as vector dispersion, using a moving-window approach. Resulting maps are: Vector Strength (R) and Inverted Fisher's k parameter. &lt;br /&gt;
* [http://www.igc.usp.br/pessoais/guano/downloads/r.roughness.window.vector.html r.roughness.window.vector.html] - provisional help page for r.roughness.window.vector.&amp;lt;BR&amp;gt;'''Author:''' Carlos Henrique Grohmann&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.les-ejk.cz/files/programs/grass/r.gauss.tgz r.gauss] is Gaussian and Laplacian of Gaussian filter for GRASS. It is written in C language.&amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://les-ejk.cz/files/programs/grass/r.mlv.tgz r.mlv] is Mean of least variance filter for GRASS. It is an edge-preserving (or even edge-enhacing) filter, which should serve for removing additive noise from images. It is written in C language.&amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://les-ejk.cz/files/programs/grass/r.bilateral.tgz r.bilateral] Bilateral filter is an edge-preserving filter, which combines domain and range filtering. It is written in C language.&amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://les-ejk.cz/files/programs/zc.pl Zero crossing] is a simple Perl script, finds the ,,zero crossings`` from the Laplacian of Gaussian filter (see above). It is really &amp;lt;em&amp;gt;very&amp;lt;/em&amp;gt; simple, the edges don't need to be really on that pixel, where they are detected, no interpolation is performed.&amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
     '''Usage:'''&lt;br /&gt;
     zc.pl -i input -o output |r.mapcalc&lt;br /&gt;
&lt;br /&gt;
* [http://les-ejk.cz/files/programs/local_max.pl Local maxima] is a Perl script for &amp;lt;code&amp;gt;r.mapcalc&amp;lt;/code&amp;gt;. It detects local maxima of the image.&amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
     '''Usage:'''&lt;br /&gt;
     local_maxima.pl -i input -o output -s matrix_size|r.mapcalc&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/r.out.gmt r.out.gmt] is a GRASS script for exporting a GRASS raster map into a [http://www.soest.hawaii.edu/gmt/ GMT] grid file. It also creates a GMT color table from the data and can generate some GMT commands for plotting a postscript file. (code is experimental, but functional)&amp;lt;BR&amp;gt;see  also http://169.237.35.250/~dylan/grass_user_group/#GMT_and_GRASS-overview&amp;lt;BR&amp;gt;'''Authors:''' Hamish Bowman, Dylan Beaudette&lt;br /&gt;
&lt;br /&gt;
* [http://www.geospatial.it/allegri/grass/r.out.jpeg_ r.out.jpeg] is a simple GRASS script to export georeferenced JPEG images from rasters, keeping the associated color table. It is a two-step export: first a ppm file is created, then it is converted to jpeg usgin the &amp;quot;convert&amp;quot; command from ImageMagick&amp;lt;BR&amp;gt;'''Author:''' Giovanni Allegri&lt;br /&gt;
&lt;br /&gt;
* [http://geni.ath.cx/grass/r.out.gmt yet another r.out.gmt] is a modified version of Hamish's r.out.gmt.  Added options for title, xlabel, ylabel, comment, and map width.  Removed any settings that can be changed by gmtset for more flexibility.&amp;lt;BR&amp;gt;'''Author:''' Hamish Bowman, Huidae Cho, Dylan Beaudette&lt;br /&gt;
&lt;br /&gt;
* [http://hamish.bowman.googlepages.com/grass_color_maps r.cpt2grass] is a GRASS script for importing a [http://www.soest.hawaii.edu/gmt/ GMT] .cpt color table into GRASS. It can save to a text file suitable for r.colors or automatically apply the color table to a raster map.&amp;lt;BR&amp;gt;For a large collection of GMT .cpt files see http://sview01.wiredworkplace.net/pub/cpt-city/&amp;lt;BR&amp;gt;'''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
* [http://hamish.bowman.googlepages.com/grass_color_maps r.colors.stddev] is a GRASS shell script for creating dynamic color rules for raster maps based on univariate statistics.&amp;lt;BR&amp;gt;'''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/r.pack r.pack] and [http://bambi.otago.ac.nz/hamish/grass/r.unpack r.unpack] are two GRASS scripts for transfering raster maps to another computer as a single file.&amp;lt;BR&amp;gt;'''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/dominant_dir.m dominant_dir.m] and [http://bambi.otago.ac.nz/hamish/grass/calc_terraflow_dir.m calc_terraflow_dir.m] are two Matlab scripts for determining the dominant flow direction from a r.terraflow MFD map and converting into a GRASS aspect map for use with d.rast.arrow, etc.&amp;lt;BR&amp;gt;'''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
* [http://www-pool.math.tu-berlin.de/~soeren/grass/modules/ r.in.onearth] for download and import satellite images direct from the NASA onearth WMS server into GRASS.&amp;lt;BR&amp;gt;'''Author:''' Soeren Gebbert&lt;br /&gt;
&lt;br /&gt;
* [http://les-ejk.cz/files/programs/grass/r.in.wms.tgz r.in.wms] for download and import maps direct from  WMS servers into GRASS. This script is written in Python Programming language. Note GRASS 6.2+ provides a shell script version of r.in.wms, take care of which one is actually being run.&amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
* [http://www.shockfamily.net/cedric/grass/r.tileset r.tileset] generates a list of tiles and sizes in a source projection that cover the region in the current database with appropriate resolution. The size of individual tiles can be constrained. Only tiles intersecting the current region are returned. These tilings are appropriate for requesting data from another projection to meet the specifications of the current region. For example, it could be used to generate tile requests to a latitude / longitude WMS server like this &amp;lt;code&amp;gt;r.tileset -w sourceproj=&amp;quot;+init=epsg:4326&amp;quot;&amp;lt;/code&amp;gt;.&amp;lt;BR&amp;gt;'''Author:''' Cedric Shock&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [ftp://gsca.nrcan.gc.ca/outgoing/Patton/Grass/Scripts/r.csr.tar.bz2 r.csr] integrates several Grass programs to produce colored, shaded-relief rasters in one step. Accepts single or multiple elevation/bathymetry maps as input; optionally will fill data holidays with 3x3 median filter, multiple times, if required; can apply color maps from a) input raster, b) another raster in MAPSET, or c) from a rules file; otherwise, rainbow colorbar is applied. Output colored, shaded-relief rasters can optionally be exported to tiff format and archived using tar with gzip/bzip2 compression if appropriate flags are given. Shading parameters can be modified, though useful defaults are given. &amp;lt;BR&amp;gt;'''Author:''' Eric Patton&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [ftp://gsca.nrcan.gc.ca/outgoing/Patton/Grass/Scripts/r.fragment.tar.bz2 r.fragment] fragments a raster into a user-defined set of smaller tiles according to an input number of rows and columns. Optionally, a null value threshold can be set to filter out candidate tiles that would have a large percentage of null cells. &amp;lt;BR&amp;gt;'''Author:''' Eric Patton&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://david.p.finlayson.googlepages.com/r.eucdist r.eucdist] creates a raster map estimating the euclidean distance from known cells.&amp;lt;BR&amp;gt;'''Author:''' David Finlayson&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://david.p.finlayson.googlepages.com/r.smoothpatch r.smoothpatch] creates a composite of two rasters using a distance-weighted average across the transition to smooth the edges.&amp;lt;BR&amp;gt;'''Author:''' David Finlayson&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.faunalia.it/download/r_li/ r.li] is a more flexible and faster replacement of the old r.le. '''''Moved into 6.3-CVS'''''.&amp;lt;BR&amp;gt;'''Authors:''' Claudio Porta, Davide Spano, Serena Pallecchi, [http://www.faunalia.it Faunalia]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://kufaya.googlepages.com/r.surf.nnbathy.zip r.surf.nnbathy] interpolates a surface from a raster input using the [http://www.marine.csiro.au/~sakov/ nn] natural neighbor interpolation library. Provides triangulation, Sibson natural neighbor interpolation and non-Sibsonian interpolation. &amp;lt;BR&amp;gt;'''Author:''' Maciej Sieczka&lt;br /&gt;
&lt;br /&gt;
* [http://www.uibk.ac.at/geographie/personal/mergili/gradgrid4.zip gradgrid4] is a tool for interpolating values of discrete data points to a raster map, applying a local regression approach with a predictor raster. The model is based on shell and python scripts as well as an R batchfile. It was tested on Fedora Core 6 with GRASS 6.2.1 and R 2.5.1, but should work under most UNIX systems. After unzipping the gradgrid4 folder, store it at any place in your local file system. In the subfolder docs you can find a manual and a publication draft with a detailed description of the concept and the example of an application. The subfolder testloc constitutes a GRASS location with test data. &amp;lt;BR&amp;gt;'''Author:''' Martin Mergili&lt;br /&gt;
&lt;br /&gt;
* The GRASS Image Processing Environment (GIPE) has USLE, Energy-balance and radiance-reflectance correction models. &amp;lt;BR&amp;gt;'''Author:''' Yann Chemin (unless specified otherwise).&amp;lt;br&amp;gt; It is available by anonymous reading through this command (thanks Markus!):&amp;lt;br&amp;gt;&lt;br /&gt;
   &amp;lt;tt&amp;gt;svn co https://svn.osgeo.org/grass/grass-addons/gipe&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
** r.usler creates USLE R factor (Rainfall erosivity) from annual precipitations. It has 4 methods, Morgan, Roose, Foster and El-Swaify to choose from. '''Authors:''' Natalia Medvedeva and Yann Chemin &lt;br /&gt;
** r.uslek creates USLE K factor (soil erodibility) from sand, clay, silt fractions and organic matter fraction. Based on USDA 1951 (p209) quoted in FAO World Soil CD, and from some generic [soil class+OM] to K conversion table. &lt;br /&gt;
** r.albedo creates Albedo. Albedo is the shortwave surface reflectance in the range of 0.3-3 micro-meters. This module takes Modis, Aster, Landsat or AVHRR individual surface reflectance bands to calculate Albedo. This module is a precursor to r.sun  or any Energy-Balance related processing. &lt;br /&gt;
** r.eb.* are a set of 10+ GRASS modules that together perform the main functions of  the SEBAL model (Bastiaanssen, 1995). Those functions include (but are not limited to) Soil heat flux, sensible heat flux, net radiation, evaporative fraction at satellite overpass, diurnal actual evapotranspiration, momentum roughness length, etc. These  modules are also part of any Energy-Balance related processing. &lt;br /&gt;
** r.evapo.potrad creates diurnal Potential evapotranspiration assuming all net radiation becomes ET, according to SEBAL model (Bastiaanssen, 1995). This module also has a flag for diurnal net radiation as required by SEBAL in r.eb.eta. &lt;br /&gt;
** r.vi creates a given Vegetation index from a list of 13 of them, most of them only requiring Red and NIR. Updated to accept all types of input data. '''Authors:''' Baburao Kamble and Yann Chemin&lt;br /&gt;
** r.vi.mpi is the mpi verion for cluster GRASS GIS education (no speed up here!) '''Author:''' Shamim Akhter &lt;br /&gt;
** r.dn2ref.l7, r.dn2ref.ast create top of atmosphere reflectance for Landsat 7ETM+ and ASTER. These modules also have a flag for radiance output. Updated r.dn2ref.l7 to read .met calibration file.  &lt;br /&gt;
** r.dn2full.l7 is an attempt to get all bands of Landsat7 calibrated and corrected to either reflectance or temperature, reads only the .met file.  &lt;br /&gt;
** r.dn2potrad.l7] is an attempt to get ET potential from DN of Landsat 7 (Careful! No Atmospheric correction!).  &lt;br /&gt;
** r.biomass creates biomass growth map from fPAR, lightuse efficiency, water availability (or evap.fraction), Lat, doy and tsw.&lt;br /&gt;
&lt;br /&gt;
* r.boxcount and r.boxcount.sh calculate the fractal dimension for a given map. These are versions for grass6 of [http://www.ucl.ac.uk/~tcrnmar/ Mark Lake's modules] for grass43.&amp;lt;br&amp;gt; '''Authors:''' Mark Lake, grass6 port: Florian Kindl. Available via SVN: &amp;lt;tt&amp;gt;svn co https://svn.osgeo.org/grass/grass-addons/r.boxcount/&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;svn co https://svn.osgeo.org/grass/grass-addons/r.boxcount.sh/&amp;lt;/tt&amp;gt;&lt;br /&gt;
* [http://home.arcor.de/jesbergwetter/main_sw.html r.traveltime] computes the travel time of surface runoff to an outlet. The program starts at the basin outlet and calculates the travel time at each raster cell recursively. A drainage area related threhold considers even  surface and also channel runoff. Travel times are derived by assuming kinematic wave approximation. The results can be used to derive a time-area function. This might be usefull for precipitation-runoff calculations (estimation of flood predictions) with a lumped hydrologic model (user-specified unit hydrograph).&amp;lt;BR&amp;gt;'''Author:''' Kristian Förster&lt;br /&gt;
&lt;br /&gt;
===General add-ons===&lt;br /&gt;
&lt;br /&gt;
* [http://www.nature-consult.de/dassau/g.laptop/g.laptop.sh g.laptop.sh] is an interactive shell script to extract raster and vector data from current Location into a new one. Data can be copied or extracted in current or original resolution and region extend. This script was written to extract smaller parts of a GRASS location to be able to present them on a laptop without the necessity to transfer huge data. Maps do not have to be in the same mapset.&amp;lt;BR&amp;gt;'''Author:''' Otto Dassau &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* '''''Readline completion''''' for GRASS commands under the bash shell: [http://www.sorokine.info/grass-complete/ grass-complete] won't clutter the environment but needs to be installed; [http://dcalvelo.free.fr/grass/grass_rlcompleter.sh grass_rlcompleter.sh] needs almost no installation but will pollute the environment. Grass-Complete currently requires Bash version 2.05 for proper install.&amp;lt;BR&amp;gt;'''Author:''' Alexandre Sorokine (grass-complete), Daniel Calvelo (grass_rlcompleter.sh)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Imagery add-ons ===&lt;br /&gt;
&lt;br /&gt;
* i.atcorr: Atmospheric Correction using Christo Zietsman's implementation of 6s code in C/C++. &amp;lt;BR&amp;gt;'''Author:''' Christo Zietsman. Recently incorporated into main CVS.&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/gdal/i.warp61 i.warp61] is a shell script that will use gdalwarp to rectify a raw input image using thin plate splines. The map should be imported into GRASS with r.in.gdal and GCPs set with i.points. Input is the raw image (GeoTIFF, JPEG, etc). Output is a GeoTIFF in the imagery group's target location's map projection. Requires a recent (early 2006) version of GRASS 6.1, or newer.&amp;lt;BR&amp;gt;'''Author:''' Hamish Bowman&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/i.points.reproj i.points.reproj] is a shell script that will use cs2cs to reproject the target coordinates of a group's POINTS file. By running i.rectify directly to the new target projection, a generation of resampling data loss can be avoided (versus i.rectify + r.proj). On the other hand, i.rectify does not calculate cell resolution well if the map is to be rotated ([http://intevation.de/rt/webrt?serial_num=3296 bug #3296]), in those cases i.rectify+r.proj may be the better option.&amp;lt;BR&amp;gt;'''Author:''' Hamish Bowman&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* i.pr: Image classification: implements k-NN (multiclass), classification trees (multiclass), maximum likelihood (multiclass), Support Vector Machines (binary), bagging versions of all the base classifiers, AdaBoost for binary trees and support vector machines. It allows feature manipulation (normalization, principal components,...). It also implements feature selection techniques (RFE, E-RFE,...), statistical tests on variables, tools for resampling (cross-validation and bootstrap) and cost-sensitive techniques for trees and support vector machines. &amp;lt;BR&amp;gt;'''Author:''' Stefano Merler. Available via SVN:&lt;br /&gt;
&lt;br /&gt;
   svn co https://svn.osgeo.org/grass/grass-addons/i.pr&lt;br /&gt;
&lt;br /&gt;
=== Display add-ons ===&lt;br /&gt;
&lt;br /&gt;
==== [[IconSymbols]] ====&lt;br /&gt;
* [[IconSymbols|Symbols]] which can be used with ''d.vect, d.graph'', and ''ps.map''.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Modules ====&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/d.frame.quarter d.frame.quarter] is a shell script that will split the display into four quadrants (or sixths) using ''d.frame''. Individual frames are named ''uno, dos, tres, cuatro'', and ''full_screen''.&lt;br /&gt;
: [http://bambi.otago.ac.nz/hamish/grass/d.frame.split d.frame.split] is similar, but works for 2,4,6,8,9,12, and 16 subframes and gives an option to spread the frames horizontally or vertically. Replacement for ''d.split'' and ''d.frame.quarter''.&lt;br /&gt;
: '''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [ftp://gsca.nrcan.gc.ca/outgoing/Patton/Grass/Scripts/d.hyperlink.tar.bz2 d.hyperlink] is an interactive shell script that allows the viewing of hyperlinked images from a vector's attribute table in an external image viewer. Queries can be made via SQL statements or interactive mouse-clicking. The attribute table must be pre-populated with a column containing the image to link the vector to; the user also specifies the image folder in the current MAPSET where the images are located. The script currently supports gimp, Eye of Gnome, gthumb, gpdf, and Inkscape image viewers. &amp;lt;BR&amp;gt;'''Author: '''Eric Patton&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.ornl.gov/sci/gist/software/grass/ pd-GRASS]: Parallel Display for GRASS GIS&amp;lt;BR&amp;gt;'''Author:''' Alex Sorokine&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/d.region.box d.region.box] is a shell script that quickly displays a box around the current region.&amp;lt;BR&amp;gt;'''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/d.stations d.stations] is a shell script that quickly displays vector points (or sites for GRASS 5.4 and below).&amp;lt;BR&amp;gt;'''Author:''' Hamish Bowman &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/d.mark d.mark] is a shell script that quickly displays a marker on the display at a given coordinate.&amp;lt;BR&amp;gt;'''Author:''' Hamish Bowman &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/d.varea d.varea] is a shell script that quickly displays vector areas.&amp;lt;BR&amp;gt;'''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://geni.ath.cx/grass/d.edit.rast d.edit.rast] edits cells in an existing raster map displayed on the current monitor.&amp;lt;BR&amp;gt;'''Author:''' Huidae Cho&lt;br /&gt;
&lt;br /&gt;
=== Postscript add-ons ===&lt;br /&gt;
&lt;br /&gt;
''''' [[ps.map scripts|ps.map samples and templates]] '''''&lt;br /&gt;
&lt;br /&gt;
* [http://les-ejk.cz/programs/grass/ps.atlas ps.atlas] is a shell script that makes more maps on current region according to input *.psmap file. General map can be stored as vector file. The resulting *.eps maps can be automatically converted to *.pdf files.&amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== [[AreaFillPatterns]] ====&lt;br /&gt;
* Hatches for ps.map's vareas&lt;br /&gt;
&lt;br /&gt;
===GRASS and UMN Mapserver===&lt;br /&gt;
&lt;br /&gt;
* [http://www.mail-archive.com/mapserver-users@lists.umn.edu/msg00086.html See interesting posting]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Community]]&lt;br /&gt;
[[Category:Development]]&lt;br /&gt;
[[Category:Documentation]]&lt;br /&gt;
[[Category:Installation]]&lt;/div&gt;</summary>
		<author><name>⚠️EricPatton</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=GRASS_7_ideas_collection&amp;diff=5703</id>
		<title>GRASS 7 ideas collection</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=GRASS_7_ideas_collection&amp;diff=5703"/>
		<updated>2008-01-10T18:53:51Z</updated>

		<summary type="html">&lt;p&gt;⚠️EricPatton: Suggestion for renameing r.volume 'data' parameter&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Maintenance of grass7/ repository ==&lt;br /&gt;
&lt;br /&gt;
Issue: only new code should go into grass7/. How to link into the existing GRASS 6 code?&lt;br /&gt;
&lt;br /&gt;
Solutions:&lt;br /&gt;
&lt;br /&gt;
# link script as used for grass6/ (make mix) -&amp;gt; nuisance&lt;br /&gt;
# start new repository from scratch in SVN using migrated CVS repos to maintain history; bulk-reformat the code with &amp;quot;indent&amp;quot;&lt;br /&gt;
&lt;br /&gt;
== Raster ==&lt;br /&gt;
&lt;br /&gt;
See also [[Replacement raster format]]&lt;br /&gt;
&lt;br /&gt;
=== Library ===&lt;br /&gt;
* allowing nulls to be embedded&lt;br /&gt;
* Split libgis into G_() part and Rast_() part&lt;br /&gt;
* Rewrite library from scratch. See [http://grass.itc.it/pipermail/grass-dev/2006-August/025025.html suggestions]&lt;br /&gt;
* Insert 'vertical' 2d rasters (e.g. [http://woodshole.er.usgs.gov/project-pages/longislandsound/images/Ghist_square2.jpg geophysical survey data])&lt;br /&gt;
* [http://freegis.org/cgi-bin/viewcvs.cgi/grass/gips/gip-0002.txt?rev=HEAD&amp;amp;content-type=text/vnd.viewcvs-markup GRASS raster &amp;quot;live links&amp;quot; via GDAL]&lt;br /&gt;
&lt;br /&gt;
=== Modules ===&lt;br /&gt;
&lt;br /&gt;
==== rename ====&lt;br /&gt;
* rename r.in.gdal to r.import&lt;br /&gt;
* rename r.out.gdal to r.export&lt;br /&gt;
* rename r.volume 'data' parameter to something more standard like 'input' or 'map'&lt;br /&gt;
&lt;br /&gt;
==== remove ====&lt;br /&gt;
* Remove r.bitpattern since r.mapcalc does it more nicely now&lt;br /&gt;
* Remove r.in.arc and r.out.arc, '''if''' a [http://intevation.de/rt/webrt?serial_num=4897 related bug in r.in.gdal] is fixed. The [http://bugzilla.remotesensing.org/show_bug.cgi?id=1071 integer/floating point detection for AAIGrid driver in GDAL] was fixed after 1.3.2 release, so r.in.gdal and r.out.gdal should be enough now.&lt;br /&gt;
&lt;br /&gt;
* remove '''r.resample''' and '''r.bilinear''' in favor of '''r.resamp.interp'''&lt;br /&gt;
* remove '''r.univar.sh'''; newly implemented '''r.univar''' features cover it&lt;br /&gt;
&lt;br /&gt;
* remove r.out.tiff. New C r.out.gdal should cover all it's option now (doublecheck!). See [http://intevation.de/rt/webrt?serial_num=3680 RT #3680] (starting with date Sun, Nov 26 2006 14:54:23).&lt;br /&gt;
: It might be worth keeping r.out.tiff! It makes a nice delta when things don't go well (eg [https://svn.qgis.org/trac/ticket/348 QGIS bug#348]) --HB&lt;br /&gt;
&lt;br /&gt;
* Remove remaining -v and -q flags for verbosity levels of modules.&lt;br /&gt;
&lt;br /&gt;
==== Merge ====&lt;br /&gt;
&lt;br /&gt;
* merge '''r.surf.idw''' and '''r.surf.idw2'''&lt;br /&gt;
: while r.surf.idw will only output CELL maps, it is Very Fast.&lt;br /&gt;
&lt;br /&gt;
* r.sum, r.mode, r.median, r.average, r.statistics, r.univar, r.univar2 - maybe they can be reduced to just r.statistics and r.univar? See [http://intevation.de/rt/webrt?serial_num=1848 RT #1848] and a [http://grass.itc.it/pipermail/grass-dev/2006-November/027665.html thread on the GRASS dev list]&lt;br /&gt;
&lt;br /&gt;
* r.resamp.rst: merge into r.resamp.interp to make resolution management identical to the other modules&lt;br /&gt;
&lt;br /&gt;
* r.in.wms and r.in.srtm into r.in.gdal thanks to native support for [http://www.gdal.org/frmt_wms.html WMS] and [http://www.gdal.org/frmt_various.html#SRTMHGT SRTM] in GDAL 1.5&lt;br /&gt;
* '''r.buffer''' and '''r.grow'''&lt;br /&gt;
&lt;br /&gt;
==== fix ====&lt;br /&gt;
* fix lseek() usage for Large File Support: see [http://grass.itc.it/pipermail/grass-dev/2006-December/028231.html list of affected modules]&lt;br /&gt;
* fix the raster map history management (truncating long history, odd storage). It should work like for vector maps in GRASS 6.&lt;br /&gt;
* r.volume centroids parameter only makes a level one vector with no attribute table; module should be updated to GRASS 6 vector library)&lt;br /&gt;
&lt;br /&gt;
== Vector ==&lt;br /&gt;
=== Radim's TODO list ===&lt;br /&gt;
&lt;br /&gt;
[http://freegis.org/cgi-bin/viewcvs.cgi/grass6/doc/vector/TODO?rev=HEAD&amp;amp;content-type=text/vnd.viewcvs-markup Vector TODO list]&lt;br /&gt;
* Particularly important: &amp;quot;Keep topology and spatial index in file instead of in memory&amp;quot; --ML&lt;br /&gt;
&lt;br /&gt;
=== Library ===&lt;br /&gt;
* 2d 'vertical' vector data (e.g. [http://sofia.usgs.gov/publications/maps/florida_geology/Txsectionbh.jpg Geologic Cross Sections])&lt;br /&gt;
* implement transactions for geometry handling (esp. v.edit, v.digit and to avoid leftover files when a vector command fails)&lt;br /&gt;
&lt;br /&gt;
=== Modules ===&lt;br /&gt;
&lt;br /&gt;
==== rename ====&lt;br /&gt;
* rename v.in.ogr to v.import&lt;br /&gt;
* rename v.out.ogr to v.export&lt;br /&gt;
* rename v.mkgrid to v.grid&lt;br /&gt;
* rename v.univar.sh to v.db.univar ([http://grass.itc.it/pipermail/grass-dev/2007-May/030883.html comment])&lt;br /&gt;
&lt;br /&gt;
==== remove ====&lt;br /&gt;
&lt;br /&gt;
* Remove [http://intevation.de/rt/webrt?serial_num=3600 doubled units in v.to.db GUI]&lt;br /&gt;
&lt;br /&gt;
==== merge ====&lt;br /&gt;
* merge v.select and v.overlay&lt;br /&gt;
: needs discussion, they are doing fundamentally different things --HB&lt;br /&gt;
&lt;br /&gt;
* merge v.sample and v.what.rast&lt;br /&gt;
: See a feature request [http://wald.intevation.org/tracker/index.php?func=detail&amp;amp;aid=506&amp;amp;group_id=21&amp;amp;atid=188 #506] in GForge.&lt;br /&gt;
&lt;br /&gt;
==== fix ====&lt;br /&gt;
* Fix the [http://intevation.de/rt/webrt?serial_num=3623 Column 'cat_' already exists (duplicate name)] in v.in.ogr. Maybe by creating columns ''cat_1'', ''cat_2'' etc.  each time a Grass vector is exported to shapefile and imported back to Grass?&lt;br /&gt;
* write Vect_map_exists() and implement in g.remove and v.digit -n (why wait for GRASS 7 ??)&lt;br /&gt;
* add '-d' dissolve to v.reclass&lt;br /&gt;
* add 'where=' to v.to.rast (why wait for GRASS 7 ??)&lt;br /&gt;
* implement Douglas-Peucker generalization ([http://www.ngdc.noaa.gov/mgg/shorelines/data/gshhs/ C code file])to substitute prune tool of v.clean ([http://grass.itc.it/pipermail/grass-dev/2007-May/thread.html#31446 done]?, see also GSoC)&lt;br /&gt;
* Rewrite vector labeling. Needs more placement control options (may be db field value based), label overlaping prevention would be also good. May be we could borrow some ideas from MapServer? (ongoing: v.label.sa)&lt;br /&gt;
* v.what.vect - rename parameters &amp;amp;quot;vector&amp;amp;quot; to &amp;amp;quot;map&amp;amp;quot;, &amp;amp;quot;qvector&amp;amp;quot; to &amp;amp;quot;qmap&amp;amp;quot;&lt;br /&gt;
* v.type - change type= option to from= and to=.(code's already in there)&lt;br /&gt;
&lt;br /&gt;
== General ==&lt;br /&gt;
=== Library ===&lt;br /&gt;
* Add support for planetary bodies reference systems&lt;br /&gt;
* &amp;lt;strike&amp;gt;Add new partial differential equation (PDE) library with OpenMP support&amp;lt;/strike&amp;gt; (GRASS 6.3)&lt;br /&gt;
&lt;br /&gt;
=== Modules ===&lt;br /&gt;
&lt;br /&gt;
* g.remove, g.mremove, g.rename, g.copy: don't allow for default datatype (which is currently raster) [http://intevation.de/rt/webrt?serial_num=3009].&lt;br /&gt;
: controversial, needs more discussion --HB&lt;br /&gt;
* g.region&lt;br /&gt;
** [http://grass.itc.it/pipermail/grassuser/2007-February/038337.html Glynn's notes] - cleaning the print flags and new &amp;lt;tt&amp;gt;print=&amp;lt;/tt&amp;gt; option&lt;br /&gt;
&lt;br /&gt;
== Database ==&lt;br /&gt;
=== Library ===&lt;br /&gt;
&lt;br /&gt;
* establish SQLite as default DBMI driver (DBF is too limited)&lt;br /&gt;
&lt;br /&gt;
=== Modules ===&lt;br /&gt;
&lt;br /&gt;
== Imagery ==&lt;br /&gt;
=== Library ===&lt;br /&gt;
&lt;br /&gt;
Do merge of image libraries:&lt;br /&gt;
&lt;br /&gt;
* A)&lt;br /&gt;
** lib/imagery/: standard lib, in use (i.* except for i.points3, i.rectify3)&lt;br /&gt;
** imagery/i.ortho.photo/libes/: standard lib, in use (i.ortho.photo, photo.*)&lt;br /&gt;
* B)&lt;br /&gt;
** lib/image3/: never finished improvement which integrated the standard lib and the ortho lib. Seems to provide also ortho rectification for satellite data (i.points3, i.rectify3)&lt;br /&gt;
&lt;br /&gt;
=== Modules ===&lt;br /&gt;
&lt;br /&gt;
* merge of i.points, i.vpoints, i.points3&lt;br /&gt;
: drop these altogether? (loss of interactive XDRIVER)&lt;br /&gt;
* merge of i.rectify and i.rectify3&lt;br /&gt;
: maybe depend on gdalwarp C API for this?&lt;br /&gt;
* addition of new resampling algorithms such as bilinear, cubic convolution (take from r.proj?)&lt;br /&gt;
* add other warping methods (maybe thin splines from GDAL?)&lt;br /&gt;
* implement/finish linewise ortho-rectification of satellite data&lt;br /&gt;
* Depreciate tape functions in next major revision of GRASS and create a tape module that accomplishes tape access.&lt;br /&gt;
&lt;br /&gt;
== Raster3D ==&lt;br /&gt;
=== Library ===&lt;br /&gt;
* renaming of all G3D library functions to fulfil the grass coding standard&lt;br /&gt;
* extent/rewrite documentation &lt;br /&gt;
* localisation support (why wait for GRASS 7 ??)&lt;br /&gt;
&lt;br /&gt;
=== Modules ===&lt;br /&gt;
* report and support modules like r3.stats, r3.support&lt;br /&gt;
* voxel -&amp;gt; vector (isosurfaces ...) and vector -&amp;gt; voxel (lines, faces, volumes) conversion modules&lt;br /&gt;
* module for 3d Kriging interpolation based on vector points&lt;br /&gt;
* a GRASS-Python/VTK visualisation/manipulation tool&lt;br /&gt;
&lt;br /&gt;
== Display ==&lt;br /&gt;
&lt;br /&gt;
=== New display architecture ===&lt;br /&gt;
&lt;br /&gt;
''Comments from Glynn Clements (from [http://www.nabble.com/Cairo-monitor-driver-tf4620004.html#a13206009 here]):''&lt;br /&gt;
&lt;br /&gt;
# Eliminating seperate driver processes. Having to extend the protocol for each new operation has been a major drag on development.&lt;br /&gt;
# Use of floating-point for all graphics coordinates. For geographic data, the expected approach will be to set an appropriate transform then use cartographic coordinates. &lt;br /&gt;
# Common architecture for both video and hardcopy output. ps.map should be redundant. &lt;br /&gt;
&lt;br /&gt;
In retrospect, #1 means that we don't really need support for the Windows/MacOSX GUI, just the ability to generate image files.&lt;br /&gt;
&lt;br /&gt;
With X, we could take the shortcut of having d.* commands draw directly into an existing window, but I don't know whether that's possible on other platforms.&lt;br /&gt;
&lt;br /&gt;
OTOH, it might be useful to be able to use the same functions for self-contained GUI programs (e.g. vector digitising) as for d.* commands.&lt;br /&gt;
&lt;br /&gt;
=== Library ===&lt;br /&gt;
* Drop support for interactive xmon modules&lt;br /&gt;
&lt;br /&gt;
=== Modules ===&lt;br /&gt;
* d.font etc.&lt;br /&gt;
** Huidae Cho merged d.text.freetype and d.text into d.text.new; drop them and rename d.text.new into d.text&lt;br /&gt;
** merge d.font and d.font.freetype too&lt;br /&gt;
: now done in 6.3?&lt;br /&gt;
&lt;br /&gt;
* d.vect&lt;br /&gt;
** consolidate parameter names (attrcol, wcolumn, rgb_column)&lt;br /&gt;
: how?&lt;br /&gt;
&lt;br /&gt;
* remove d.ask, d.menu, d.linegraph(?), d.mapgraph, d.text.freetype, d.paint.labels (symlink), d.font.*&lt;br /&gt;
&lt;br /&gt;
* remove d.m&lt;br /&gt;
&lt;br /&gt;
* d.legend, d.barscale, d.text, etc: make at=0,0 origin identical!&lt;br /&gt;
: FWIW, I copied the d.legend at= syntax from d.frame --HB&lt;br /&gt;
&lt;br /&gt;
== Postscript ==&lt;br /&gt;
=== Modules ===&lt;br /&gt;
ps.map&lt;br /&gt;
* remove scale parameter&lt;br /&gt;
: -&amp;gt; from the command line, not the map instruction&lt;br /&gt;
* rename sizecol to sizecolumn (remove the given warning)&lt;br /&gt;
&lt;br /&gt;
See also &amp;quot;New display architecture&amp;quot; comments above.&lt;br /&gt;
&lt;br /&gt;
== Parser ==&lt;br /&gt;
&lt;br /&gt;
* &amp;quot;Add another semantic meaning to the parser system for a type safe enumerated list&amp;quot; (Cedric's words commenting the bug that  [http://intevation.de/rt/webrt?serial_num=2969 '''v.type''' doesn't allow for selecting input and output type in '''GUI''']&lt;br /&gt;
&lt;br /&gt;
* Making GRASS modules be less verbose. Use --verbose flag and GRASS_VERBOSE environment variable. All output (G_message, G_percetn, G_warning) should go to GRASS_LOG file which could be grassdata/location/mapset/.grass.log by default.&lt;br /&gt;
: less verbose: this is well underway in 6.3&lt;br /&gt;
: Note warning and errors are already logged to GIS_ERROR_LOG (see variables.html)&lt;br /&gt;
&lt;br /&gt;
== Init shell and startup ==&lt;br /&gt;
&lt;br /&gt;
* .grassrc6 is not what you expect. It holds the g.gisenv GIS variables, it's not a shell script containing commands like .bashrc is.&lt;br /&gt;
: Suggestion: We should change the name for 7.x. It isn't an &amp;quot;rc&amp;quot; file in the conventional sense.&lt;br /&gt;
:: Suggestion: make it even a $HOME/.grass7/ directory to store settings etc (e.g., from r.li and others)&lt;br /&gt;
&lt;br /&gt;
* It is asked to run GRASS in its own shell to avoid portability issues [http://grass.itc.it/pipermail/grass-dev/2007-August/032607.html 1].&lt;br /&gt;
&lt;br /&gt;
* Eliminate Init.sh. Glynn explains on [http://www.nabble.com/forum/ViewPost.jtp?post=12914361&amp;amp;framed=y GRASS user ML]: &amp;quot;Most of the environment can be set up through an e.g. /etc/env.d/grass script. The database, location and mapset can be set through g.mapset. The only slight subtlety is if you want multiple independent sessions, but that can be done with a fraction of the code in Init.sh.&amp;quot;&lt;br /&gt;
&lt;br /&gt;
* Provide a mechanism (g.access option?) to enable r/w access for users in mapsets they don't own. So that it they don't need to hack lib/gis/mapset_msc.c. Glynn explains on [http://www.nabble.com/forum/ViewPost.jtp?post=12914361&amp;amp;framed=y GRASS user ML]: &amp;quot;AFAICT, that restriction has been unnecessary ever since the lockfile was moved from the user's home directory to the mapset directory.&amp;quot;&lt;br /&gt;
&lt;br /&gt;
== Data management ==&lt;br /&gt;
&lt;br /&gt;
* store vertical units on per-map base, using code from [http://www.gnu.org/software/units/ units] software&lt;br /&gt;
: Support for free form unit meta-data added in 6.3. I don't mind it as a guide, but we shouldn't be limited to units found in ''units''. --HB&lt;br /&gt;
&lt;br /&gt;
* store vertical map datum on per-location base (GDAL/OGR needs the same [http://lists.maptools.org/pipermail/gdal-dev/2005-October/006857.html enhancement])&lt;br /&gt;
: This requires more discussion. I'm not sure it's a good idea to do this location-wide. --HB&lt;br /&gt;
: On a per raster map basis done in 6.3 cvs.&lt;br /&gt;
&lt;br /&gt;
* add versioning for maps (to recover previous map versions)&lt;br /&gt;
: see &amp;quot;v.info -h&amp;quot; ?&lt;br /&gt;
&lt;br /&gt;
== Time series ==&lt;br /&gt;
&lt;br /&gt;
* Implement better [[Time series in GRASS]] support (series of satellite data etc)&lt;br /&gt;
: for example?&lt;br /&gt;
&lt;br /&gt;
== Visualization ==&lt;br /&gt;
&lt;br /&gt;
* better support for faces and kernels in libgis&lt;br /&gt;
: not really Visualization, but....&lt;br /&gt;
&lt;br /&gt;
== CLI ==&lt;br /&gt;
&lt;br /&gt;
* Fix the parameters and flags. Make it a concept. See proposal in GRASS 5 [http://freegis.org/cgi-bin/viewcvs.cgi/grass/documents/parameter_proposal.txt?rev=HEAD&amp;amp;content-type=text/vnd.viewcvs-markup documents/parameter_proposal.txt]&lt;br /&gt;
&lt;br /&gt;
* Get rid of 'quiet/verbose' flags, preparation in GRASS 6, e.g.:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
    /* please, remove before GRASS 7 released */&lt;br /&gt;
    if(q-&amp;gt;answer) {&lt;br /&gt;
        putenv(&amp;quot;GRASS_VERBOSE=0&amp;quot;);&lt;br /&gt;
        G_warning(_(&amp;quot;The '-q' flag is superseded and will be removed &amp;quot;&lt;br /&gt;
            &amp;quot;in future. Please use '--quiet' instead&amp;quot;));&lt;br /&gt;
    }&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== GUI ==&lt;br /&gt;
&lt;br /&gt;
* Multiplatform&lt;br /&gt;
* Fast, minimalist, number of windows reduced&lt;br /&gt;
* Manageable also from command line via d.* modules&lt;br /&gt;
* Facilitating easy development of custom GUI application based on GRASS&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* &amp;amp;rarr; [[WxPython-based GUI for GRASS]]&lt;br /&gt;
&lt;br /&gt;
== Conceptual changes ==&lt;br /&gt;
&lt;br /&gt;
* File organization in binaries:&lt;br /&gt;
** the grass etc dir is a mess... module should maintain arch-deps and arch-indep things in different paths -- &amp;lt;cite&amp;gt; frankie at #grass irc&amp;lt;/cite&amp;gt;&lt;br /&gt;
** it's basically a FHS violation, i dunno if it is reported by lintian, anyway /usr/lib/grass should be used for arch-deps data, not for mixed stuff -- &amp;lt;cite&amp;gt; frankie at #grass irc&amp;lt;/cite&amp;gt;&lt;br /&gt;
* Creating $HOME/.grass7 directory for&lt;br /&gt;
** Custom fonts&lt;br /&gt;
** r.li and other modules temp. files&lt;br /&gt;
** GEM addons installation&lt;br /&gt;
** Default path for custom scripts&lt;br /&gt;
** Custom symbols and EPS fill patterns&lt;br /&gt;
** Custom color maps&lt;br /&gt;
** Add here new item&lt;br /&gt;
&lt;br /&gt;
== User Wishes ==&lt;br /&gt;
&lt;br /&gt;
''This section is not really development related...''&lt;br /&gt;
* Create 3D animation w nviz showing GRASS 3D coolness. [[User:MarisN|MarisN]] 12:00, 4 August 2006 (CEST)&lt;br /&gt;
* here are some examples to get inspired (apparently that's already possible):&lt;br /&gt;
** [http://skagit.meas.ncsu.edu/~helena/publwork/grasskey02/grass02talk10.html dynamic surfaces and volumes]&lt;br /&gt;
**[http://skagit.meas.ncsu.edu/~helena/wrriwork/cenntenial/water01dsmall.gif some water]&lt;br /&gt;
**[http://skagit.meas.ncsu.edu/~helena/wrriwork/balsam/fanimwalk.gif particles]&lt;br /&gt;
** [http://www.fhpv.unipo.sk/kagerr/pracovnici/hofierka/pv_results.html solar radiation and energy]&lt;br /&gt;
* Convince the users to use ParaView [http://www.paraview.org] for sophisticated animations --[[User:Huhabla|huhabla]] 20:47, 14 August 2006 (CEST)&lt;br /&gt;
**(Add support for Paraview in GDAL/OGR or add GDAL/OGR support in ParaView to read directly data from GRASS) see diskussion&lt;br /&gt;
* Or use [http://www.llnl.gov/visit/ VisIt software], it should be able to read GRASS maps directly via GDAL&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Development]]&lt;br /&gt;
[[Category:Release Roadmap]]&lt;/div&gt;</summary>
		<author><name>⚠️EricPatton</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=GRASS_7_ideas_collection&amp;diff=5702</id>
		<title>GRASS 7 ideas collection</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=GRASS_7_ideas_collection&amp;diff=5702"/>
		<updated>2008-01-10T18:52:12Z</updated>

		<summary type="html">&lt;p&gt;⚠️EricPatton: typo&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Maintenance of grass7/ repository ==&lt;br /&gt;
&lt;br /&gt;
Issue: only new code should go into grass7/. How to link into the existing GRASS 6 code?&lt;br /&gt;
&lt;br /&gt;
Solutions:&lt;br /&gt;
&lt;br /&gt;
# link script as used for grass6/ (make mix) -&amp;gt; nuisance&lt;br /&gt;
# start new repository from scratch in SVN using migrated CVS repos to maintain history; bulk-reformat the code with &amp;quot;indent&amp;quot;&lt;br /&gt;
&lt;br /&gt;
== Raster ==&lt;br /&gt;
&lt;br /&gt;
See also [[Replacement raster format]]&lt;br /&gt;
&lt;br /&gt;
=== Library ===&lt;br /&gt;
* allowing nulls to be embedded&lt;br /&gt;
* Split libgis into G_() part and Rast_() part&lt;br /&gt;
* Rewrite library from scratch. See [http://grass.itc.it/pipermail/grass-dev/2006-August/025025.html suggestions]&lt;br /&gt;
* Insert 'vertical' 2d rasters (e.g. [http://woodshole.er.usgs.gov/project-pages/longislandsound/images/Ghist_square2.jpg geophysical survey data])&lt;br /&gt;
* [http://freegis.org/cgi-bin/viewcvs.cgi/grass/gips/gip-0002.txt?rev=HEAD&amp;amp;content-type=text/vnd.viewcvs-markup GRASS raster &amp;quot;live links&amp;quot; via GDAL]&lt;br /&gt;
&lt;br /&gt;
=== Modules ===&lt;br /&gt;
&lt;br /&gt;
==== rename ====&lt;br /&gt;
* rename r.in.gdal to r.import&lt;br /&gt;
* rename r.out.gdal to r.export&lt;br /&gt;
&lt;br /&gt;
==== remove ====&lt;br /&gt;
* Remove r.bitpattern since r.mapcalc does it more nicely now&lt;br /&gt;
* Remove r.in.arc and r.out.arc, '''if''' a [http://intevation.de/rt/webrt?serial_num=4897 related bug in r.in.gdal] is fixed. The [http://bugzilla.remotesensing.org/show_bug.cgi?id=1071 integer/floating point detection for AAIGrid driver in GDAL] was fixed after 1.3.2 release, so r.in.gdal and r.out.gdal should be enough now.&lt;br /&gt;
&lt;br /&gt;
* remove '''r.resample''' and '''r.bilinear''' in favor of '''r.resamp.interp'''&lt;br /&gt;
* remove '''r.univar.sh'''; newly implemented '''r.univar''' features cover it&lt;br /&gt;
&lt;br /&gt;
* remove r.out.tiff. New C r.out.gdal should cover all it's option now (doublecheck!). See [http://intevation.de/rt/webrt?serial_num=3680 RT #3680] (starting with date Sun, Nov 26 2006 14:54:23).&lt;br /&gt;
: It might be worth keeping r.out.tiff! It makes a nice delta when things don't go well (eg [https://svn.qgis.org/trac/ticket/348 QGIS bug#348]) --HB&lt;br /&gt;
&lt;br /&gt;
* Remove remaining -v and -q flags for verbosity levels of modules.&lt;br /&gt;
&lt;br /&gt;
==== Merge ====&lt;br /&gt;
&lt;br /&gt;
* merge '''r.surf.idw''' and '''r.surf.idw2'''&lt;br /&gt;
: while r.surf.idw will only output CELL maps, it is Very Fast.&lt;br /&gt;
&lt;br /&gt;
* r.sum, r.mode, r.median, r.average, r.statistics, r.univar, r.univar2 - maybe they can be reduced to just r.statistics and r.univar? See [http://intevation.de/rt/webrt?serial_num=1848 RT #1848] and a [http://grass.itc.it/pipermail/grass-dev/2006-November/027665.html thread on the GRASS dev list]&lt;br /&gt;
&lt;br /&gt;
* r.resamp.rst: merge into r.resamp.interp to make resolution management identical to the other modules&lt;br /&gt;
&lt;br /&gt;
* r.in.wms and r.in.srtm into r.in.gdal thanks to native support for [http://www.gdal.org/frmt_wms.html WMS] and [http://www.gdal.org/frmt_various.html#SRTMHGT SRTM] in GDAL 1.5&lt;br /&gt;
* '''r.buffer''' and '''r.grow'''&lt;br /&gt;
&lt;br /&gt;
==== fix ====&lt;br /&gt;
* fix lseek() usage for Large File Support: see [http://grass.itc.it/pipermail/grass-dev/2006-December/028231.html list of affected modules]&lt;br /&gt;
* fix the raster map history management (truncating long history, odd storage). It should work like for vector maps in GRASS 6.&lt;br /&gt;
* r.volume centroids parameter only makes a level one vector with no attribute table; module should be updated to GRASS 6 vector library)&lt;br /&gt;
&lt;br /&gt;
== Vector ==&lt;br /&gt;
=== Radim's TODO list ===&lt;br /&gt;
&lt;br /&gt;
[http://freegis.org/cgi-bin/viewcvs.cgi/grass6/doc/vector/TODO?rev=HEAD&amp;amp;content-type=text/vnd.viewcvs-markup Vector TODO list]&lt;br /&gt;
* Particularly important: &amp;quot;Keep topology and spatial index in file instead of in memory&amp;quot; --ML&lt;br /&gt;
&lt;br /&gt;
=== Library ===&lt;br /&gt;
* 2d 'vertical' vector data (e.g. [http://sofia.usgs.gov/publications/maps/florida_geology/Txsectionbh.jpg Geologic Cross Sections])&lt;br /&gt;
* implement transactions for geometry handling (esp. v.edit, v.digit and to avoid leftover files when a vector command fails)&lt;br /&gt;
&lt;br /&gt;
=== Modules ===&lt;br /&gt;
&lt;br /&gt;
==== rename ====&lt;br /&gt;
* rename v.in.ogr to v.import&lt;br /&gt;
* rename v.out.ogr to v.export&lt;br /&gt;
* rename v.mkgrid to v.grid&lt;br /&gt;
* rename v.univar.sh to v.db.univar ([http://grass.itc.it/pipermail/grass-dev/2007-May/030883.html comment])&lt;br /&gt;
&lt;br /&gt;
==== remove ====&lt;br /&gt;
&lt;br /&gt;
* Remove [http://intevation.de/rt/webrt?serial_num=3600 doubled units in v.to.db GUI]&lt;br /&gt;
&lt;br /&gt;
==== merge ====&lt;br /&gt;
* merge v.select and v.overlay&lt;br /&gt;
: needs discussion, they are doing fundamentally different things --HB&lt;br /&gt;
&lt;br /&gt;
* merge v.sample and v.what.rast&lt;br /&gt;
: See a feature request [http://wald.intevation.org/tracker/index.php?func=detail&amp;amp;aid=506&amp;amp;group_id=21&amp;amp;atid=188 #506] in GForge.&lt;br /&gt;
&lt;br /&gt;
==== fix ====&lt;br /&gt;
* Fix the [http://intevation.de/rt/webrt?serial_num=3623 Column 'cat_' already exists (duplicate name)] in v.in.ogr. Maybe by creating columns ''cat_1'', ''cat_2'' etc.  each time a Grass vector is exported to shapefile and imported back to Grass?&lt;br /&gt;
* write Vect_map_exists() and implement in g.remove and v.digit -n (why wait for GRASS 7 ??)&lt;br /&gt;
* add '-d' dissolve to v.reclass&lt;br /&gt;
* add 'where=' to v.to.rast (why wait for GRASS 7 ??)&lt;br /&gt;
* implement Douglas-Peucker generalization ([http://www.ngdc.noaa.gov/mgg/shorelines/data/gshhs/ C code file])to substitute prune tool of v.clean ([http://grass.itc.it/pipermail/grass-dev/2007-May/thread.html#31446 done]?, see also GSoC)&lt;br /&gt;
* Rewrite vector labeling. Needs more placement control options (may be db field value based), label overlaping prevention would be also good. May be we could borrow some ideas from MapServer? (ongoing: v.label.sa)&lt;br /&gt;
* v.what.vect - rename parameters &amp;amp;quot;vector&amp;amp;quot; to &amp;amp;quot;map&amp;amp;quot;, &amp;amp;quot;qvector&amp;amp;quot; to &amp;amp;quot;qmap&amp;amp;quot;&lt;br /&gt;
* v.type - change type= option to from= and to=.(code's already in there)&lt;br /&gt;
&lt;br /&gt;
== General ==&lt;br /&gt;
=== Library ===&lt;br /&gt;
* Add support for planetary bodies reference systems&lt;br /&gt;
* &amp;lt;strike&amp;gt;Add new partial differential equation (PDE) library with OpenMP support&amp;lt;/strike&amp;gt; (GRASS 6.3)&lt;br /&gt;
&lt;br /&gt;
=== Modules ===&lt;br /&gt;
&lt;br /&gt;
* g.remove, g.mremove, g.rename, g.copy: don't allow for default datatype (which is currently raster) [http://intevation.de/rt/webrt?serial_num=3009].&lt;br /&gt;
: controversial, needs more discussion --HB&lt;br /&gt;
* g.region&lt;br /&gt;
** [http://grass.itc.it/pipermail/grassuser/2007-February/038337.html Glynn's notes] - cleaning the print flags and new &amp;lt;tt&amp;gt;print=&amp;lt;/tt&amp;gt; option&lt;br /&gt;
&lt;br /&gt;
== Database ==&lt;br /&gt;
=== Library ===&lt;br /&gt;
&lt;br /&gt;
* establish SQLite as default DBMI driver (DBF is too limited)&lt;br /&gt;
&lt;br /&gt;
=== Modules ===&lt;br /&gt;
&lt;br /&gt;
== Imagery ==&lt;br /&gt;
=== Library ===&lt;br /&gt;
&lt;br /&gt;
Do merge of image libraries:&lt;br /&gt;
&lt;br /&gt;
* A)&lt;br /&gt;
** lib/imagery/: standard lib, in use (i.* except for i.points3, i.rectify3)&lt;br /&gt;
** imagery/i.ortho.photo/libes/: standard lib, in use (i.ortho.photo, photo.*)&lt;br /&gt;
* B)&lt;br /&gt;
** lib/image3/: never finished improvement which integrated the standard lib and the ortho lib. Seems to provide also ortho rectification for satellite data (i.points3, i.rectify3)&lt;br /&gt;
&lt;br /&gt;
=== Modules ===&lt;br /&gt;
&lt;br /&gt;
* merge of i.points, i.vpoints, i.points3&lt;br /&gt;
: drop these altogether? (loss of interactive XDRIVER)&lt;br /&gt;
* merge of i.rectify and i.rectify3&lt;br /&gt;
: maybe depend on gdalwarp C API for this?&lt;br /&gt;
* addition of new resampling algorithms such as bilinear, cubic convolution (take from r.proj?)&lt;br /&gt;
* add other warping methods (maybe thin splines from GDAL?)&lt;br /&gt;
* implement/finish linewise ortho-rectification of satellite data&lt;br /&gt;
* Depreciate tape functions in next major revision of GRASS and create a tape module that accomplishes tape access.&lt;br /&gt;
&lt;br /&gt;
== Raster3D ==&lt;br /&gt;
=== Library ===&lt;br /&gt;
* renaming of all G3D library functions to fulfil the grass coding standard&lt;br /&gt;
* extent/rewrite documentation &lt;br /&gt;
* localisation support (why wait for GRASS 7 ??)&lt;br /&gt;
&lt;br /&gt;
=== Modules ===&lt;br /&gt;
* report and support modules like r3.stats, r3.support&lt;br /&gt;
* voxel -&amp;gt; vector (isosurfaces ...) and vector -&amp;gt; voxel (lines, faces, volumes) conversion modules&lt;br /&gt;
* module for 3d Kriging interpolation based on vector points&lt;br /&gt;
* a GRASS-Python/VTK visualisation/manipulation tool&lt;br /&gt;
&lt;br /&gt;
== Display ==&lt;br /&gt;
&lt;br /&gt;
=== New display architecture ===&lt;br /&gt;
&lt;br /&gt;
''Comments from Glynn Clements (from [http://www.nabble.com/Cairo-monitor-driver-tf4620004.html#a13206009 here]):''&lt;br /&gt;
&lt;br /&gt;
# Eliminating seperate driver processes. Having to extend the protocol for each new operation has been a major drag on development.&lt;br /&gt;
# Use of floating-point for all graphics coordinates. For geographic data, the expected approach will be to set an appropriate transform then use cartographic coordinates. &lt;br /&gt;
# Common architecture for both video and hardcopy output. ps.map should be redundant. &lt;br /&gt;
&lt;br /&gt;
In retrospect, #1 means that we don't really need support for the Windows/MacOSX GUI, just the ability to generate image files.&lt;br /&gt;
&lt;br /&gt;
With X, we could take the shortcut of having d.* commands draw directly into an existing window, but I don't know whether that's possible on other platforms.&lt;br /&gt;
&lt;br /&gt;
OTOH, it might be useful to be able to use the same functions for self-contained GUI programs (e.g. vector digitising) as for d.* commands.&lt;br /&gt;
&lt;br /&gt;
=== Library ===&lt;br /&gt;
* Drop support for interactive xmon modules&lt;br /&gt;
&lt;br /&gt;
=== Modules ===&lt;br /&gt;
* d.font etc.&lt;br /&gt;
** Huidae Cho merged d.text.freetype and d.text into d.text.new; drop them and rename d.text.new into d.text&lt;br /&gt;
** merge d.font and d.font.freetype too&lt;br /&gt;
: now done in 6.3?&lt;br /&gt;
&lt;br /&gt;
* d.vect&lt;br /&gt;
** consolidate parameter names (attrcol, wcolumn, rgb_column)&lt;br /&gt;
: how?&lt;br /&gt;
&lt;br /&gt;
* remove d.ask, d.menu, d.linegraph(?), d.mapgraph, d.text.freetype, d.paint.labels (symlink), d.font.*&lt;br /&gt;
&lt;br /&gt;
* remove d.m&lt;br /&gt;
&lt;br /&gt;
* d.legend, d.barscale, d.text, etc: make at=0,0 origin identical!&lt;br /&gt;
: FWIW, I copied the d.legend at= syntax from d.frame --HB&lt;br /&gt;
&lt;br /&gt;
== Postscript ==&lt;br /&gt;
=== Modules ===&lt;br /&gt;
ps.map&lt;br /&gt;
* remove scale parameter&lt;br /&gt;
: -&amp;gt; from the command line, not the map instruction&lt;br /&gt;
* rename sizecol to sizecolumn (remove the given warning)&lt;br /&gt;
&lt;br /&gt;
See also &amp;quot;New display architecture&amp;quot; comments above.&lt;br /&gt;
&lt;br /&gt;
== Parser ==&lt;br /&gt;
&lt;br /&gt;
* &amp;quot;Add another semantic meaning to the parser system for a type safe enumerated list&amp;quot; (Cedric's words commenting the bug that  [http://intevation.de/rt/webrt?serial_num=2969 '''v.type''' doesn't allow for selecting input and output type in '''GUI''']&lt;br /&gt;
&lt;br /&gt;
* Making GRASS modules be less verbose. Use --verbose flag and GRASS_VERBOSE environment variable. All output (G_message, G_percetn, G_warning) should go to GRASS_LOG file which could be grassdata/location/mapset/.grass.log by default.&lt;br /&gt;
: less verbose: this is well underway in 6.3&lt;br /&gt;
: Note warning and errors are already logged to GIS_ERROR_LOG (see variables.html)&lt;br /&gt;
&lt;br /&gt;
== Init shell and startup ==&lt;br /&gt;
&lt;br /&gt;
* .grassrc6 is not what you expect. It holds the g.gisenv GIS variables, it's not a shell script containing commands like .bashrc is.&lt;br /&gt;
: Suggestion: We should change the name for 7.x. It isn't an &amp;quot;rc&amp;quot; file in the conventional sense.&lt;br /&gt;
:: Suggestion: make it even a $HOME/.grass7/ directory to store settings etc (e.g., from r.li and others)&lt;br /&gt;
&lt;br /&gt;
* It is asked to run GRASS in its own shell to avoid portability issues [http://grass.itc.it/pipermail/grass-dev/2007-August/032607.html 1].&lt;br /&gt;
&lt;br /&gt;
* Eliminate Init.sh. Glynn explains on [http://www.nabble.com/forum/ViewPost.jtp?post=12914361&amp;amp;framed=y GRASS user ML]: &amp;quot;Most of the environment can be set up through an e.g. /etc/env.d/grass script. The database, location and mapset can be set through g.mapset. The only slight subtlety is if you want multiple independent sessions, but that can be done with a fraction of the code in Init.sh.&amp;quot;&lt;br /&gt;
&lt;br /&gt;
* Provide a mechanism (g.access option?) to enable r/w access for users in mapsets they don't own. So that it they don't need to hack lib/gis/mapset_msc.c. Glynn explains on [http://www.nabble.com/forum/ViewPost.jtp?post=12914361&amp;amp;framed=y GRASS user ML]: &amp;quot;AFAICT, that restriction has been unnecessary ever since the lockfile was moved from the user's home directory to the mapset directory.&amp;quot;&lt;br /&gt;
&lt;br /&gt;
== Data management ==&lt;br /&gt;
&lt;br /&gt;
* store vertical units on per-map base, using code from [http://www.gnu.org/software/units/ units] software&lt;br /&gt;
: Support for free form unit meta-data added in 6.3. I don't mind it as a guide, but we shouldn't be limited to units found in ''units''. --HB&lt;br /&gt;
&lt;br /&gt;
* store vertical map datum on per-location base (GDAL/OGR needs the same [http://lists.maptools.org/pipermail/gdal-dev/2005-October/006857.html enhancement])&lt;br /&gt;
: This requires more discussion. I'm not sure it's a good idea to do this location-wide. --HB&lt;br /&gt;
: On a per raster map basis done in 6.3 cvs.&lt;br /&gt;
&lt;br /&gt;
* add versioning for maps (to recover previous map versions)&lt;br /&gt;
: see &amp;quot;v.info -h&amp;quot; ?&lt;br /&gt;
&lt;br /&gt;
== Time series ==&lt;br /&gt;
&lt;br /&gt;
* Implement better [[Time series in GRASS]] support (series of satellite data etc)&lt;br /&gt;
: for example?&lt;br /&gt;
&lt;br /&gt;
== Visualization ==&lt;br /&gt;
&lt;br /&gt;
* better support for faces and kernels in libgis&lt;br /&gt;
: not really Visualization, but....&lt;br /&gt;
&lt;br /&gt;
== CLI ==&lt;br /&gt;
&lt;br /&gt;
* Fix the parameters and flags. Make it a concept. See proposal in GRASS 5 [http://freegis.org/cgi-bin/viewcvs.cgi/grass/documents/parameter_proposal.txt?rev=HEAD&amp;amp;content-type=text/vnd.viewcvs-markup documents/parameter_proposal.txt]&lt;br /&gt;
&lt;br /&gt;
* Get rid of 'quiet/verbose' flags, preparation in GRASS 6, e.g.:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
    /* please, remove before GRASS 7 released */&lt;br /&gt;
    if(q-&amp;gt;answer) {&lt;br /&gt;
        putenv(&amp;quot;GRASS_VERBOSE=0&amp;quot;);&lt;br /&gt;
        G_warning(_(&amp;quot;The '-q' flag is superseded and will be removed &amp;quot;&lt;br /&gt;
            &amp;quot;in future. Please use '--quiet' instead&amp;quot;));&lt;br /&gt;
    }&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== GUI ==&lt;br /&gt;
&lt;br /&gt;
* Multiplatform&lt;br /&gt;
* Fast, minimalist, number of windows reduced&lt;br /&gt;
* Manageable also from command line via d.* modules&lt;br /&gt;
* Facilitating easy development of custom GUI application based on GRASS&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* &amp;amp;rarr; [[WxPython-based GUI for GRASS]]&lt;br /&gt;
&lt;br /&gt;
== Conceptual changes ==&lt;br /&gt;
&lt;br /&gt;
* File organization in binaries:&lt;br /&gt;
** the grass etc dir is a mess... module should maintain arch-deps and arch-indep things in different paths -- &amp;lt;cite&amp;gt; frankie at #grass irc&amp;lt;/cite&amp;gt;&lt;br /&gt;
** it's basically a FHS violation, i dunno if it is reported by lintian, anyway /usr/lib/grass should be used for arch-deps data, not for mixed stuff -- &amp;lt;cite&amp;gt; frankie at #grass irc&amp;lt;/cite&amp;gt;&lt;br /&gt;
* Creating $HOME/.grass7 directory for&lt;br /&gt;
** Custom fonts&lt;br /&gt;
** r.li and other modules temp. files&lt;br /&gt;
** GEM addons installation&lt;br /&gt;
** Default path for custom scripts&lt;br /&gt;
** Custom symbols and EPS fill patterns&lt;br /&gt;
** Custom color maps&lt;br /&gt;
** Add here new item&lt;br /&gt;
&lt;br /&gt;
== User Wishes ==&lt;br /&gt;
&lt;br /&gt;
''This section is not really development related...''&lt;br /&gt;
* Create 3D animation w nviz showing GRASS 3D coolness. [[User:MarisN|MarisN]] 12:00, 4 August 2006 (CEST)&lt;br /&gt;
* here are some examples to get inspired (apparently that's already possible):&lt;br /&gt;
** [http://skagit.meas.ncsu.edu/~helena/publwork/grasskey02/grass02talk10.html dynamic surfaces and volumes]&lt;br /&gt;
**[http://skagit.meas.ncsu.edu/~helena/wrriwork/cenntenial/water01dsmall.gif some water]&lt;br /&gt;
**[http://skagit.meas.ncsu.edu/~helena/wrriwork/balsam/fanimwalk.gif particles]&lt;br /&gt;
** [http://www.fhpv.unipo.sk/kagerr/pracovnici/hofierka/pv_results.html solar radiation and energy]&lt;br /&gt;
* Convince the users to use ParaView [http://www.paraview.org] for sophisticated animations --[[User:Huhabla|huhabla]] 20:47, 14 August 2006 (CEST)&lt;br /&gt;
**(Add support for Paraview in GDAL/OGR or add GDAL/OGR support in ParaView to read directly data from GRASS) see diskussion&lt;br /&gt;
* Or use [http://www.llnl.gov/visit/ VisIt software], it should be able to read GRASS maps directly via GDAL&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Development]]&lt;br /&gt;
[[Category:Release Roadmap]]&lt;/div&gt;</summary>
		<author><name>⚠️EricPatton</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=GRASS_7_ideas_collection&amp;diff=5701</id>
		<title>GRASS 7 ideas collection</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=GRASS_7_ideas_collection&amp;diff=5701"/>
		<updated>2008-01-10T18:49:31Z</updated>

		<summary type="html">&lt;p&gt;⚠️EricPatton: /* fix */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Maintenance of grass7/ repository ==&lt;br /&gt;
&lt;br /&gt;
Issue: only new code should go into grass7/. How to link into the existing GRASS 6 code?&lt;br /&gt;
&lt;br /&gt;
Solutions:&lt;br /&gt;
&lt;br /&gt;
# link script as used for grass6/ (make mix) -&amp;gt; nuisance&lt;br /&gt;
# start new repository from scratch in SVN using migrated CVS repos to maintain history; bulk-reformat the code with &amp;quot;indent&amp;quot;&lt;br /&gt;
&lt;br /&gt;
== Raster ==&lt;br /&gt;
&lt;br /&gt;
See also [[Replacement raster format]]&lt;br /&gt;
&lt;br /&gt;
=== Library ===&lt;br /&gt;
* allowing nulls to be embedded&lt;br /&gt;
* Split libgis into G_() part and Rast_() part&lt;br /&gt;
* Rewrite library from scratch. See [http://grass.itc.it/pipermail/grass-dev/2006-August/025025.html suggestions]&lt;br /&gt;
* Insert 'vertical' 2d rasters (e.g. [http://woodshole.er.usgs.gov/project-pages/longislandsound/images/Ghist_square2.jpg geophysical survey data])&lt;br /&gt;
* [http://freegis.org/cgi-bin/viewcvs.cgi/grass/gips/gip-0002.txt?rev=HEAD&amp;amp;content-type=text/vnd.viewcvs-markup GRASS raster &amp;quot;live links&amp;quot; via GDAL]&lt;br /&gt;
&lt;br /&gt;
=== Modules ===&lt;br /&gt;
&lt;br /&gt;
==== rename ====&lt;br /&gt;
* rename r.in.gdal to r.import&lt;br /&gt;
* rename r.out.gdal to r.export&lt;br /&gt;
&lt;br /&gt;
==== remove ====&lt;br /&gt;
* Remove r.bitpattern since r.mapcalc does it more nicely now&lt;br /&gt;
* Remove r.in.arc and r.out.arc, '''if''' a [http://intevation.de/rt/webrt?serial_num=4897 related bug in r.in.gdal] is fixed. The [http://bugzilla.remotesensing.org/show_bug.cgi?id=1071 integer/floating point detection for AAIGrid driver in GDAL] was fixed after 1.3.2 release, so r.in.gdal and r.out.gdal should be enough now.&lt;br /&gt;
&lt;br /&gt;
* remove '''r.resample''' and '''r.bilinear''' in favor of '''r.resamp.interp'''&lt;br /&gt;
* remove '''r.univar.sh'''; newly implemented '''r.univar''' features cover it&lt;br /&gt;
&lt;br /&gt;
* remove r.out.tiff. New C r.out.gdal should cover all it's option now (doublecheck!). See [http://intevation.de/rt/webrt?serial_num=3680 RT #3680] (starting with date Sun, Nov 26 2006 14:54:23).&lt;br /&gt;
: It might be worth keeping r.out.tiff! It makes a nice delta when things don't go well (eg [https://svn.qgis.org/trac/ticket/348 QGIS bug#348]) --HB&lt;br /&gt;
&lt;br /&gt;
* Remove remaining -v and -q flags for verbosity levels of modules.&lt;br /&gt;
&lt;br /&gt;
==== Merge ====&lt;br /&gt;
&lt;br /&gt;
* merge '''r.surf.idw''' and '''r.surf.idw2'''&lt;br /&gt;
: while r.surf.idw will only output CELL maps, it is Very Fast.&lt;br /&gt;
&lt;br /&gt;
* r.sum, r.mode, r.median, r.average, r.statistics, r.univar, r.univar2 - maybe they can be reduced to just r.statistics and r.univar? See [http://intevation.de/rt/webrt?serial_num=1848 RT #1848] and a [http://grass.itc.it/pipermail/grass-dev/2006-November/027665.html thread on the GRASS dev list]&lt;br /&gt;
&lt;br /&gt;
* r.resamp.rst: merge into r.resamp.interp to make resolution management identical to the other modules&lt;br /&gt;
&lt;br /&gt;
* r.in.wms and r.in.srtm into r.in.gdal thanks to native support for [http://www.gdal.org/frmt_wms.html WMS] and [http://www.gdal.org/frmt_various.html#SRTMHGT SRTM] in GDAL 1.5&lt;br /&gt;
* '''r.buffer''' and '''r.grow'''&lt;br /&gt;
&lt;br /&gt;
==== fix ====&lt;br /&gt;
* fix lseek() usage for Large File Support: see [http://grass.itc.it/pipermail/grass-dev/2006-December/028231.html list of affected modules]&lt;br /&gt;
* fix the raster map history management (truncating long history, odd storage). It should work like for vector maps in GRASS 6.&lt;br /&gt;
* r.volume centroids parameter only makes a level on vector with no attribute table; module should be updated to GRASS 6 vector library)&lt;br /&gt;
&lt;br /&gt;
== Vector ==&lt;br /&gt;
=== Radim's TODO list ===&lt;br /&gt;
&lt;br /&gt;
[http://freegis.org/cgi-bin/viewcvs.cgi/grass6/doc/vector/TODO?rev=HEAD&amp;amp;content-type=text/vnd.viewcvs-markup Vector TODO list]&lt;br /&gt;
* Particularly important: &amp;quot;Keep topology and spatial index in file instead of in memory&amp;quot; --ML&lt;br /&gt;
&lt;br /&gt;
=== Library ===&lt;br /&gt;
* 2d 'vertical' vector data (e.g. [http://sofia.usgs.gov/publications/maps/florida_geology/Txsectionbh.jpg Geologic Cross Sections])&lt;br /&gt;
* implement transactions for geometry handling (esp. v.edit, v.digit and to avoid leftover files when a vector command fails)&lt;br /&gt;
&lt;br /&gt;
=== Modules ===&lt;br /&gt;
&lt;br /&gt;
==== rename ====&lt;br /&gt;
* rename v.in.ogr to v.import&lt;br /&gt;
* rename v.out.ogr to v.export&lt;br /&gt;
* rename v.mkgrid to v.grid&lt;br /&gt;
* rename v.univar.sh to v.db.univar ([http://grass.itc.it/pipermail/grass-dev/2007-May/030883.html comment])&lt;br /&gt;
&lt;br /&gt;
==== remove ====&lt;br /&gt;
&lt;br /&gt;
* Remove [http://intevation.de/rt/webrt?serial_num=3600 doubled units in v.to.db GUI]&lt;br /&gt;
&lt;br /&gt;
==== merge ====&lt;br /&gt;
* merge v.select and v.overlay&lt;br /&gt;
: needs discussion, they are doing fundamentally different things --HB&lt;br /&gt;
&lt;br /&gt;
* merge v.sample and v.what.rast&lt;br /&gt;
: See a feature request [http://wald.intevation.org/tracker/index.php?func=detail&amp;amp;aid=506&amp;amp;group_id=21&amp;amp;atid=188 #506] in GForge.&lt;br /&gt;
&lt;br /&gt;
==== fix ====&lt;br /&gt;
* Fix the [http://intevation.de/rt/webrt?serial_num=3623 Column 'cat_' already exists (duplicate name)] in v.in.ogr. Maybe by creating columns ''cat_1'', ''cat_2'' etc.  each time a Grass vector is exported to shapefile and imported back to Grass?&lt;br /&gt;
* write Vect_map_exists() and implement in g.remove and v.digit -n (why wait for GRASS 7 ??)&lt;br /&gt;
* add '-d' dissolve to v.reclass&lt;br /&gt;
* add 'where=' to v.to.rast (why wait for GRASS 7 ??)&lt;br /&gt;
* implement Douglas-Peucker generalization ([http://www.ngdc.noaa.gov/mgg/shorelines/data/gshhs/ C code file])to substitute prune tool of v.clean ([http://grass.itc.it/pipermail/grass-dev/2007-May/thread.html#31446 done]?, see also GSoC)&lt;br /&gt;
* Rewrite vector labeling. Needs more placement control options (may be db field value based), label overlaping prevention would be also good. May be we could borrow some ideas from MapServer? (ongoing: v.label.sa)&lt;br /&gt;
* v.what.vect - rename parameters &amp;amp;quot;vector&amp;amp;quot; to &amp;amp;quot;map&amp;amp;quot;, &amp;amp;quot;qvector&amp;amp;quot; to &amp;amp;quot;qmap&amp;amp;quot;&lt;br /&gt;
* v.type - change type= option to from= and to=.(code's already in there)&lt;br /&gt;
&lt;br /&gt;
== General ==&lt;br /&gt;
=== Library ===&lt;br /&gt;
* Add support for planetary bodies reference systems&lt;br /&gt;
* &amp;lt;strike&amp;gt;Add new partial differential equation (PDE) library with OpenMP support&amp;lt;/strike&amp;gt; (GRASS 6.3)&lt;br /&gt;
&lt;br /&gt;
=== Modules ===&lt;br /&gt;
&lt;br /&gt;
* g.remove, g.mremove, g.rename, g.copy: don't allow for default datatype (which is currently raster) [http://intevation.de/rt/webrt?serial_num=3009].&lt;br /&gt;
: controversial, needs more discussion --HB&lt;br /&gt;
* g.region&lt;br /&gt;
** [http://grass.itc.it/pipermail/grassuser/2007-February/038337.html Glynn's notes] - cleaning the print flags and new &amp;lt;tt&amp;gt;print=&amp;lt;/tt&amp;gt; option&lt;br /&gt;
&lt;br /&gt;
== Database ==&lt;br /&gt;
=== Library ===&lt;br /&gt;
&lt;br /&gt;
* establish SQLite as default DBMI driver (DBF is too limited)&lt;br /&gt;
&lt;br /&gt;
=== Modules ===&lt;br /&gt;
&lt;br /&gt;
== Imagery ==&lt;br /&gt;
=== Library ===&lt;br /&gt;
&lt;br /&gt;
Do merge of image libraries:&lt;br /&gt;
&lt;br /&gt;
* A)&lt;br /&gt;
** lib/imagery/: standard lib, in use (i.* except for i.points3, i.rectify3)&lt;br /&gt;
** imagery/i.ortho.photo/libes/: standard lib, in use (i.ortho.photo, photo.*)&lt;br /&gt;
* B)&lt;br /&gt;
** lib/image3/: never finished improvement which integrated the standard lib and the ortho lib. Seems to provide also ortho rectification for satellite data (i.points3, i.rectify3)&lt;br /&gt;
&lt;br /&gt;
=== Modules ===&lt;br /&gt;
&lt;br /&gt;
* merge of i.points, i.vpoints, i.points3&lt;br /&gt;
: drop these altogether? (loss of interactive XDRIVER)&lt;br /&gt;
* merge of i.rectify and i.rectify3&lt;br /&gt;
: maybe depend on gdalwarp C API for this?&lt;br /&gt;
* addition of new resampling algorithms such as bilinear, cubic convolution (take from r.proj?)&lt;br /&gt;
* add other warping methods (maybe thin splines from GDAL?)&lt;br /&gt;
* implement/finish linewise ortho-rectification of satellite data&lt;br /&gt;
* Depreciate tape functions in next major revision of GRASS and create a tape module that accomplishes tape access.&lt;br /&gt;
&lt;br /&gt;
== Raster3D ==&lt;br /&gt;
=== Library ===&lt;br /&gt;
* renaming of all G3D library functions to fulfil the grass coding standard&lt;br /&gt;
* extent/rewrite documentation &lt;br /&gt;
* localisation support (why wait for GRASS 7 ??)&lt;br /&gt;
&lt;br /&gt;
=== Modules ===&lt;br /&gt;
* report and support modules like r3.stats, r3.support&lt;br /&gt;
* voxel -&amp;gt; vector (isosurfaces ...) and vector -&amp;gt; voxel (lines, faces, volumes) conversion modules&lt;br /&gt;
* module for 3d Kriging interpolation based on vector points&lt;br /&gt;
* a GRASS-Python/VTK visualisation/manipulation tool&lt;br /&gt;
&lt;br /&gt;
== Display ==&lt;br /&gt;
&lt;br /&gt;
=== New display architecture ===&lt;br /&gt;
&lt;br /&gt;
''Comments from Glynn Clements (from [http://www.nabble.com/Cairo-monitor-driver-tf4620004.html#a13206009 here]):''&lt;br /&gt;
&lt;br /&gt;
# Eliminating seperate driver processes. Having to extend the protocol for each new operation has been a major drag on development.&lt;br /&gt;
# Use of floating-point for all graphics coordinates. For geographic data, the expected approach will be to set an appropriate transform then use cartographic coordinates. &lt;br /&gt;
# Common architecture for both video and hardcopy output. ps.map should be redundant. &lt;br /&gt;
&lt;br /&gt;
In retrospect, #1 means that we don't really need support for the Windows/MacOSX GUI, just the ability to generate image files.&lt;br /&gt;
&lt;br /&gt;
With X, we could take the shortcut of having d.* commands draw directly into an existing window, but I don't know whether that's possible on other platforms.&lt;br /&gt;
&lt;br /&gt;
OTOH, it might be useful to be able to use the same functions for self-contained GUI programs (e.g. vector digitising) as for d.* commands.&lt;br /&gt;
&lt;br /&gt;
=== Library ===&lt;br /&gt;
* Drop support for interactive xmon modules&lt;br /&gt;
&lt;br /&gt;
=== Modules ===&lt;br /&gt;
* d.font etc.&lt;br /&gt;
** Huidae Cho merged d.text.freetype and d.text into d.text.new; drop them and rename d.text.new into d.text&lt;br /&gt;
** merge d.font and d.font.freetype too&lt;br /&gt;
: now done in 6.3?&lt;br /&gt;
&lt;br /&gt;
* d.vect&lt;br /&gt;
** consolidate parameter names (attrcol, wcolumn, rgb_column)&lt;br /&gt;
: how?&lt;br /&gt;
&lt;br /&gt;
* remove d.ask, d.menu, d.linegraph(?), d.mapgraph, d.text.freetype, d.paint.labels (symlink), d.font.*&lt;br /&gt;
&lt;br /&gt;
* remove d.m&lt;br /&gt;
&lt;br /&gt;
* d.legend, d.barscale, d.text, etc: make at=0,0 origin identical!&lt;br /&gt;
: FWIW, I copied the d.legend at= syntax from d.frame --HB&lt;br /&gt;
&lt;br /&gt;
== Postscript ==&lt;br /&gt;
=== Modules ===&lt;br /&gt;
ps.map&lt;br /&gt;
* remove scale parameter&lt;br /&gt;
: -&amp;gt; from the command line, not the map instruction&lt;br /&gt;
* rename sizecol to sizecolumn (remove the given warning)&lt;br /&gt;
&lt;br /&gt;
See also &amp;quot;New display architecture&amp;quot; comments above.&lt;br /&gt;
&lt;br /&gt;
== Parser ==&lt;br /&gt;
&lt;br /&gt;
* &amp;quot;Add another semantic meaning to the parser system for a type safe enumerated list&amp;quot; (Cedric's words commenting the bug that  [http://intevation.de/rt/webrt?serial_num=2969 '''v.type''' doesn't allow for selecting input and output type in '''GUI''']&lt;br /&gt;
&lt;br /&gt;
* Making GRASS modules be less verbose. Use --verbose flag and GRASS_VERBOSE environment variable. All output (G_message, G_percetn, G_warning) should go to GRASS_LOG file which could be grassdata/location/mapset/.grass.log by default.&lt;br /&gt;
: less verbose: this is well underway in 6.3&lt;br /&gt;
: Note warning and errors are already logged to GIS_ERROR_LOG (see variables.html)&lt;br /&gt;
&lt;br /&gt;
== Init shell and startup ==&lt;br /&gt;
&lt;br /&gt;
* .grassrc6 is not what you expect. It holds the g.gisenv GIS variables, it's not a shell script containing commands like .bashrc is.&lt;br /&gt;
: Suggestion: We should change the name for 7.x. It isn't an &amp;quot;rc&amp;quot; file in the conventional sense.&lt;br /&gt;
:: Suggestion: make it even a $HOME/.grass7/ directory to store settings etc (e.g., from r.li and others)&lt;br /&gt;
&lt;br /&gt;
* It is asked to run GRASS in its own shell to avoid portability issues [http://grass.itc.it/pipermail/grass-dev/2007-August/032607.html 1].&lt;br /&gt;
&lt;br /&gt;
* Eliminate Init.sh. Glynn explains on [http://www.nabble.com/forum/ViewPost.jtp?post=12914361&amp;amp;framed=y GRASS user ML]: &amp;quot;Most of the environment can be set up through an e.g. /etc/env.d/grass script. The database, location and mapset can be set through g.mapset. The only slight subtlety is if you want multiple independent sessions, but that can be done with a fraction of the code in Init.sh.&amp;quot;&lt;br /&gt;
&lt;br /&gt;
* Provide a mechanism (g.access option?) to enable r/w access for users in mapsets they don't own. So that it they don't need to hack lib/gis/mapset_msc.c. Glynn explains on [http://www.nabble.com/forum/ViewPost.jtp?post=12914361&amp;amp;framed=y GRASS user ML]: &amp;quot;AFAICT, that restriction has been unnecessary ever since the lockfile was moved from the user's home directory to the mapset directory.&amp;quot;&lt;br /&gt;
&lt;br /&gt;
== Data management ==&lt;br /&gt;
&lt;br /&gt;
* store vertical units on per-map base, using code from [http://www.gnu.org/software/units/ units] software&lt;br /&gt;
: Support for free form unit meta-data added in 6.3. I don't mind it as a guide, but we shouldn't be limited to units found in ''units''. --HB&lt;br /&gt;
&lt;br /&gt;
* store vertical map datum on per-location base (GDAL/OGR needs the same [http://lists.maptools.org/pipermail/gdal-dev/2005-October/006857.html enhancement])&lt;br /&gt;
: This requires more discussion. I'm not sure it's a good idea to do this location-wide. --HB&lt;br /&gt;
: On a per raster map basis done in 6.3 cvs.&lt;br /&gt;
&lt;br /&gt;
* add versioning for maps (to recover previous map versions)&lt;br /&gt;
: see &amp;quot;v.info -h&amp;quot; ?&lt;br /&gt;
&lt;br /&gt;
== Time series ==&lt;br /&gt;
&lt;br /&gt;
* Implement better [[Time series in GRASS]] support (series of satellite data etc)&lt;br /&gt;
: for example?&lt;br /&gt;
&lt;br /&gt;
== Visualization ==&lt;br /&gt;
&lt;br /&gt;
* better support for faces and kernels in libgis&lt;br /&gt;
: not really Visualization, but....&lt;br /&gt;
&lt;br /&gt;
== CLI ==&lt;br /&gt;
&lt;br /&gt;
* Fix the parameters and flags. Make it a concept. See proposal in GRASS 5 [http://freegis.org/cgi-bin/viewcvs.cgi/grass/documents/parameter_proposal.txt?rev=HEAD&amp;amp;content-type=text/vnd.viewcvs-markup documents/parameter_proposal.txt]&lt;br /&gt;
&lt;br /&gt;
* Get rid of 'quiet/verbose' flags, preparation in GRASS 6, e.g.:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
    /* please, remove before GRASS 7 released */&lt;br /&gt;
    if(q-&amp;gt;answer) {&lt;br /&gt;
        putenv(&amp;quot;GRASS_VERBOSE=0&amp;quot;);&lt;br /&gt;
        G_warning(_(&amp;quot;The '-q' flag is superseded and will be removed &amp;quot;&lt;br /&gt;
            &amp;quot;in future. Please use '--quiet' instead&amp;quot;));&lt;br /&gt;
    }&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== GUI ==&lt;br /&gt;
&lt;br /&gt;
* Multiplatform&lt;br /&gt;
* Fast, minimalist, number of windows reduced&lt;br /&gt;
* Manageable also from command line via d.* modules&lt;br /&gt;
* Facilitating easy development of custom GUI application based on GRASS&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* &amp;amp;rarr; [[WxPython-based GUI for GRASS]]&lt;br /&gt;
&lt;br /&gt;
== Conceptual changes ==&lt;br /&gt;
&lt;br /&gt;
* File organization in binaries:&lt;br /&gt;
** the grass etc dir is a mess... module should maintain arch-deps and arch-indep things in different paths -- &amp;lt;cite&amp;gt; frankie at #grass irc&amp;lt;/cite&amp;gt;&lt;br /&gt;
** it's basically a FHS violation, i dunno if it is reported by lintian, anyway /usr/lib/grass should be used for arch-deps data, not for mixed stuff -- &amp;lt;cite&amp;gt; frankie at #grass irc&amp;lt;/cite&amp;gt;&lt;br /&gt;
* Creating $HOME/.grass7 directory for&lt;br /&gt;
** Custom fonts&lt;br /&gt;
** r.li and other modules temp. files&lt;br /&gt;
** GEM addons installation&lt;br /&gt;
** Default path for custom scripts&lt;br /&gt;
** Custom symbols and EPS fill patterns&lt;br /&gt;
** Custom color maps&lt;br /&gt;
** Add here new item&lt;br /&gt;
&lt;br /&gt;
== User Wishes ==&lt;br /&gt;
&lt;br /&gt;
''This section is not really development related...''&lt;br /&gt;
* Create 3D animation w nviz showing GRASS 3D coolness. [[User:MarisN|MarisN]] 12:00, 4 August 2006 (CEST)&lt;br /&gt;
* here are some examples to get inspired (apparently that's already possible):&lt;br /&gt;
** [http://skagit.meas.ncsu.edu/~helena/publwork/grasskey02/grass02talk10.html dynamic surfaces and volumes]&lt;br /&gt;
**[http://skagit.meas.ncsu.edu/~helena/wrriwork/cenntenial/water01dsmall.gif some water]&lt;br /&gt;
**[http://skagit.meas.ncsu.edu/~helena/wrriwork/balsam/fanimwalk.gif particles]&lt;br /&gt;
** [http://www.fhpv.unipo.sk/kagerr/pracovnici/hofierka/pv_results.html solar radiation and energy]&lt;br /&gt;
* Convince the users to use ParaView [http://www.paraview.org] for sophisticated animations --[[User:Huhabla|huhabla]] 20:47, 14 August 2006 (CEST)&lt;br /&gt;
**(Add support for Paraview in GDAL/OGR or add GDAL/OGR support in ParaView to read directly data from GRASS) see diskussion&lt;br /&gt;
* Or use [http://www.llnl.gov/visit/ VisIt software], it should be able to read GRASS maps directly via GDAL&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Development]]&lt;br /&gt;
[[Category:Release Roadmap]]&lt;/div&gt;</summary>
		<author><name>⚠️EricPatton</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=Updating_GRASS_Documentation&amp;diff=5602</id>
		<title>Updating GRASS Documentation</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=Updating_GRASS_Documentation&amp;diff=5602"/>
		<updated>2007-12-17T18:39:36Z</updated>

		<summary type="html">&lt;p&gt;⚠️EricPatton: /* How-to for Updating GRASS Manual Pages */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= How-to for Updating GRASS Manual Pages =&lt;br /&gt;
&lt;br /&gt;
* [http://trac.osgeo.org/grass/browser/grass/trunk/doc/html_documentation.txt doc/html_documentation.txt] from the GRASS source code&lt;br /&gt;
&lt;br /&gt;
== Overview ==&lt;br /&gt;
&amp;lt;!-- from the SUBMITTING file, rule 23 --&amp;gt;&lt;br /&gt;
Module manual page:&lt;br /&gt;
&lt;br /&gt;
Place the documentation in HTML format into 'description.html'.&lt;br /&gt;
The easiest way to do this is to study an existing HTML page&lt;br /&gt;
(to get the page style, e.g. vector/v.to.db/description.html).&lt;br /&gt;
With a few exceptions header and footer are NOT allowed.&lt;br /&gt;
You can add figures (PNG format), the figure name prefix should be the &lt;br /&gt;
module name. See raster/r.terraflow/description.html for an example.&lt;br /&gt;
&lt;br /&gt;
Note that the parameter information is auto-generated upon&lt;br /&gt;
compilation. This is done by running module in a virtual session&lt;br /&gt;
after compilation (see the output of 'make'). To subsequently&lt;br /&gt;
verify the final HTML page, check the resulting HTML pages which&lt;br /&gt;
will be stored with the name of the module.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The online WWW man pages will be updated every Saturday by SVN.&lt;br /&gt;
&lt;br /&gt;
== Instructions ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This page will provide general step-by-step instructions for updating and improving GRASS manual pages. Feel free to update and improve this page as well! See also [http://trac.osgeo.org/grass/browser/grass/trunk/SUBMITTING_DOCS SUBMITTING_DOCS] in the source code.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
As an example, the vector program v.in.ascii will be used to illustrate the steps required to update its manual page. These steps can then be generalized for your case.&lt;br /&gt;
&lt;br /&gt;
== Getting the latest source ==&lt;br /&gt;
&lt;br /&gt;
* To begin, you must obtain the latest GRASS source code from the Subversion repositories. Detailed instructions on how to do so can be found [http://trac.osgeo.org/grass/wiki/DownloadSource here.]&lt;br /&gt;
* Once you have downloaded the SVN source code, open a terminal and change directory to where the source for a specific GRASS module is located - in this example, something like:&lt;br /&gt;
 cd /your_svn_directory/grass6/vector/v.in.ascii&lt;br /&gt;
&lt;br /&gt;
* Open a text editor and make your edits to description.html. Do not use a &amp;quot;WYSYWIG&amp;quot; HTML editor on those files, but either a normal text editor or something which is designed for editing HTML ''source'' (e.g. [X]Emacs' html-mode or psgml-mode). Save your edits by overwriting the original description.html.&lt;br /&gt;
&lt;br /&gt;
== Help page sections ==&lt;br /&gt;
&lt;br /&gt;
Please use the following section list as a ''guideline''.&lt;br /&gt;
The intent is to promote a unified user experience, not to limit the flow of information. If exceptions are needed, please use them sparingly.&lt;br /&gt;
Minor sections (&amp;amp;lt;H3&amp;amp;gt;, etc) may be free-form, as required.&lt;br /&gt;
&lt;br /&gt;
=== Auto-generated ===&lt;br /&gt;
Modules using the parser interface will have these sections automatically generated from '&amp;lt;tt&amp;gt;g.module&amp;amp;nbsp;--html-description&amp;lt;/tt&amp;gt;'&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;H2&amp;gt;NAME&amp;lt;/H2&amp;gt;&lt;br /&gt;
&amp;lt;H2&amp;gt;KEYWORDS&amp;lt;/H2&amp;gt;&lt;br /&gt;
&amp;lt;H2&amp;gt;SYNOPSIS&amp;lt;/H2&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Found in description.html ===&lt;br /&gt;
A number of major sections should be present in each help page.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
* = Required&lt;br /&gt;
! = Suggested&lt;br /&gt;
. = Optional&lt;br /&gt;
&lt;br /&gt;
In recommended order&lt;br /&gt;
--------------------&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;H2&amp;gt;DESCRIPTION&amp;lt;/H2&amp;gt;&lt;br /&gt;
! &amp;lt;H2&amp;gt;NOTE&amp;lt;/H2&amp;gt;, &amp;lt;H2&amp;gt;NOTES&amp;lt;/H2&amp;gt;&lt;br /&gt;
! &amp;lt;H2&amp;gt;EXAMPLE&amp;lt;/H2&amp;gt;, &amp;lt;H2&amp;gt;EXAMPLES&amp;lt;/H2&amp;gt;&lt;br /&gt;
. &amp;lt;H2&amp;gt;TODO&amp;lt;/H2&amp;gt;&lt;br /&gt;
. &amp;lt;H2&amp;gt;BUGS&amp;lt;/H2&amp;gt;&lt;br /&gt;
. &amp;lt;H2&amp;gt;REFERENCE&amp;lt;/H2&amp;gt;, &amp;lt;H2&amp;gt;REFERENCES&amp;lt;/H2&amp;gt;&lt;br /&gt;
* &amp;lt;H2&amp;gt;SEE ALSO&amp;lt;/H2&amp;gt;&lt;br /&gt;
* &amp;lt;H2&amp;gt;AUTHOR&amp;lt;/H2&amp;gt;, &amp;lt;H2&amp;gt;AUTHORS&amp;lt;/H2&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Images ==&lt;br /&gt;
&lt;br /&gt;
* Images can also be inserted in the html help page. See [http://grass.itc.it/grass63/manuals/html63_user/v.voronoi.html v.voronoi] for an example. Note that images won't show up in the Grass ''man'' pages (which are generated from the HTML), so they shouldn't be considered a substitute for an adequate textual description. Be sure to also send the image (preferably png format) along with your documentation patch.&lt;br /&gt;
&lt;br /&gt;
PNG files are best for figures with solid chunks of a single color. They can get rather large for imagery. In those cases JPEGs are a better choice. In general JPEG is a lossy format so the image quality will not be as good.&lt;br /&gt;
&lt;br /&gt;
To help keep the source distribution size small, try and keep the images small and the files under 50kb or so. Save PNGs at a compression setting of &amp;quot;9&amp;quot; with a minimal color pallet, you can also use tools like&lt;br /&gt;
&amp;lt;tt&amp;gt;pngcrush&amp;lt;/tt&amp;gt; to compress them further.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Examples ==&lt;br /&gt;
&lt;br /&gt;
For non trivial modules please provide an example of the command line usage. It is good to have this double as a mini-tutorial, so please use one of the sample datasets (Spearfish or the new North Carolina one) or common dataset such as NASA's WMS or SRTM data files.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Examples should be coded like this:&lt;br /&gt;
&lt;br /&gt;
  &amp;amp;lt;div class=&amp;quot;code&amp;quot;&amp;amp;gt;&amp;amp;lt;pre&amp;amp;gt;&lt;br /&gt;
  v.to.db map=soils type=area option=area col=area_size unit=h&lt;br /&gt;
  &amp;amp;lt;/pre&amp;amp;gt;&amp;amp;lt;/div&amp;amp;gt;&lt;br /&gt;
&lt;br /&gt;
== HTML codes ==&lt;br /&gt;
&lt;br /&gt;
The g.html2man tool is used to generate man pages from the HTML help files.&lt;br /&gt;
&lt;br /&gt;
* The following html codes are understood to some extent by g.html2man (brackets removed): A, B, BLINK, BODY, BR, CODE, DD, DL, DT, EM, H2, H3, H4, HEAD, HEADER, HR, I, IMG, LI, OL, P, PRE, SUP, TABLE, TD, TH, TITLE, TR, UL.&lt;br /&gt;
&lt;br /&gt;
* Others may be added to g.html2man as required.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Creating and submitting a patch ==&lt;br /&gt;
&lt;br /&gt;
* See the [[Patches]] wiki page&lt;br /&gt;
&lt;br /&gt;
== Translations ==&lt;br /&gt;
&lt;br /&gt;
Currently there is no framework for translating the help pages.&lt;br /&gt;
&lt;br /&gt;
Idea: use an online translator such as AltaVista's Babelfish service or Google Translate.&lt;br /&gt;
&lt;br /&gt;
: The top part of the page (generated by `g.module --html-description`) is translated by the $LANG variable and &amp;lt;grass/glocale.h&amp;gt;, so we should not be attempting to automatically translate the option and modules names. The idea for a two part translation is to make a modified version of tools/mkhtml.sh which (if ./config'd --with-nls) loops through major languages and creates html pages like $GISBASE/docs/html/de/, $GISBASE/docs/html/es/,... but instead of just pasting the english description.html files to the bottom have it save those as g.module_descr_en.html in a common dir.&lt;br /&gt;
: The translated help pages (generated with mkhtml_i18n.sh) would contain a lower frame which calls an online translation of the g.module_descr_en.html page from e.g. ibiblio.org/grass63/html_docs/en_descr/g.module_descr_en.html with the appropriate &amp;quot;lp=en_de&amp;quot; setting in the bablefish URL.&lt;br /&gt;
: ?&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
example of live whole-page translations for GRASS 6.3 help pages:&lt;br /&gt;
* Chinese- Simplified [http://babelfish.altavista.com/babelfish/trurl_load?lp=en_zh&amp;amp;url=http%3A%2F%2Fgrass.ibiblio.org%2Fgrass63%2Fmanuals%2Fhtml63_user%2Findex.html AltaVista] - [http://translate.google.com/translate?u=http%3A%2F%2Fgrass.fbk.eu%2Fgrass63%2Fmanuals%2Fhtml63_user%2Findex.html&amp;amp;langpair=en%7Czh-CN&amp;amp;hl=en&amp;amp;ie=UTF8 Google]&lt;br /&gt;
* Chinese- Traditional [http://babelfish.altavista.com/babelfish/trurl_load?lp=en_zt&amp;amp;url=http%3A%2F%2Fgrass.ibiblio.org%2Fgrass63%2Fmanuals%2Fhtml63_user%2Findex.html AltaVista] - [http://translate.google.com/translate?u=http%3A%2F%2Fgrass.fbk.eu%2Fgrass63%2Fmanuals%2Fhtml63_user%2Findex.html&amp;amp;langpair=en%7Czh-TW&amp;amp;hl=en&amp;amp;ie=UTF8 Google]&lt;br /&gt;
* Dutch [http://babelfish.altavista.com/babelfish/trurl_load?lp=en_nl&amp;amp;url=http%3A%2F%2Fgrass.ibiblio.org%2Fgrass63%2Fmanuals%2Fhtml63_user%2Findex.html AltaVista] - [http://translate.google.com/translate?u=http%3A%2F%2Fgrass.fbk.eu%2Fgrass63%2Fmanuals%2Fhtml63_user%2Findex.html&amp;amp;langpair=en%7Cnl&amp;amp;hl=en&amp;amp;ie=UTF8 Google]&lt;br /&gt;
* French [http://babelfish.altavista.com/babelfish/trurl_load?lp=en_fr&amp;amp;url=http%3A%2F%2Fgrass.ibiblio.org%2Fgrass63%2Fmanuals%2Fhtml63_user%2Findex.html AltaVista] - [http://translate.google.com/translate?u=http%3A%2F%2Fgrass.fbk.eu%2Fgrass63%2Fmanuals%2Fhtml63_user%2Findex.html&amp;amp;langpair=en%7Cfr&amp;amp;hl=en&amp;amp;ie=UTF8 Google]&lt;br /&gt;
* German [http://babelfish.altavista.com/babelfish/trurl_load?lp=en_de&amp;amp;url=http%3A%2F%2Fgrass.ibiblio.org%2Fgrass63%2Fmanuals%2Fhtml63_user%2Findex.html AltaVista] - [http://translate.google.com/translate?u=http%3A%2F%2Fgrass.fbk.eu%2Fgrass63%2Fmanuals%2Fhtml63_user%2Findex.html&amp;amp;langpair=en%7Cde&amp;amp;hl=en&amp;amp;ie=UTF8 Google]&lt;br /&gt;
* Greek [http://babelfish.altavista.com/babelfish/trurl_load?lp=en_el&amp;amp;url=http%3A%2F%2Fgrass.ibiblio.org%2Fgrass63%2Fmanuals%2Fhtml63_user%2Findex.html AltaVista] - [http://translate.google.com/translate?u=http%3A%2F%2Fgrass.fbk.eu%2Fgrass63%2Fmanuals%2Fhtml63_user%2Findex.html&amp;amp;langpair=en%7Cel&amp;amp;hl=en&amp;amp;ie=UTF8 Google]&lt;br /&gt;
* Italian [http://babelfish.altavista.com/babelfish/trurl_load?lp=en_it&amp;amp;url=http%3A%2F%2Fgrass.ibiblio.org%2Fgrass63%2Fmanuals%2Fhtml63_user%2Findex.html AltaVista] - [http://translate.google.com/translate?u=http%3A%2F%2Fgrass.fbk.eu%2Fgrass63%2Fmanuals%2Fhtml63_user%2Findex.html&amp;amp;langpair=en%7Cit&amp;amp;hl=en&amp;amp;ie=UTF8 Google]&lt;br /&gt;
* Japanese [http://babelfish.altavista.com/babelfish/trurl_load?lp=en_ja&amp;amp;url=http%3A%2F%2Fgrass.ibiblio.org%2Fgrass63%2Fmanuals%2Fhtml63_user%2Findex.html AltaVista] - [http://translate.google.com/translate?u=http%3A%2F%2Fgrass.fbk.eu%2Fgrass63%2Fmanuals%2Fhtml63_user%2Findex.html&amp;amp;langpair=en%7Cja&amp;amp;hl=en&amp;amp;ie=UTF8 Google]&lt;br /&gt;
* Korean [http://babelfish.altavista.com/babelfish/trurl_load?lp=en_ko&amp;amp;url=http%3A%2F%2Fgrass.ibiblio.org%2Fgrass63%2Fmanuals%2Fhtml63_user%2Findex.html AltaVista] - [http://translate.google.com/translate?u=http%3A%2F%2Fgrass.fbk.eu%2Fgrass63%2Fmanuals%2Fhtml63_user%2Findex.html&amp;amp;langpair=en%7Cko&amp;amp;hl=en&amp;amp;ie=UTF8 Google]&lt;br /&gt;
* Portuguese [http://babelfish.altavista.com/babelfish/trurl_load?lp=en_pt&amp;amp;url=http%3A%2F%2Fgrass.ibiblio.org%2Fgrass63%2Fmanuals%2Fhtml63_user%2Findex.html AltaVista] - [http://translate.google.com/translate?u=http%3A%2F%2Fgrass.fbk.eu%2Fgrass63%2Fmanuals%2Fhtml63_user%2Findex.html&amp;amp;langpair=en%7Cpt&amp;amp;hl=en&amp;amp;ie=UTF8 Google]&lt;br /&gt;
* Russian [http://babelfish.altavista.com/babelfish/trurl_load?lp=en_ru&amp;amp;url=http%3A%2F%2Fgrass.ibiblio.org%2Fgrass63%2Fmanuals%2Fhtml63_user%2Findex.html AltaVista] - [http://translate.google.com/translate?u=http%3A%2F%2Fgrass.fbk.eu%2Fgrass63%2Fmanuals%2Fhtml63_user%2Findex.html&amp;amp;langpair=en%7Cru&amp;amp;hl=en&amp;amp;ie=UTF8 Google]&lt;br /&gt;
* Spanish [http://babelfish.altavista.com/babelfish/trurl_load?lp=en_es&amp;amp;url=http%3A%2F%2Fgrass.ibiblio.org%2Fgrass63%2Fmanuals%2Fhtml63_user%2Findex.html AltaVista] - [http://translate.google.com/translate?u=http%3A%2F%2Fgrass.fbk.eu%2Fgrass63%2Fmanuals%2Fhtml63_user%2Findex.html&amp;amp;langpair=en%7Ces&amp;amp;hl=en&amp;amp;ie=UTF8 Google]&lt;br /&gt;
&lt;br /&gt;
== See also ==&lt;br /&gt;
&lt;br /&gt;
* Job offer [[Project_jobs#Documentation_manager_.28open.29|Documentation manager]]&lt;br /&gt;
&lt;br /&gt;
* [[Development#Documentation|Doxygen generated help]] from the source code for the [http://grass.itc.it/devel/index.php#prog Programmers' Manual].&lt;/div&gt;</summary>
		<author><name>⚠️EricPatton</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=Updating_GRASS_Documentation&amp;diff=5601</id>
		<title>Updating GRASS Documentation</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=Updating_GRASS_Documentation&amp;diff=5601"/>
		<updated>2007-12-17T18:37:33Z</updated>

		<summary type="html">&lt;p&gt;⚠️EricPatton: /* Instructions */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= How-to for Updating GRASS Manual Pages =&lt;br /&gt;
&lt;br /&gt;
* [http://freegis.org/cgi-bin/viewcvs.cgi/*checkout*/grass6/doc/html_documentation.txt?rev=HEAD&amp;amp;content-type=text/plain doc/html_documentation.txt] from the GRASS source code&lt;br /&gt;
&lt;br /&gt;
== Overview ==&lt;br /&gt;
&amp;lt;!-- from the SUBMITTING file, rule 23 --&amp;gt;&lt;br /&gt;
Module manual page:&lt;br /&gt;
&lt;br /&gt;
Place the documentation in HTML format into 'description.html'.&lt;br /&gt;
The easiest way to do this is to study an existing HTML page&lt;br /&gt;
(to get the page style, e.g. vector/v.to.db/description.html).&lt;br /&gt;
With a few exceptions header and footer are NOT allowed.&lt;br /&gt;
You can add figures (PNG format), the figure name prefix should be the &lt;br /&gt;
module name. See raster/r.terraflow/description.html for an example.&lt;br /&gt;
&lt;br /&gt;
Note that the parameter information is auto-generated upon&lt;br /&gt;
compilation. This is done by running module in a virtual session&lt;br /&gt;
after compilation (see the output of 'make'). To subsequently&lt;br /&gt;
verify the final HTML page, check the resulting HTML pages which&lt;br /&gt;
will be stored with the name of the module.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The online WWW man pages will be updated every Saturday by SVN.&lt;br /&gt;
&lt;br /&gt;
== Instructions ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This page will provide general step-by-step instructions for updating and improving GRASS manual pages. Feel free to update and improve this page as well! See also [http://trac.osgeo.org/grass/browser/grass/trunk/SUBMITTING_DOCS SUBMITTING_DOCS] in the source code.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
As an example, the vector program v.in.ascii will be used to illustrate the steps required to update its manual page. These steps can then be generalized for your case.&lt;br /&gt;
&lt;br /&gt;
== Getting the latest source ==&lt;br /&gt;
&lt;br /&gt;
* To begin, you must obtain the latest GRASS source code from the Subversion repositories. Detailed instructions on how to do so can be found [http://trac.osgeo.org/grass/wiki/DownloadSource here.]&lt;br /&gt;
* Once you have downloaded the SVN source code, open a terminal and change directory to where the source for a specific GRASS module is located - in this example, something like:&lt;br /&gt;
 cd /your_svn_directory/grass6/vector/v.in.ascii&lt;br /&gt;
&lt;br /&gt;
* Open a text editor and make your edits to description.html. Do not use a &amp;quot;WYSYWIG&amp;quot; HTML editor on those files, but either a normal text editor or something which is designed for editing HTML ''source'' (e.g. [X]Emacs' html-mode or psgml-mode). Save your edits by overwriting the original description.html.&lt;br /&gt;
&lt;br /&gt;
== Help page sections ==&lt;br /&gt;
&lt;br /&gt;
Please use the following section list as a ''guideline''.&lt;br /&gt;
The intent is to promote a unified user experience, not to limit the flow of information. If exceptions are needed, please use them sparingly.&lt;br /&gt;
Minor sections (&amp;amp;lt;H3&amp;amp;gt;, etc) may be free-form, as required.&lt;br /&gt;
&lt;br /&gt;
=== Auto-generated ===&lt;br /&gt;
Modules using the parser interface will have these sections automatically generated from '&amp;lt;tt&amp;gt;g.module&amp;amp;nbsp;--html-description&amp;lt;/tt&amp;gt;'&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;H2&amp;gt;NAME&amp;lt;/H2&amp;gt;&lt;br /&gt;
&amp;lt;H2&amp;gt;KEYWORDS&amp;lt;/H2&amp;gt;&lt;br /&gt;
&amp;lt;H2&amp;gt;SYNOPSIS&amp;lt;/H2&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Found in description.html ===&lt;br /&gt;
A number of major sections should be present in each help page.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
* = Required&lt;br /&gt;
! = Suggested&lt;br /&gt;
. = Optional&lt;br /&gt;
&lt;br /&gt;
In recommended order&lt;br /&gt;
--------------------&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;H2&amp;gt;DESCRIPTION&amp;lt;/H2&amp;gt;&lt;br /&gt;
! &amp;lt;H2&amp;gt;NOTE&amp;lt;/H2&amp;gt;, &amp;lt;H2&amp;gt;NOTES&amp;lt;/H2&amp;gt;&lt;br /&gt;
! &amp;lt;H2&amp;gt;EXAMPLE&amp;lt;/H2&amp;gt;, &amp;lt;H2&amp;gt;EXAMPLES&amp;lt;/H2&amp;gt;&lt;br /&gt;
. &amp;lt;H2&amp;gt;TODO&amp;lt;/H2&amp;gt;&lt;br /&gt;
. &amp;lt;H2&amp;gt;BUGS&amp;lt;/H2&amp;gt;&lt;br /&gt;
. &amp;lt;H2&amp;gt;REFERENCE&amp;lt;/H2&amp;gt;, &amp;lt;H2&amp;gt;REFERENCES&amp;lt;/H2&amp;gt;&lt;br /&gt;
* &amp;lt;H2&amp;gt;SEE ALSO&amp;lt;/H2&amp;gt;&lt;br /&gt;
* &amp;lt;H2&amp;gt;AUTHOR&amp;lt;/H2&amp;gt;, &amp;lt;H2&amp;gt;AUTHORS&amp;lt;/H2&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Images ==&lt;br /&gt;
&lt;br /&gt;
* Images can also be inserted in the html help page. See [http://grass.itc.it/grass63/manuals/html63_user/v.voronoi.html v.voronoi] for an example. Note that images won't show up in the Grass ''man'' pages (which are generated from the HTML), so they shouldn't be considered a substitute for an adequate textual description. Be sure to also send the image (preferably png format) along with your documentation patch.&lt;br /&gt;
&lt;br /&gt;
PNG files are best for figures with solid chunks of a single color. They can get rather large for imagery. In those cases JPEGs are a better choice. In general JPEG is a lossy format so the image quality will not be as good.&lt;br /&gt;
&lt;br /&gt;
To help keep the source distribution size small, try and keep the images small and the files under 50kb or so. Save PNGs at a compression setting of &amp;quot;9&amp;quot; with a minimal color pallet, you can also use tools like&lt;br /&gt;
&amp;lt;tt&amp;gt;pngcrush&amp;lt;/tt&amp;gt; to compress them further.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Examples ==&lt;br /&gt;
&lt;br /&gt;
For non trivial modules please provide an example of the command line usage. It is good to have this double as a mini-tutorial, so please use one of the sample datasets (Spearfish or the new North Carolina one) or common dataset such as NASA's WMS or SRTM data files.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Examples should be coded like this:&lt;br /&gt;
&lt;br /&gt;
  &amp;amp;lt;div class=&amp;quot;code&amp;quot;&amp;amp;gt;&amp;amp;lt;pre&amp;amp;gt;&lt;br /&gt;
  v.to.db map=soils type=area option=area col=area_size unit=h&lt;br /&gt;
  &amp;amp;lt;/pre&amp;amp;gt;&amp;amp;lt;/div&amp;amp;gt;&lt;br /&gt;
&lt;br /&gt;
== HTML codes ==&lt;br /&gt;
&lt;br /&gt;
The g.html2man tool is used to generate man pages from the HTML help files.&lt;br /&gt;
&lt;br /&gt;
* The following html codes are understood to some extent by g.html2man (brackets removed): A, B, BLINK, BODY, BR, CODE, DD, DL, DT, EM, H2, H3, H4, HEAD, HEADER, HR, I, IMG, LI, OL, P, PRE, SUP, TABLE, TD, TH, TITLE, TR, UL.&lt;br /&gt;
&lt;br /&gt;
* Others may be added to g.html2man as required.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Creating and submitting a patch ==&lt;br /&gt;
&lt;br /&gt;
* See the [[Patches]] wiki page&lt;br /&gt;
&lt;br /&gt;
== Translations ==&lt;br /&gt;
&lt;br /&gt;
Currently there is no framework for translating the help pages.&lt;br /&gt;
&lt;br /&gt;
Idea: use an online translator such as AltaVista's Babelfish service or Google Translate.&lt;br /&gt;
&lt;br /&gt;
: The top part of the page (generated by `g.module --html-description`) is translated by the $LANG variable and &amp;lt;grass/glocale.h&amp;gt;, so we should not be attempting to automatically translate the option and modules names. The idea for a two part translation is to make a modified version of tools/mkhtml.sh which (if ./config'd --with-nls) loops through major languages and creates html pages like $GISBASE/docs/html/de/, $GISBASE/docs/html/es/,... but instead of just pasting the english description.html files to the bottom have it save those as g.module_descr_en.html in a common dir.&lt;br /&gt;
: The translated help pages (generated with mkhtml_i18n.sh) would contain a lower frame which calls an online translation of the g.module_descr_en.html page from e.g. ibiblio.org/grass63/html_docs/en_descr/g.module_descr_en.html with the appropriate &amp;quot;lp=en_de&amp;quot; setting in the bablefish URL.&lt;br /&gt;
: ?&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
example of live whole-page translations for GRASS 6.3 help pages:&lt;br /&gt;
* Chinese- Simplified [http://babelfish.altavista.com/babelfish/trurl_load?lp=en_zh&amp;amp;url=http%3A%2F%2Fgrass.ibiblio.org%2Fgrass63%2Fmanuals%2Fhtml63_user%2Findex.html AltaVista] - [http://translate.google.com/translate?u=http%3A%2F%2Fgrass.fbk.eu%2Fgrass63%2Fmanuals%2Fhtml63_user%2Findex.html&amp;amp;langpair=en%7Czh-CN&amp;amp;hl=en&amp;amp;ie=UTF8 Google]&lt;br /&gt;
* Chinese- Traditional [http://babelfish.altavista.com/babelfish/trurl_load?lp=en_zt&amp;amp;url=http%3A%2F%2Fgrass.ibiblio.org%2Fgrass63%2Fmanuals%2Fhtml63_user%2Findex.html AltaVista] - [http://translate.google.com/translate?u=http%3A%2F%2Fgrass.fbk.eu%2Fgrass63%2Fmanuals%2Fhtml63_user%2Findex.html&amp;amp;langpair=en%7Czh-TW&amp;amp;hl=en&amp;amp;ie=UTF8 Google]&lt;br /&gt;
* Dutch [http://babelfish.altavista.com/babelfish/trurl_load?lp=en_nl&amp;amp;url=http%3A%2F%2Fgrass.ibiblio.org%2Fgrass63%2Fmanuals%2Fhtml63_user%2Findex.html AltaVista] - [http://translate.google.com/translate?u=http%3A%2F%2Fgrass.fbk.eu%2Fgrass63%2Fmanuals%2Fhtml63_user%2Findex.html&amp;amp;langpair=en%7Cnl&amp;amp;hl=en&amp;amp;ie=UTF8 Google]&lt;br /&gt;
* French [http://babelfish.altavista.com/babelfish/trurl_load?lp=en_fr&amp;amp;url=http%3A%2F%2Fgrass.ibiblio.org%2Fgrass63%2Fmanuals%2Fhtml63_user%2Findex.html AltaVista] - [http://translate.google.com/translate?u=http%3A%2F%2Fgrass.fbk.eu%2Fgrass63%2Fmanuals%2Fhtml63_user%2Findex.html&amp;amp;langpair=en%7Cfr&amp;amp;hl=en&amp;amp;ie=UTF8 Google]&lt;br /&gt;
* German [http://babelfish.altavista.com/babelfish/trurl_load?lp=en_de&amp;amp;url=http%3A%2F%2Fgrass.ibiblio.org%2Fgrass63%2Fmanuals%2Fhtml63_user%2Findex.html AltaVista] - [http://translate.google.com/translate?u=http%3A%2F%2Fgrass.fbk.eu%2Fgrass63%2Fmanuals%2Fhtml63_user%2Findex.html&amp;amp;langpair=en%7Cde&amp;amp;hl=en&amp;amp;ie=UTF8 Google]&lt;br /&gt;
* Greek [http://babelfish.altavista.com/babelfish/trurl_load?lp=en_el&amp;amp;url=http%3A%2F%2Fgrass.ibiblio.org%2Fgrass63%2Fmanuals%2Fhtml63_user%2Findex.html AltaVista] - [http://translate.google.com/translate?u=http%3A%2F%2Fgrass.fbk.eu%2Fgrass63%2Fmanuals%2Fhtml63_user%2Findex.html&amp;amp;langpair=en%7Cel&amp;amp;hl=en&amp;amp;ie=UTF8 Google]&lt;br /&gt;
* Italian [http://babelfish.altavista.com/babelfish/trurl_load?lp=en_it&amp;amp;url=http%3A%2F%2Fgrass.ibiblio.org%2Fgrass63%2Fmanuals%2Fhtml63_user%2Findex.html AltaVista] - [http://translate.google.com/translate?u=http%3A%2F%2Fgrass.fbk.eu%2Fgrass63%2Fmanuals%2Fhtml63_user%2Findex.html&amp;amp;langpair=en%7Cit&amp;amp;hl=en&amp;amp;ie=UTF8 Google]&lt;br /&gt;
* Japanese [http://babelfish.altavista.com/babelfish/trurl_load?lp=en_ja&amp;amp;url=http%3A%2F%2Fgrass.ibiblio.org%2Fgrass63%2Fmanuals%2Fhtml63_user%2Findex.html AltaVista] - [http://translate.google.com/translate?u=http%3A%2F%2Fgrass.fbk.eu%2Fgrass63%2Fmanuals%2Fhtml63_user%2Findex.html&amp;amp;langpair=en%7Cja&amp;amp;hl=en&amp;amp;ie=UTF8 Google]&lt;br /&gt;
* Korean [http://babelfish.altavista.com/babelfish/trurl_load?lp=en_ko&amp;amp;url=http%3A%2F%2Fgrass.ibiblio.org%2Fgrass63%2Fmanuals%2Fhtml63_user%2Findex.html AltaVista] - [http://translate.google.com/translate?u=http%3A%2F%2Fgrass.fbk.eu%2Fgrass63%2Fmanuals%2Fhtml63_user%2Findex.html&amp;amp;langpair=en%7Cko&amp;amp;hl=en&amp;amp;ie=UTF8 Google]&lt;br /&gt;
* Portuguese [http://babelfish.altavista.com/babelfish/trurl_load?lp=en_pt&amp;amp;url=http%3A%2F%2Fgrass.ibiblio.org%2Fgrass63%2Fmanuals%2Fhtml63_user%2Findex.html AltaVista] - [http://translate.google.com/translate?u=http%3A%2F%2Fgrass.fbk.eu%2Fgrass63%2Fmanuals%2Fhtml63_user%2Findex.html&amp;amp;langpair=en%7Cpt&amp;amp;hl=en&amp;amp;ie=UTF8 Google]&lt;br /&gt;
* Russian [http://babelfish.altavista.com/babelfish/trurl_load?lp=en_ru&amp;amp;url=http%3A%2F%2Fgrass.ibiblio.org%2Fgrass63%2Fmanuals%2Fhtml63_user%2Findex.html AltaVista] - [http://translate.google.com/translate?u=http%3A%2F%2Fgrass.fbk.eu%2Fgrass63%2Fmanuals%2Fhtml63_user%2Findex.html&amp;amp;langpair=en%7Cru&amp;amp;hl=en&amp;amp;ie=UTF8 Google]&lt;br /&gt;
* Spanish [http://babelfish.altavista.com/babelfish/trurl_load?lp=en_es&amp;amp;url=http%3A%2F%2Fgrass.ibiblio.org%2Fgrass63%2Fmanuals%2Fhtml63_user%2Findex.html AltaVista] - [http://translate.google.com/translate?u=http%3A%2F%2Fgrass.fbk.eu%2Fgrass63%2Fmanuals%2Fhtml63_user%2Findex.html&amp;amp;langpair=en%7Ces&amp;amp;hl=en&amp;amp;ie=UTF8 Google]&lt;br /&gt;
&lt;br /&gt;
== See also ==&lt;br /&gt;
&lt;br /&gt;
* Job offer [[Project_jobs#Documentation_manager_.28open.29|Documentation manager]]&lt;br /&gt;
&lt;br /&gt;
* [[Development#Documentation|Doxygen generated help]] from the source code for the [http://grass.itc.it/devel/index.php#prog Programmers' Manual].&lt;/div&gt;</summary>
		<author><name>⚠️EricPatton</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=Updating_GRASS_Documentation&amp;diff=5600</id>
		<title>Updating GRASS Documentation</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=Updating_GRASS_Documentation&amp;diff=5600"/>
		<updated>2007-12-17T18:29:16Z</updated>

		<summary type="html">&lt;p&gt;⚠️EricPatton: CVS to SVN&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= How-to for Updating GRASS Manual Pages =&lt;br /&gt;
&lt;br /&gt;
* [http://freegis.org/cgi-bin/viewcvs.cgi/*checkout*/grass6/doc/html_documentation.txt?rev=HEAD&amp;amp;content-type=text/plain doc/html_documentation.txt] from the GRASS source code&lt;br /&gt;
&lt;br /&gt;
== Overview ==&lt;br /&gt;
&amp;lt;!-- from the SUBMITTING file, rule 23 --&amp;gt;&lt;br /&gt;
Module manual page:&lt;br /&gt;
&lt;br /&gt;
Place the documentation in HTML format into 'description.html'.&lt;br /&gt;
The easiest way to do this is to study an existing HTML page&lt;br /&gt;
(to get the page style, e.g. vector/v.to.db/description.html).&lt;br /&gt;
With a few exceptions header and footer are NOT allowed.&lt;br /&gt;
You can add figures (PNG format), the figure name prefix should be the &lt;br /&gt;
module name. See raster/r.terraflow/description.html for an example.&lt;br /&gt;
&lt;br /&gt;
Note that the parameter information is auto-generated upon&lt;br /&gt;
compilation. This is done by running module in a virtual session&lt;br /&gt;
after compilation (see the output of 'make'). To subsequently&lt;br /&gt;
verify the final HTML page, check the resulting HTML pages which&lt;br /&gt;
will be stored with the name of the module.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The online WWW man pages will be updated every Saturday by SVN.&lt;br /&gt;
&lt;br /&gt;
== Instructions ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This page will provide general step-by-step instructions for updating and improving GRASS manual pages. Feel free to update and improve this page as well! See also [http://freegis.org/cgi-bin/viewcvs.cgi/grass6/SUBMITTING_DOCS?rev=HEAD&amp;amp;content-type=text/vnd.viewcvs-markup SUBMITTING_DOCS] in the source code.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
As an example, the vector program v.in.ascii will be used to illustrate the steps required to update its manual page. These steps can then be generalized for your case.&lt;br /&gt;
&lt;br /&gt;
== Getting the latest source ==&lt;br /&gt;
&lt;br /&gt;
* To begin, you must obtain the latest GRASS source code from the Subversion repositories. Detailed instructions on how to do so can be found [http://trac.osgeo.org/grass/wiki/DownloadSource here.]&lt;br /&gt;
* Once you have downloaded the SVN source code, open a terminal and change directory to where the source for a specific GRASS module is located - in this example, something like:&lt;br /&gt;
 cd /your_svn_directory/grass6/vector/v.in.ascii&lt;br /&gt;
&lt;br /&gt;
* Open a text editor and make your edits to description.html. Do not use a &amp;quot;WYSYWIG&amp;quot; HTML editor on those files, but either a normal text editor or something which is designed for editing HTML ''source'' (e.g. [X]Emacs' html-mode or psgml-mode). Save your edits by overwriting the original description.html.&lt;br /&gt;
&lt;br /&gt;
== Help page sections ==&lt;br /&gt;
&lt;br /&gt;
Please use the following section list as a ''guideline''.&lt;br /&gt;
The intent is to promote a unified user experience, not to limit the flow of information. If exceptions are needed, please use them sparingly.&lt;br /&gt;
Minor sections (&amp;amp;lt;H3&amp;amp;gt;, etc) may be free-form, as required.&lt;br /&gt;
&lt;br /&gt;
=== Auto-generated ===&lt;br /&gt;
Modules using the parser interface will have these sections automatically generated from '&amp;lt;tt&amp;gt;g.module&amp;amp;nbsp;--html-description&amp;lt;/tt&amp;gt;'&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;H2&amp;gt;NAME&amp;lt;/H2&amp;gt;&lt;br /&gt;
&amp;lt;H2&amp;gt;KEYWORDS&amp;lt;/H2&amp;gt;&lt;br /&gt;
&amp;lt;H2&amp;gt;SYNOPSIS&amp;lt;/H2&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Found in description.html ===&lt;br /&gt;
A number of major sections should be present in each help page.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
* = Required&lt;br /&gt;
! = Suggested&lt;br /&gt;
. = Optional&lt;br /&gt;
&lt;br /&gt;
In recommended order&lt;br /&gt;
--------------------&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;H2&amp;gt;DESCRIPTION&amp;lt;/H2&amp;gt;&lt;br /&gt;
! &amp;lt;H2&amp;gt;NOTE&amp;lt;/H2&amp;gt;, &amp;lt;H2&amp;gt;NOTES&amp;lt;/H2&amp;gt;&lt;br /&gt;
! &amp;lt;H2&amp;gt;EXAMPLE&amp;lt;/H2&amp;gt;, &amp;lt;H2&amp;gt;EXAMPLES&amp;lt;/H2&amp;gt;&lt;br /&gt;
. &amp;lt;H2&amp;gt;TODO&amp;lt;/H2&amp;gt;&lt;br /&gt;
. &amp;lt;H2&amp;gt;BUGS&amp;lt;/H2&amp;gt;&lt;br /&gt;
. &amp;lt;H2&amp;gt;REFERENCE&amp;lt;/H2&amp;gt;, &amp;lt;H2&amp;gt;REFERENCES&amp;lt;/H2&amp;gt;&lt;br /&gt;
* &amp;lt;H2&amp;gt;SEE ALSO&amp;lt;/H2&amp;gt;&lt;br /&gt;
* &amp;lt;H2&amp;gt;AUTHOR&amp;lt;/H2&amp;gt;, &amp;lt;H2&amp;gt;AUTHORS&amp;lt;/H2&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Images ==&lt;br /&gt;
&lt;br /&gt;
* Images can also be inserted in the html help page. See [http://grass.itc.it/grass63/manuals/html63_user/v.voronoi.html v.voronoi] for an example. Note that images won't show up in the Grass ''man'' pages (which are generated from the HTML), so they shouldn't be considered a substitute for an adequate textual description. Be sure to also send the image (preferably png format) along with your documentation patch.&lt;br /&gt;
&lt;br /&gt;
PNG files are best for figures with solid chunks of a single color. They can get rather large for imagery. In those cases JPEGs are a better choice. In general JPEG is a lossy format so the image quality will not be as good.&lt;br /&gt;
&lt;br /&gt;
To help keep the source distribution size small, try and keep the images small and the files under 50kb or so. Save PNGs at a compression setting of &amp;quot;9&amp;quot; with a minimal color pallet, you can also use tools like&lt;br /&gt;
&amp;lt;tt&amp;gt;pngcrush&amp;lt;/tt&amp;gt; to compress them further.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Examples ==&lt;br /&gt;
&lt;br /&gt;
For non trivial modules please provide an example of the command line usage. It is good to have this double as a mini-tutorial, so please use one of the sample datasets (Spearfish or the new North Carolina one) or common dataset such as NASA's WMS or SRTM data files.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Examples should be coded like this:&lt;br /&gt;
&lt;br /&gt;
  &amp;amp;lt;div class=&amp;quot;code&amp;quot;&amp;amp;gt;&amp;amp;lt;pre&amp;amp;gt;&lt;br /&gt;
  v.to.db map=soils type=area option=area col=area_size unit=h&lt;br /&gt;
  &amp;amp;lt;/pre&amp;amp;gt;&amp;amp;lt;/div&amp;amp;gt;&lt;br /&gt;
&lt;br /&gt;
== HTML codes ==&lt;br /&gt;
&lt;br /&gt;
The g.html2man tool is used to generate man pages from the HTML help files.&lt;br /&gt;
&lt;br /&gt;
* The following html codes are understood to some extent by g.html2man (brackets removed): A, B, BLINK, BODY, BR, CODE, DD, DL, DT, EM, H2, H3, H4, HEAD, HEADER, HR, I, IMG, LI, OL, P, PRE, SUP, TABLE, TD, TH, TITLE, TR, UL.&lt;br /&gt;
&lt;br /&gt;
* Others may be added to g.html2man as required.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Creating and submitting a patch ==&lt;br /&gt;
&lt;br /&gt;
* See the [[Patches]] wiki page&lt;br /&gt;
&lt;br /&gt;
== Translations ==&lt;br /&gt;
&lt;br /&gt;
Currently there is no framework for translating the help pages.&lt;br /&gt;
&lt;br /&gt;
Idea: use an online translator such as AltaVista's Babelfish service or Google Translate.&lt;br /&gt;
&lt;br /&gt;
: The top part of the page (generated by `g.module --html-description`) is translated by the $LANG variable and &amp;lt;grass/glocale.h&amp;gt;, so we should not be attempting to automatically translate the option and modules names. The idea for a two part translation is to make a modified version of tools/mkhtml.sh which (if ./config'd --with-nls) loops through major languages and creates html pages like $GISBASE/docs/html/de/, $GISBASE/docs/html/es/,... but instead of just pasting the english description.html files to the bottom have it save those as g.module_descr_en.html in a common dir.&lt;br /&gt;
: The translated help pages (generated with mkhtml_i18n.sh) would contain a lower frame which calls an online translation of the g.module_descr_en.html page from e.g. ibiblio.org/grass63/html_docs/en_descr/g.module_descr_en.html with the appropriate &amp;quot;lp=en_de&amp;quot; setting in the bablefish URL.&lt;br /&gt;
: ?&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
example of live whole-page translations for GRASS 6.3 help pages:&lt;br /&gt;
* Chinese- Simplified [http://babelfish.altavista.com/babelfish/trurl_load?lp=en_zh&amp;amp;url=http%3A%2F%2Fgrass.ibiblio.org%2Fgrass63%2Fmanuals%2Fhtml63_user%2Findex.html AltaVista] - [http://translate.google.com/translate?u=http%3A%2F%2Fgrass.fbk.eu%2Fgrass63%2Fmanuals%2Fhtml63_user%2Findex.html&amp;amp;langpair=en%7Czh-CN&amp;amp;hl=en&amp;amp;ie=UTF8 Google]&lt;br /&gt;
* Chinese- Traditional [http://babelfish.altavista.com/babelfish/trurl_load?lp=en_zt&amp;amp;url=http%3A%2F%2Fgrass.ibiblio.org%2Fgrass63%2Fmanuals%2Fhtml63_user%2Findex.html AltaVista] - [http://translate.google.com/translate?u=http%3A%2F%2Fgrass.fbk.eu%2Fgrass63%2Fmanuals%2Fhtml63_user%2Findex.html&amp;amp;langpair=en%7Czh-TW&amp;amp;hl=en&amp;amp;ie=UTF8 Google]&lt;br /&gt;
* Dutch [http://babelfish.altavista.com/babelfish/trurl_load?lp=en_nl&amp;amp;url=http%3A%2F%2Fgrass.ibiblio.org%2Fgrass63%2Fmanuals%2Fhtml63_user%2Findex.html AltaVista] - [http://translate.google.com/translate?u=http%3A%2F%2Fgrass.fbk.eu%2Fgrass63%2Fmanuals%2Fhtml63_user%2Findex.html&amp;amp;langpair=en%7Cnl&amp;amp;hl=en&amp;amp;ie=UTF8 Google]&lt;br /&gt;
* French [http://babelfish.altavista.com/babelfish/trurl_load?lp=en_fr&amp;amp;url=http%3A%2F%2Fgrass.ibiblio.org%2Fgrass63%2Fmanuals%2Fhtml63_user%2Findex.html AltaVista] - [http://translate.google.com/translate?u=http%3A%2F%2Fgrass.fbk.eu%2Fgrass63%2Fmanuals%2Fhtml63_user%2Findex.html&amp;amp;langpair=en%7Cfr&amp;amp;hl=en&amp;amp;ie=UTF8 Google]&lt;br /&gt;
* German [http://babelfish.altavista.com/babelfish/trurl_load?lp=en_de&amp;amp;url=http%3A%2F%2Fgrass.ibiblio.org%2Fgrass63%2Fmanuals%2Fhtml63_user%2Findex.html AltaVista] - [http://translate.google.com/translate?u=http%3A%2F%2Fgrass.fbk.eu%2Fgrass63%2Fmanuals%2Fhtml63_user%2Findex.html&amp;amp;langpair=en%7Cde&amp;amp;hl=en&amp;amp;ie=UTF8 Google]&lt;br /&gt;
* Greek [http://babelfish.altavista.com/babelfish/trurl_load?lp=en_el&amp;amp;url=http%3A%2F%2Fgrass.ibiblio.org%2Fgrass63%2Fmanuals%2Fhtml63_user%2Findex.html AltaVista] - [http://translate.google.com/translate?u=http%3A%2F%2Fgrass.fbk.eu%2Fgrass63%2Fmanuals%2Fhtml63_user%2Findex.html&amp;amp;langpair=en%7Cel&amp;amp;hl=en&amp;amp;ie=UTF8 Google]&lt;br /&gt;
* Italian [http://babelfish.altavista.com/babelfish/trurl_load?lp=en_it&amp;amp;url=http%3A%2F%2Fgrass.ibiblio.org%2Fgrass63%2Fmanuals%2Fhtml63_user%2Findex.html AltaVista] - [http://translate.google.com/translate?u=http%3A%2F%2Fgrass.fbk.eu%2Fgrass63%2Fmanuals%2Fhtml63_user%2Findex.html&amp;amp;langpair=en%7Cit&amp;amp;hl=en&amp;amp;ie=UTF8 Google]&lt;br /&gt;
* Japanese [http://babelfish.altavista.com/babelfish/trurl_load?lp=en_ja&amp;amp;url=http%3A%2F%2Fgrass.ibiblio.org%2Fgrass63%2Fmanuals%2Fhtml63_user%2Findex.html AltaVista] - [http://translate.google.com/translate?u=http%3A%2F%2Fgrass.fbk.eu%2Fgrass63%2Fmanuals%2Fhtml63_user%2Findex.html&amp;amp;langpair=en%7Cja&amp;amp;hl=en&amp;amp;ie=UTF8 Google]&lt;br /&gt;
* Korean [http://babelfish.altavista.com/babelfish/trurl_load?lp=en_ko&amp;amp;url=http%3A%2F%2Fgrass.ibiblio.org%2Fgrass63%2Fmanuals%2Fhtml63_user%2Findex.html AltaVista] - [http://translate.google.com/translate?u=http%3A%2F%2Fgrass.fbk.eu%2Fgrass63%2Fmanuals%2Fhtml63_user%2Findex.html&amp;amp;langpair=en%7Cko&amp;amp;hl=en&amp;amp;ie=UTF8 Google]&lt;br /&gt;
* Portuguese [http://babelfish.altavista.com/babelfish/trurl_load?lp=en_pt&amp;amp;url=http%3A%2F%2Fgrass.ibiblio.org%2Fgrass63%2Fmanuals%2Fhtml63_user%2Findex.html AltaVista] - [http://translate.google.com/translate?u=http%3A%2F%2Fgrass.fbk.eu%2Fgrass63%2Fmanuals%2Fhtml63_user%2Findex.html&amp;amp;langpair=en%7Cpt&amp;amp;hl=en&amp;amp;ie=UTF8 Google]&lt;br /&gt;
* Russian [http://babelfish.altavista.com/babelfish/trurl_load?lp=en_ru&amp;amp;url=http%3A%2F%2Fgrass.ibiblio.org%2Fgrass63%2Fmanuals%2Fhtml63_user%2Findex.html AltaVista] - [http://translate.google.com/translate?u=http%3A%2F%2Fgrass.fbk.eu%2Fgrass63%2Fmanuals%2Fhtml63_user%2Findex.html&amp;amp;langpair=en%7Cru&amp;amp;hl=en&amp;amp;ie=UTF8 Google]&lt;br /&gt;
* Spanish [http://babelfish.altavista.com/babelfish/trurl_load?lp=en_es&amp;amp;url=http%3A%2F%2Fgrass.ibiblio.org%2Fgrass63%2Fmanuals%2Fhtml63_user%2Findex.html AltaVista] - [http://translate.google.com/translate?u=http%3A%2F%2Fgrass.fbk.eu%2Fgrass63%2Fmanuals%2Fhtml63_user%2Findex.html&amp;amp;langpair=en%7Ces&amp;amp;hl=en&amp;amp;ie=UTF8 Google]&lt;br /&gt;
&lt;br /&gt;
== See also ==&lt;br /&gt;
&lt;br /&gt;
* Job offer [[Project_jobs#Documentation_manager_.28open.29|Documentation manager]]&lt;br /&gt;
&lt;br /&gt;
* [[Development#Documentation|Doxygen generated help]] from the source code for the [http://grass.itc.it/devel/index.php#prog Programmers' Manual].&lt;/div&gt;</summary>
		<author><name>⚠️EricPatton</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=Updating_GRASS_Documentation&amp;diff=5599</id>
		<title>Updating GRASS Documentation</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=Updating_GRASS_Documentation&amp;diff=5599"/>
		<updated>2007-12-17T18:27:48Z</updated>

		<summary type="html">&lt;p&gt;⚠️EricPatton: /* Getting the latest source */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= How-to for Updating GRASS Manual Pages =&lt;br /&gt;
&lt;br /&gt;
* [http://freegis.org/cgi-bin/viewcvs.cgi/*checkout*/grass6/doc/html_documentation.txt?rev=HEAD&amp;amp;content-type=text/plain doc/html_documentation.txt] from the GRASS source code&lt;br /&gt;
&lt;br /&gt;
== Overview ==&lt;br /&gt;
&amp;lt;!-- from the SUBMITTING file, rule 23 --&amp;gt;&lt;br /&gt;
Module manual page:&lt;br /&gt;
&lt;br /&gt;
Place the documentation in HTML format into 'description.html'.&lt;br /&gt;
The easiest way to do this is to study an existing HTML page&lt;br /&gt;
(to get the page style, e.g. vector/v.to.db/description.html).&lt;br /&gt;
With a few exceptions header and footer are NOT allowed.&lt;br /&gt;
You can add figures (PNG format), the figure name prefix should be the &lt;br /&gt;
module name. See raster/r.terraflow/description.html for an example.&lt;br /&gt;
&lt;br /&gt;
Note that the parameter information is auto-generated upon&lt;br /&gt;
compilation. This is done by running module in a virtual session&lt;br /&gt;
after compilation (see the output of 'make'). To subsequently&lt;br /&gt;
verify the final HTML page, check the resulting HTML pages which&lt;br /&gt;
will be stored with the name of the module.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The online WWW man pages will be updated every Saturday by CVS.&lt;br /&gt;
&lt;br /&gt;
== Instructions ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This page will provide general step-by-step instructions for updating and improving GRASS manual pages. Feel free to update and improve this page as well! See also [http://freegis.org/cgi-bin/viewcvs.cgi/grass6/SUBMITTING_DOCS?rev=HEAD&amp;amp;content-type=text/vnd.viewcvs-markup SUBMITTING_DOCS] in the source code.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
As an example, the vector program v.in.ascii will be used to illustrate the steps required to update its manual page. These steps can then be generalized for your case.&lt;br /&gt;
&lt;br /&gt;
== Getting the latest source ==&lt;br /&gt;
&lt;br /&gt;
* To begin, you must obtain the latest GRASS source code from the Subversion repositories. Detailed instructions on how to do so can be found [http://trac.osgeo.org/grass/wiki/DownloadSource here.]&lt;br /&gt;
* Once you have downloaded the SVN source code, open a terminal and change directory to where the source for a specific GRASS module is located - in this example, something like:&lt;br /&gt;
 cd /your_svn_directory/grass6/vector/v.in.ascii&lt;br /&gt;
&lt;br /&gt;
* Open a text editor and make your edits to description.html. Do not use a &amp;quot;WYSYWIG&amp;quot; HTML editor on those files, but either a normal text editor or something which is designed for editing HTML ''source'' (e.g. [X]Emacs' html-mode or psgml-mode). Save your edits by overwriting the original description.html.&lt;br /&gt;
&lt;br /&gt;
== Help page sections ==&lt;br /&gt;
&lt;br /&gt;
Please use the following section list as a ''guideline''.&lt;br /&gt;
The intent is to promote a unified user experience, not to limit the flow of information. If exceptions are needed, please use them sparingly.&lt;br /&gt;
Minor sections (&amp;amp;lt;H3&amp;amp;gt;, etc) may be free-form, as required.&lt;br /&gt;
&lt;br /&gt;
=== Auto-generated ===&lt;br /&gt;
Modules using the parser interface will have these sections automatically generated from '&amp;lt;tt&amp;gt;g.module&amp;amp;nbsp;--html-description&amp;lt;/tt&amp;gt;'&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;H2&amp;gt;NAME&amp;lt;/H2&amp;gt;&lt;br /&gt;
&amp;lt;H2&amp;gt;KEYWORDS&amp;lt;/H2&amp;gt;&lt;br /&gt;
&amp;lt;H2&amp;gt;SYNOPSIS&amp;lt;/H2&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Found in description.html ===&lt;br /&gt;
A number of major sections should be present in each help page.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
* = Required&lt;br /&gt;
! = Suggested&lt;br /&gt;
. = Optional&lt;br /&gt;
&lt;br /&gt;
In recommended order&lt;br /&gt;
--------------------&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;H2&amp;gt;DESCRIPTION&amp;lt;/H2&amp;gt;&lt;br /&gt;
! &amp;lt;H2&amp;gt;NOTE&amp;lt;/H2&amp;gt;, &amp;lt;H2&amp;gt;NOTES&amp;lt;/H2&amp;gt;&lt;br /&gt;
! &amp;lt;H2&amp;gt;EXAMPLE&amp;lt;/H2&amp;gt;, &amp;lt;H2&amp;gt;EXAMPLES&amp;lt;/H2&amp;gt;&lt;br /&gt;
. &amp;lt;H2&amp;gt;TODO&amp;lt;/H2&amp;gt;&lt;br /&gt;
. &amp;lt;H2&amp;gt;BUGS&amp;lt;/H2&amp;gt;&lt;br /&gt;
. &amp;lt;H2&amp;gt;REFERENCE&amp;lt;/H2&amp;gt;, &amp;lt;H2&amp;gt;REFERENCES&amp;lt;/H2&amp;gt;&lt;br /&gt;
* &amp;lt;H2&amp;gt;SEE ALSO&amp;lt;/H2&amp;gt;&lt;br /&gt;
* &amp;lt;H2&amp;gt;AUTHOR&amp;lt;/H2&amp;gt;, &amp;lt;H2&amp;gt;AUTHORS&amp;lt;/H2&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Images ==&lt;br /&gt;
&lt;br /&gt;
* Images can also be inserted in the html help page. See [http://grass.itc.it/grass63/manuals/html63_user/v.voronoi.html v.voronoi] for an example. Note that images won't show up in the Grass ''man'' pages (which are generated from the HTML), so they shouldn't be considered a substitute for an adequate textual description. Be sure to also send the image (preferably png format) along with your documentation patch.&lt;br /&gt;
&lt;br /&gt;
PNG files are best for figures with solid chunks of a single color. They can get rather large for imagery. In those cases JPEGs are a better choice. In general JPEG is a lossy format so the image quality will not be as good.&lt;br /&gt;
&lt;br /&gt;
To help keep the source distribution size small, try and keep the images small and the files under 50kb or so. Save PNGs at a compression setting of &amp;quot;9&amp;quot; with a minimal color pallet, you can also use tools like&lt;br /&gt;
&amp;lt;tt&amp;gt;pngcrush&amp;lt;/tt&amp;gt; to compress them further.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Examples ==&lt;br /&gt;
&lt;br /&gt;
For non trivial modules please provide an example of the command line usage. It is good to have this double as a mini-tutorial, so please use one of the sample datasets (Spearfish or the new North Carolina one) or common dataset such as NASA's WMS or SRTM data files.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Examples should be coded like this:&lt;br /&gt;
&lt;br /&gt;
  &amp;amp;lt;div class=&amp;quot;code&amp;quot;&amp;amp;gt;&amp;amp;lt;pre&amp;amp;gt;&lt;br /&gt;
  v.to.db map=soils type=area option=area col=area_size unit=h&lt;br /&gt;
  &amp;amp;lt;/pre&amp;amp;gt;&amp;amp;lt;/div&amp;amp;gt;&lt;br /&gt;
&lt;br /&gt;
== HTML codes ==&lt;br /&gt;
&lt;br /&gt;
The g.html2man tool is used to generate man pages from the HTML help files.&lt;br /&gt;
&lt;br /&gt;
* The following html codes are understood to some extent by g.html2man (brackets removed): A, B, BLINK, BODY, BR, CODE, DD, DL, DT, EM, H2, H3, H4, HEAD, HEADER, HR, I, IMG, LI, OL, P, PRE, SUP, TABLE, TD, TH, TITLE, TR, UL.&lt;br /&gt;
&lt;br /&gt;
* Others may be added to g.html2man as required.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Creating and submitting a patch ==&lt;br /&gt;
&lt;br /&gt;
* See the [[Patches]] wiki page&lt;br /&gt;
&lt;br /&gt;
== Translations ==&lt;br /&gt;
&lt;br /&gt;
Currently there is no framework for translating the help pages.&lt;br /&gt;
&lt;br /&gt;
Idea: use an online translator such as AltaVista's Babelfish service or Google Translate.&lt;br /&gt;
&lt;br /&gt;
: The top part of the page (generated by `g.module --html-description`) is translated by the $LANG variable and &amp;lt;grass/glocale.h&amp;gt;, so we should not be attempting to automatically translate the option and modules names. The idea for a two part translation is to make a modified version of tools/mkhtml.sh which (if ./config'd --with-nls) loops through major languages and creates html pages like $GISBASE/docs/html/de/, $GISBASE/docs/html/es/,... but instead of just pasting the english description.html files to the bottom have it save those as g.module_descr_en.html in a common dir.&lt;br /&gt;
: The translated help pages (generated with mkhtml_i18n.sh) would contain a lower frame which calls an online translation of the g.module_descr_en.html page from e.g. ibiblio.org/grass63/html_docs/en_descr/g.module_descr_en.html with the appropriate &amp;quot;lp=en_de&amp;quot; setting in the bablefish URL.&lt;br /&gt;
: ?&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
example of live whole-page translations for GRASS 6.3 help pages:&lt;br /&gt;
* Chinese- Simplified [http://babelfish.altavista.com/babelfish/trurl_load?lp=en_zh&amp;amp;url=http%3A%2F%2Fgrass.ibiblio.org%2Fgrass63%2Fmanuals%2Fhtml63_user%2Findex.html AltaVista] - [http://translate.google.com/translate?u=http%3A%2F%2Fgrass.fbk.eu%2Fgrass63%2Fmanuals%2Fhtml63_user%2Findex.html&amp;amp;langpair=en%7Czh-CN&amp;amp;hl=en&amp;amp;ie=UTF8 Google]&lt;br /&gt;
* Chinese- Traditional [http://babelfish.altavista.com/babelfish/trurl_load?lp=en_zt&amp;amp;url=http%3A%2F%2Fgrass.ibiblio.org%2Fgrass63%2Fmanuals%2Fhtml63_user%2Findex.html AltaVista] - [http://translate.google.com/translate?u=http%3A%2F%2Fgrass.fbk.eu%2Fgrass63%2Fmanuals%2Fhtml63_user%2Findex.html&amp;amp;langpair=en%7Czh-TW&amp;amp;hl=en&amp;amp;ie=UTF8 Google]&lt;br /&gt;
* Dutch [http://babelfish.altavista.com/babelfish/trurl_load?lp=en_nl&amp;amp;url=http%3A%2F%2Fgrass.ibiblio.org%2Fgrass63%2Fmanuals%2Fhtml63_user%2Findex.html AltaVista] - [http://translate.google.com/translate?u=http%3A%2F%2Fgrass.fbk.eu%2Fgrass63%2Fmanuals%2Fhtml63_user%2Findex.html&amp;amp;langpair=en%7Cnl&amp;amp;hl=en&amp;amp;ie=UTF8 Google]&lt;br /&gt;
* French [http://babelfish.altavista.com/babelfish/trurl_load?lp=en_fr&amp;amp;url=http%3A%2F%2Fgrass.ibiblio.org%2Fgrass63%2Fmanuals%2Fhtml63_user%2Findex.html AltaVista] - [http://translate.google.com/translate?u=http%3A%2F%2Fgrass.fbk.eu%2Fgrass63%2Fmanuals%2Fhtml63_user%2Findex.html&amp;amp;langpair=en%7Cfr&amp;amp;hl=en&amp;amp;ie=UTF8 Google]&lt;br /&gt;
* German [http://babelfish.altavista.com/babelfish/trurl_load?lp=en_de&amp;amp;url=http%3A%2F%2Fgrass.ibiblio.org%2Fgrass63%2Fmanuals%2Fhtml63_user%2Findex.html AltaVista] - [http://translate.google.com/translate?u=http%3A%2F%2Fgrass.fbk.eu%2Fgrass63%2Fmanuals%2Fhtml63_user%2Findex.html&amp;amp;langpair=en%7Cde&amp;amp;hl=en&amp;amp;ie=UTF8 Google]&lt;br /&gt;
* Greek [http://babelfish.altavista.com/babelfish/trurl_load?lp=en_el&amp;amp;url=http%3A%2F%2Fgrass.ibiblio.org%2Fgrass63%2Fmanuals%2Fhtml63_user%2Findex.html AltaVista] - [http://translate.google.com/translate?u=http%3A%2F%2Fgrass.fbk.eu%2Fgrass63%2Fmanuals%2Fhtml63_user%2Findex.html&amp;amp;langpair=en%7Cel&amp;amp;hl=en&amp;amp;ie=UTF8 Google]&lt;br /&gt;
* Italian [http://babelfish.altavista.com/babelfish/trurl_load?lp=en_it&amp;amp;url=http%3A%2F%2Fgrass.ibiblio.org%2Fgrass63%2Fmanuals%2Fhtml63_user%2Findex.html AltaVista] - [http://translate.google.com/translate?u=http%3A%2F%2Fgrass.fbk.eu%2Fgrass63%2Fmanuals%2Fhtml63_user%2Findex.html&amp;amp;langpair=en%7Cit&amp;amp;hl=en&amp;amp;ie=UTF8 Google]&lt;br /&gt;
* Japanese [http://babelfish.altavista.com/babelfish/trurl_load?lp=en_ja&amp;amp;url=http%3A%2F%2Fgrass.ibiblio.org%2Fgrass63%2Fmanuals%2Fhtml63_user%2Findex.html AltaVista] - [http://translate.google.com/translate?u=http%3A%2F%2Fgrass.fbk.eu%2Fgrass63%2Fmanuals%2Fhtml63_user%2Findex.html&amp;amp;langpair=en%7Cja&amp;amp;hl=en&amp;amp;ie=UTF8 Google]&lt;br /&gt;
* Korean [http://babelfish.altavista.com/babelfish/trurl_load?lp=en_ko&amp;amp;url=http%3A%2F%2Fgrass.ibiblio.org%2Fgrass63%2Fmanuals%2Fhtml63_user%2Findex.html AltaVista] - [http://translate.google.com/translate?u=http%3A%2F%2Fgrass.fbk.eu%2Fgrass63%2Fmanuals%2Fhtml63_user%2Findex.html&amp;amp;langpair=en%7Cko&amp;amp;hl=en&amp;amp;ie=UTF8 Google]&lt;br /&gt;
* Portuguese [http://babelfish.altavista.com/babelfish/trurl_load?lp=en_pt&amp;amp;url=http%3A%2F%2Fgrass.ibiblio.org%2Fgrass63%2Fmanuals%2Fhtml63_user%2Findex.html AltaVista] - [http://translate.google.com/translate?u=http%3A%2F%2Fgrass.fbk.eu%2Fgrass63%2Fmanuals%2Fhtml63_user%2Findex.html&amp;amp;langpair=en%7Cpt&amp;amp;hl=en&amp;amp;ie=UTF8 Google]&lt;br /&gt;
* Russian [http://babelfish.altavista.com/babelfish/trurl_load?lp=en_ru&amp;amp;url=http%3A%2F%2Fgrass.ibiblio.org%2Fgrass63%2Fmanuals%2Fhtml63_user%2Findex.html AltaVista] - [http://translate.google.com/translate?u=http%3A%2F%2Fgrass.fbk.eu%2Fgrass63%2Fmanuals%2Fhtml63_user%2Findex.html&amp;amp;langpair=en%7Cru&amp;amp;hl=en&amp;amp;ie=UTF8 Google]&lt;br /&gt;
* Spanish [http://babelfish.altavista.com/babelfish/trurl_load?lp=en_es&amp;amp;url=http%3A%2F%2Fgrass.ibiblio.org%2Fgrass63%2Fmanuals%2Fhtml63_user%2Findex.html AltaVista] - [http://translate.google.com/translate?u=http%3A%2F%2Fgrass.fbk.eu%2Fgrass63%2Fmanuals%2Fhtml63_user%2Findex.html&amp;amp;langpair=en%7Ces&amp;amp;hl=en&amp;amp;ie=UTF8 Google]&lt;br /&gt;
&lt;br /&gt;
== See also ==&lt;br /&gt;
&lt;br /&gt;
* Job offer [[Project_jobs#Documentation_manager_.28open.29|Documentation manager]]&lt;br /&gt;
&lt;br /&gt;
* [[Development#Documentation|Doxygen generated help]] from the source code for the [http://grass.itc.it/devel/index.php#prog Programmers' Manual].&lt;/div&gt;</summary>
		<author><name>⚠️EricPatton</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=Updating_GRASS_Documentation&amp;diff=5190</id>
		<title>Updating GRASS Documentation</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=Updating_GRASS_Documentation&amp;diff=5190"/>
		<updated>2007-11-07T21:43:08Z</updated>

		<summary type="html">&lt;p&gt;⚠️EricPatton: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;h2&amp;gt;How-to for Updating GRASS Manual Pages&amp;lt;/h2&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
This page will provide general step-by-step instructions for updating and improving GRASS manual pages. Feel free to update and improve this page as well! See also [http://freegis.org/cgi-bin/viewcvs.cgi/grass6/SUBMITTING_DOCS?rev=HEAD&amp;amp;content-type=text/vnd.viewcvs-markup SUBMITTING_DOCS] in the source code.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
As an example, the vector program v.in.ascii will be used to illustrate the steps required to update its manual page. These steps can then be generalized for your case.&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
* To begin, you must obtain the latest GRASS source code from the CVS repositories. Detailed instructions on how to do so can be found [http://grass.itc.it/faq/cvs_howto.html here.]&lt;br /&gt;
* Once you have downloaded the CVS source code, open a terminal and change directory to where the source for a specific GRASS module is located - in this example, something like:&lt;br /&gt;
&amp;lt;pre&amp;gt; cd /your_cvs_directory/grass6/vector/v.in.ascii&amp;lt;/pre&amp;gt;&lt;br /&gt;
* Open a text editor and make your edits to description.html. Do not use a &amp;quot;WYSYWIG&amp;quot; HTML editor on those files, but either a normal text editor or something which is designed for editing HTML&lt;br /&gt;
_source_ (e.g. [X]Emacs' html-mode or psgml-mode). Save your edits by overwriting the original description.html.&lt;br /&gt;
* Within a terminal, create a 'unified diff' (a standard way to show changes between two versions of a file) of the GRASS CVS repository version of description.html and your newly edited description.html:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cvs diff -u description.html &amp;gt; v.in.ascii.description.patch&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
The &amp;quot;diff -u&amp;quot; command will create a report in v.in.ascii.description.patch which shows any differences between the version of description.html still on the CVS server and your edited version; a '+' at the beginning of each line denotes edits and additions you have made, and a '-' at the beginning of each line denotes lines removed from the original description.html. The exact name of your patch file is arbitrary, but should be as descriptive as&lt;br /&gt;
possible as in the above example.&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;The output of the diff -u should look &amp;lt;i&amp;gt;something&amp;lt;/i&amp;gt; like this (the exact contents will of course depend on whatever changes you made to the file):&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Index: description.html&lt;br /&gt;
===================================================================&lt;br /&gt;
RCS file: /home/grass/grassrepository/grass6/vector/v.in.ascii/description.html,v&lt;br /&gt;
retrieving revision 1.35&lt;br /&gt;
diff -u -r1.35 description.html&lt;br /&gt;
--- description.html    31 May 2006 13:03:57 -0000      1.35&lt;br /&gt;
+++ description.html    26 Sep 2006 14:35:21 -0000&lt;br /&gt;
@@ -35,6 +35,10 @@&lt;br /&gt;
&lt;br /&gt;
 Use the &amp;lt;b&amp;gt;-z&amp;lt;/b&amp;gt; flag to convert ASCII data into a 3D binary vector map.&lt;br /&gt;
&lt;br /&gt;
+Any edits you make to description.html will show up like this after you run diff -u!&lt;br /&gt;
+Three lines of the original description.html will surround each block of edits you made&lt;br /&gt;
+to provide context.&lt;br /&gt;
+&lt;br /&gt;
 A GRASS ASCII vector file (in &amp;lt;B&amp;gt;standard&amp;lt;/B&amp;gt; mode) may contain a mix of&lt;br /&gt;
 primitives including points, lines, boundaries, centroids, areas, faces,&lt;br /&gt;
@@ -51,6 +55,8 @@&lt;br /&gt;
 &amp;lt;LI&amp;gt;'K': kernel (3D centroid)&amp;lt;/LI&amp;gt;&lt;br /&gt;
 &amp;lt;LI&amp;gt;'A': area (boundary) - better use 'B'; kept only for backward compatibility&amp;lt;/LI&amp;gt;&lt;br /&gt;
 &amp;lt;/UL&amp;gt;&lt;br /&gt;
+&lt;br /&gt;
+This line is another edit made further along in description.html....&lt;br /&gt;
&lt;br /&gt;
The coordinates are listed following the initial line containing the&lt;br /&gt;
 primitive code, the total number of vectors in the series, and the number&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Images can also be inserted in the html help page. See [http://grass.itc.it/grass63/manuals/html63_user/v.voronoi.html v.voronoi] for an example. Note that images won't show up in the Grass manual pages (which are generated from the HTML), so they shouldn't be considered a substitute for an adequate textual description. Be sure to also send the image (preferably png format) along with your documentation patch.&lt;br /&gt;
&lt;br /&gt;
* The following html codes are understood to some extent by g.html2man (brackets removed): A, B, BLINK, BODY, BR, CODE, DD, DL, DT, EM, H2, H3, H4, HEAD, HEADER, HR, I, IMG, LI, OL, P, PRE, SUP, TABLE, TD, TH, TITLE, TR, UL.&lt;br /&gt;
&lt;br /&gt;
* Email a [http://grass.itc.it/community/team.php GRASS developer] your description.html.patch for review &amp;lt;b&amp;gt;&amp;lt;i&amp;gt;as an attachment&amp;lt;/i&amp;gt;&amp;lt;/b&amp;gt;, along with a brief explanation why it is required. Please post a general message about your documentation update to the [http://grass.itc.it/devel/index.php#list GRASS Developer's List] before sending your patch to anyone in particular.&lt;br /&gt;
&lt;br /&gt;
== See also ==&lt;br /&gt;
&lt;br /&gt;
* Job offer [[Project_jobs#Documentation_manager_.28open.29|Documentation manager]]&lt;/div&gt;</summary>
		<author><name>⚠️EricPatton</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=Updating_GRASS_Documentation&amp;diff=5189</id>
		<title>Updating GRASS Documentation</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=Updating_GRASS_Documentation&amp;diff=5189"/>
		<updated>2007-11-07T18:26:53Z</updated>

		<summary type="html">&lt;p&gt;⚠️EricPatton: Last few edits have incorporated dev-list suggestions for adding doc diffs&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;h2&amp;gt;How-to for Updating GRASS Manual Pages&amp;lt;/h2&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
This page will provide general step-by-step instructions for updating and improving GRASS manual pages. Feel free to update and improve this page as well! See also [http://freegis.org/cgi-bin/viewcvs.cgi/grass6/SUBMITTING_DOCS?rev=HEAD&amp;amp;content-type=text/vnd.viewcvs-markup SUBMITTING_DOCS] in the source code.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
As an example, the vector program v.in.ascii will be used to illustrate the steps required to update its manual page. These steps can then be generalized for your case.&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
* To begin, you must obtain the latest GRASS source code from the CVS repositories. Detailed instructions on how to do so can be found [http://grass.itc.it/faq/cvs_howto.html here.]&lt;br /&gt;
* Once you have downloaded the CVS source code, open a terminal and change directory to where the source for a specific GRASS module is located - in this example, something like:&lt;br /&gt;
&amp;lt;pre&amp;gt;/your_cvs_directory/grass6/vector/v.in.ascii&amp;lt;/pre&amp;gt;&lt;br /&gt;
* Open a text editor and make your edits to description.html. Do not use a &amp;quot;WYSYWIG&amp;quot; HTML editor on those files, but either a normal text editor or something which is designed for editing HTML&lt;br /&gt;
_source_ (e.g. [X]Emacs' html-mode or psgml-mode). Save your edits by overwriting the original description.html.&lt;br /&gt;
* Within a terminal, create a 'unified diff' (a standard way to show changes between two versions of a file) of the GRASS CVS repository version of description.html and your newly edited description.html:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cvs diff -u description.html &amp;gt; v.in.ascii.description.patch&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
The &amp;quot;diff -u&amp;quot; command will create a report in v.in.ascii.description.patch which shows any differences between the version of description.html still on the CVS server and your edited version; a '+' at the beginning of each line denotes edits and additions you have made, and a '-' at the beginning of each line denotes lines removed from the original description.html. The exact name of your patch file is arbitrary, but should be as descriptive as&lt;br /&gt;
possible as in the above example.&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;The output of the diff -u should look &amp;lt;i&amp;gt;something&amp;lt;/i&amp;gt; like this (the exact contents will of course depend on whatever changes you made to the file):&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Index: description.html&lt;br /&gt;
===================================================================&lt;br /&gt;
RCS file: /home/grass/grassrepository/grass6/vector/v.in.ascii/description.html,v&lt;br /&gt;
retrieving revision 1.35&lt;br /&gt;
diff -u -r1.35 description.html&lt;br /&gt;
--- description.html    31 May 2006 13:03:57 -0000      1.35&lt;br /&gt;
+++ description.html    26 Sep 2006 14:35:21 -0000&lt;br /&gt;
@@ -35,6 +35,10 @@&lt;br /&gt;
&lt;br /&gt;
 Use the &amp;lt;b&amp;gt;-z&amp;lt;/b&amp;gt; flag to convert ASCII data into a 3D binary vector map.&lt;br /&gt;
&lt;br /&gt;
+Any edits you make to description.html will show up like this after you run diff -u!&lt;br /&gt;
+Three lines of the original description.html will surround each block of edits you made&lt;br /&gt;
+to provide context.&lt;br /&gt;
+&lt;br /&gt;
 A GRASS ASCII vector file (in &amp;lt;B&amp;gt;standard&amp;lt;/B&amp;gt; mode) may contain a mix of&lt;br /&gt;
 primitives including points, lines, boundaries, centroids, areas, faces,&lt;br /&gt;
@@ -51,6 +55,8 @@&lt;br /&gt;
 &amp;lt;LI&amp;gt;'K': kernel (3D centroid)&amp;lt;/LI&amp;gt;&lt;br /&gt;
 &amp;lt;LI&amp;gt;'A': area (boundary) - better use 'B'; kept only for backward compatibility&amp;lt;/LI&amp;gt;&lt;br /&gt;
 &amp;lt;/UL&amp;gt;&lt;br /&gt;
+&lt;br /&gt;
+This line is another edit made further along in description.html....&lt;br /&gt;
&lt;br /&gt;
The coordinates are listed following the initial line containing the&lt;br /&gt;
 primitive code, the total number of vectors in the series, and the number&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Images can also be inserted in the html help page. See [http://grass.itc.it/grass63/manuals/html63_user/v.voronoi.html v.voronoi] for an example. Note that images won't show up in the Grass manual pages (which are generated from the HTML), so they shouldn't be considered a substitute for an adequate textual description. Be sure to also send the image (preferably png format) along with your documentation patch.&lt;br /&gt;
&lt;br /&gt;
* The following html codes are understood to some extent by g.html2man (brackets removed): A, B, BLINK, BODY, BR, CODE, DD, DL, DT, EM, H2, H3, H4, HEAD, HEADER, HR, I, IMG, LI, OL, P, PRE, SUP, TABLE, TD, TH, TITLE, TR, UL.&lt;br /&gt;
&lt;br /&gt;
* Email a [http://grass.itc.it/community/team.php GRASS developer] your description.html.patch for review &amp;lt;b&amp;gt;&amp;lt;i&amp;gt;as an attachment&amp;lt;/i&amp;gt;&amp;lt;/b&amp;gt;, along with a brief explanation why it is required. Please post a general message about your documentation update to the [http://grass.itc.it/devel/index.php#list GRASS Developer's List] before sending your patch to anyone in particular.&lt;br /&gt;
&lt;br /&gt;
== See also ==&lt;br /&gt;
&lt;br /&gt;
* Job offer [[Project_jobs#Documentation_manager_.28open.29|Documentation manager]]&lt;/div&gt;</summary>
		<author><name>⚠️EricPatton</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=Updating_GRASS_Documentation&amp;diff=5188</id>
		<title>Updating GRASS Documentation</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=Updating_GRASS_Documentation&amp;diff=5188"/>
		<updated>2007-11-07T18:17:59Z</updated>

		<summary type="html">&lt;p&gt;⚠️EricPatton: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;h2&amp;gt;How-to for Updating GRASS Manual Pages&amp;lt;/h2&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
This page will provide general step-by-step instructions for updating and improving GRASS manual pages. Feel free to update and improve this page as well! See also [http://freegis.org/cgi-bin/viewcvs.cgi/grass6/SUBMITTING_DOCS?rev=HEAD&amp;amp;content-type=text/vnd.viewcvs-markup SUBMITTING_DOCS] in the source code.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
As an example, the vector program v.in.ascii will be used to illustrate the steps required to update its manual page. These steps can then be generalized for your case.&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
* To begin, you must obtain the latest GRASS source code from the CVS repositories. Detailed instructions on how to do so can be found [http://grass.itc.it/faq/cvs_howto.html here.]&lt;br /&gt;
* Once you have downloaded the CVS source code, open a terminal and change directory to where the source for a specific GRASS module is located - in this example, something like:&lt;br /&gt;
&amp;lt;pre&amp;gt;/your_cvs_directory/grass6/vector/v.in.ascii&amp;lt;/pre&amp;gt;&lt;br /&gt;
* Open a text editor and make your edits to description.html. Save your edits by overwriting the original description.html.&lt;br /&gt;
* Within a terminal, create a 'unified diff' (a standard way to show changes between two versions of a file) of the GRASS CVS repository version of description.html and your newly edited description.html:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cvs diff -u description.html &amp;gt; v.in.ascii.description.patch&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
The &amp;quot;diff -u&amp;quot; command will create a report in v.in.ascii.description.patch which shows any differences between the version of description.html still on the CVS server and your edited version; a '+' at the beginning of each line denotes edits and additions you have made, and a '-' at the beginning of each line denotes lines removed from the original description.html. The exact name of your patch file is arbitrary, but should be as descriptive as&lt;br /&gt;
possible as in the above example.&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;The output of the diff -u should look &amp;lt;i&amp;gt;something&amp;lt;/i&amp;gt; like this (the exact contents will of course depend on whatever changes you made to the file):&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Index: description.html&lt;br /&gt;
===================================================================&lt;br /&gt;
RCS file: /home/grass/grassrepository/grass6/vector/v.in.ascii/description.html,v&lt;br /&gt;
retrieving revision 1.35&lt;br /&gt;
diff -u -r1.35 description.html&lt;br /&gt;
--- description.html    31 May 2006 13:03:57 -0000      1.35&lt;br /&gt;
+++ description.html    26 Sep 2006 14:35:21 -0000&lt;br /&gt;
@@ -35,6 +35,10 @@&lt;br /&gt;
&lt;br /&gt;
 Use the &amp;lt;b&amp;gt;-z&amp;lt;/b&amp;gt; flag to convert ASCII data into a 3D binary vector map.&lt;br /&gt;
&lt;br /&gt;
+Any edits you make to description.html will show up like this after you run diff -u!&lt;br /&gt;
+Three lines of the original description.html will surround each block of edits you made&lt;br /&gt;
+to provide context.&lt;br /&gt;
+&lt;br /&gt;
 A GRASS ASCII vector file (in &amp;lt;B&amp;gt;standard&amp;lt;/B&amp;gt; mode) may contain a mix of&lt;br /&gt;
 primitives including points, lines, boundaries, centroids, areas, faces,&lt;br /&gt;
@@ -51,6 +55,8 @@&lt;br /&gt;
 &amp;lt;LI&amp;gt;'K': kernel (3D centroid)&amp;lt;/LI&amp;gt;&lt;br /&gt;
 &amp;lt;LI&amp;gt;'A': area (boundary) - better use 'B'; kept only for backward compatibility&amp;lt;/LI&amp;gt;&lt;br /&gt;
 &amp;lt;/UL&amp;gt;&lt;br /&gt;
+&lt;br /&gt;
+This line is another edit made further along in description.html....&lt;br /&gt;
&lt;br /&gt;
The coordinates are listed following the initial line containing the&lt;br /&gt;
 primitive code, the total number of vectors in the series, and the number&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Images can also be inserted in the html help page. See [http://grass.itc.it/grass63/manuals/html63_user/v.voronoi.html v.voronoi] for an example. Note that images won't show up in the Grass manual pages (which are generated from the HTML), so they shouldn't be considered a substitute for an adequate textual description. Be sure to also send the image (preferably png format) along with your documentation patch.&lt;br /&gt;
&lt;br /&gt;
* The following html codes are understood to some extent by g.html2man (brackets removed): A, B, BLINK, BODY, BR, CODE, DD, DL, DT, EM, H2, H3, H4, HEAD, HEADER, HR, I, IMG, LI, OL, P, PRE, SUP, TABLE, TD, TH, TITLE, TR, UL.&lt;br /&gt;
&lt;br /&gt;
* Email a [http://grass.itc.it/community/team.php GRASS developer] your description.html.patch for review &amp;lt;b&amp;gt;&amp;lt;i&amp;gt;as an attachment&amp;lt;/i&amp;gt;&amp;lt;/b&amp;gt;, along with a brief explanation why it is required. Please post a general message about your documentation update to the [http://grass.itc.it/devel/index.php#list GRASS Developer's List] before sending your patch to anyone in particular.&lt;br /&gt;
&lt;br /&gt;
== See also ==&lt;br /&gt;
&lt;br /&gt;
* Job offer [[Project_jobs#Documentation_manager_.28open.29|Documentation manager]]&lt;/div&gt;</summary>
		<author><name>⚠️EricPatton</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=Updating_GRASS_Documentation&amp;diff=5187</id>
		<title>Updating GRASS Documentation</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=Updating_GRASS_Documentation&amp;diff=5187"/>
		<updated>2007-11-07T18:17:08Z</updated>

		<summary type="html">&lt;p&gt;⚠️EricPatton: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;h2&amp;gt;How-to for Updating GRASS Manual Pages&amp;lt;/h2&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
This page will provide general step-by-step instructions for updating and improving GRASS manual pages. Feel free to update and improve this page as well! See also [http://freegis.org/cgi-bin/viewcvs.cgi/grass6/SUBMITTING_DOCS?rev=HEAD&amp;amp;content-type=text/vnd.viewcvs-markup SUBMITTING_DOCS] in the source code.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
As an example, the vector program v.in.ascii will be used to illustrate the steps required to update its manual page. These steps can then be generalized for your case.&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
* To begin, you must obtain the latest GRASS source code from the CVS repositories. Detailed instructions on how to do so can be found [http://grass.itc.it/faq/cvs_howto.html here.]&lt;br /&gt;
* Once you have downloaded the CVS source code, open a terminal and change directory to where the source for a specific GRASS module is located - in this example, something like:&lt;br /&gt;
&amp;lt;pre&amp;gt;/your_cvs_directory/grass6/vector/v.in.ascii&amp;lt;/pre&amp;gt;&lt;br /&gt;
* Open a text editor and make your edits to description.html. Save your edits by overwriting the original description.html.&lt;br /&gt;
* Within a terminal, create a 'unified diff' (a standard way to show changes between two versions of a file) of the GRASS CVS repository version of description.html and your newly edited description.html:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cvs diff -u description.html &amp;gt; v.in.ascii.description.patch&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
This &amp;quot;diff -u&amp;quot; command will create a report in v.in.ascii.description.patch which shows any differences between the version of description.html still on the CVS server and your edited version; a '+' at the beginning of each line denotes edits and additions you have made, and a '-' at the beginning of each line denotes lines removed from the original description.html. The exact name of your patch file is arbitrary, but should be as descriptive as&lt;br /&gt;
possible as in the above example.&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;The output of the diff -u should look &amp;lt;i&amp;gt;something&amp;lt;/i&amp;gt; like this (the exact contents will of course depend on whatever changes you made to the file):&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Index: description.html&lt;br /&gt;
===================================================================&lt;br /&gt;
RCS file: /home/grass/grassrepository/grass6/vector/v.in.ascii/description.html,v&lt;br /&gt;
retrieving revision 1.35&lt;br /&gt;
diff -u -r1.35 description.html&lt;br /&gt;
--- description.html    31 May 2006 13:03:57 -0000      1.35&lt;br /&gt;
+++ description.html    26 Sep 2006 14:35:21 -0000&lt;br /&gt;
@@ -35,6 +35,10 @@&lt;br /&gt;
&lt;br /&gt;
 Use the &amp;lt;b&amp;gt;-z&amp;lt;/b&amp;gt; flag to convert ASCII data into a 3D binary vector map.&lt;br /&gt;
&lt;br /&gt;
+Any edits you make to description.html will show up like this after you run diff -u!&lt;br /&gt;
+Three lines of the original description.html will surround each block of edits you made&lt;br /&gt;
+to provide context.&lt;br /&gt;
+&lt;br /&gt;
 A GRASS ASCII vector file (in &amp;lt;B&amp;gt;standard&amp;lt;/B&amp;gt; mode) may contain a mix of&lt;br /&gt;
 primitives including points, lines, boundaries, centroids, areas, faces,&lt;br /&gt;
@@ -51,6 +55,8 @@&lt;br /&gt;
 &amp;lt;LI&amp;gt;'K': kernel (3D centroid)&amp;lt;/LI&amp;gt;&lt;br /&gt;
 &amp;lt;LI&amp;gt;'A': area (boundary) - better use 'B'; kept only for backward compatibility&amp;lt;/LI&amp;gt;&lt;br /&gt;
 &amp;lt;/UL&amp;gt;&lt;br /&gt;
+&lt;br /&gt;
+This line is another edit made further along in description.html....&lt;br /&gt;
&lt;br /&gt;
The coordinates are listed following the initial line containing the&lt;br /&gt;
 primitive code, the total number of vectors in the series, and the number&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Images can also be inserted in the html help page. See [http://grass.itc.it/grass63/manuals/html63_user/v.voronoi.html v.voronoi] for an example. Note that images won't show up in the Grass manual pages (which are generated from the HTML), so they shouldn't be considered a substitute for an adequate textual description. Be sure to also send the image (preferably png format) along with your documentation patch.&lt;br /&gt;
&lt;br /&gt;
* The following html codes are understood to some extent by g.html2man (brackets removed): A, B, BLINK, BODY, BR, CODE, DD, DL, DT, EM, H2, H3, H4, HEAD, HEADER, HR, I, IMG, LI, OL, P, PRE, SUP, TABLE, TD, TH, TITLE, TR, UL.&lt;br /&gt;
&lt;br /&gt;
* Email a [http://grass.itc.it/community/team.php GRASS developer] your description.html.patch for review &amp;lt;b&amp;gt;&amp;lt;i&amp;gt;as an attachment&amp;lt;/i&amp;gt;&amp;lt;/b&amp;gt;, along with a brief explanation why it is required. Please post a general message about your documentation update to the [http://grass.itc.it/devel/index.php#list GRASS Developer's List] before sending your patch to anyone in particular.&lt;br /&gt;
&lt;br /&gt;
== See also ==&lt;br /&gt;
&lt;br /&gt;
* Job offer [[Project_jobs#Documentation_manager_.28open.29|Documentation manager]]&lt;/div&gt;</summary>
		<author><name>⚠️EricPatton</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=Updating_GRASS_Documentation&amp;diff=5186</id>
		<title>Updating GRASS Documentation</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=Updating_GRASS_Documentation&amp;diff=5186"/>
		<updated>2007-11-07T18:12:56Z</updated>

		<summary type="html">&lt;p&gt;⚠️EricPatton: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;h2&amp;gt;How-to for Updating GRASS Manual Pages&amp;lt;/h2&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
This page will provide general step-by-step instructions for updating and improving GRASS manual pages. Feel free to update and improve this page as well! See also [http://freegis.org/cgi-bin/viewcvs.cgi/grass6/SUBMITTING_DOCS?rev=HEAD&amp;amp;content-type=text/vnd.viewcvs-markup SUBMITTING_DOCS] in the source code.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
As an example, the vector program v.in.ascii will be used to illustrate the steps required to update its manual page. These steps can then be generalized for your case.&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
* To begin, you must obtain the latest GRASS source code from the CVS repositories. Detailed instructions on how to do so can be found [http://grass.itc.it/faq/cvs_howto.html here.]&lt;br /&gt;
* Once you have downloaded the CVS source code, open a terminal and change directory to where the source for a specific GRASS module is located - in this example, something like:&lt;br /&gt;
&amp;lt;pre&amp;gt;/your_cvs_directory/grass6/vector/v.in.ascii&amp;lt;/pre&amp;gt;&lt;br /&gt;
* Open a text editor and make your edits to description.html. Save your edits by overwriting the original description.html.&lt;br /&gt;
* Within a terminal, create a 'unified diff' (a standard way to show changes between two versions of a file) of the GRASS CVS repository version of description.html and your newly edited description.html:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cvs diff -u description.html &amp;gt; v.in.ascii.description.patch&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
This &amp;quot;diff -u&amp;quot; command will create a report in v.in.ascii.description.patch which shows any differences between the version of description.html still on the CVS server and your edited version; a '+' at the beginning of each line denotes edits and additions you have made, and a '-' at the beginning of each line denotes lines removed from the original description.html. The exact name of your patch file is arbitrary, but should be as descriptive as&lt;br /&gt;
possible as in the above example.&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;The output of the diff -u should look &amp;lt;i&amp;gt;something&amp;lt;/i&amp;gt; like this (the exact contents will of course depend on whatever changes you made to the file):&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Index: description.html&lt;br /&gt;
===================================================================&lt;br /&gt;
RCS file: /home/grass/grassrepository/grass6/vector/v.in.ascii/description.html,v&lt;br /&gt;
retrieving revision 1.35&lt;br /&gt;
diff -u -r1.35 description.html&lt;br /&gt;
--- description.html    31 May 2006 13:03:57 -0000      1.35&lt;br /&gt;
+++ description.html    26 Sep 2006 14:35:21 -0000&lt;br /&gt;
@@ -35,6 +35,10 @@&lt;br /&gt;
&lt;br /&gt;
 Use the &amp;lt;b&amp;gt;-z&amp;lt;/b&amp;gt; flag to convert ASCII data into a 3D binary vector map.&lt;br /&gt;
&lt;br /&gt;
+Any edits you make to description.html will show up like this after you run diff -u!&lt;br /&gt;
+Three lines of the original description.html will surround each block of edits you made&lt;br /&gt;
+to provide context.&lt;br /&gt;
+&lt;br /&gt;
 A GRASS ASCII vector file (in &amp;lt;B&amp;gt;standard&amp;lt;/B&amp;gt; mode) may contain a mix of&lt;br /&gt;
 primitives including points, lines, boundaries, centroids, areas, faces,&lt;br /&gt;
@@ -51,6 +55,8 @@&lt;br /&gt;
 &amp;lt;LI&amp;gt;'K': kernel (3D centroid)&amp;lt;/LI&amp;gt;&lt;br /&gt;
 &amp;lt;LI&amp;gt;'A': area (boundary) - better use 'B'; kept only for backward compatibility&amp;lt;/LI&amp;gt;&lt;br /&gt;
 &amp;lt;/UL&amp;gt;&lt;br /&gt;
+&lt;br /&gt;
+This line is another edit made further along in description.html....&lt;br /&gt;
&lt;br /&gt;
The coordinates are listed following the initial line containing the&lt;br /&gt;
 primitive code, the total number of vectors in the series, and the number&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Images can also be inserted in the html help page. See [http://grass.itc.it/grass63/manuals/html63_user/v.voronoi.html v.voronoi] for an example. Note that images won't show up in the Grass manual pages (which are generated from the HTML), so they shouldn't be considered a substitute for an adequate textual description. Be sure to also send the image (preferably png format) along with your documentation patch.&lt;br /&gt;
&lt;br /&gt;
* The following html codes are understood to some extent by g.html2man: &amp;lt;A&amp;gt; &amp;lt;B&amp;gt; &amp;lt;BLINK&amp;gt; &amp;lt;BODY&amp;gt; &amp;lt;BR&amp;gt; &amp;lt;CODE&amp;gt; &amp;lt;DD&amp;gt; &amp;lt;DL&amp;gt; &amp;lt;DT&amp;gt; &amp;lt;EM&amp;gt; &amp;lt;H2&amp;gt; &amp;lt;H3&amp;gt; &amp;lt;H4&amp;gt; &amp;lt;HEAD&amp;gt; &amp;lt;HEADER&amp;gt; &amp;lt;HR&amp;gt; &amp;lt;I&amp;gt; &amp;lt;IMG&amp;gt; &amp;lt;LI&amp;gt; &amp;lt;OL&amp;gt; &amp;lt;P&amp;gt; &amp;lt;PRE&amp;gt; &amp;lt;SUP&amp;gt; &amp;lt;TABLE&amp;gt; &amp;lt;TD&amp;gt; &amp;lt;TH&amp;gt; &amp;lt;TITLE&amp;gt; &amp;lt;TR&amp;gt; &amp;lt;UL&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
* Email a [http://grass.itc.it/community/team.php GRASS developer] your description.html.patch for review &amp;lt;b&amp;gt;&amp;lt;i&amp;gt;as an attachment&amp;lt;/i&amp;gt;&amp;lt;/b&amp;gt;, along with a brief explanation why it is required. Please post a general message about your documentation update to the [http://grass.itc.it/devel/index.php#list GRASS Developer's List] before sending your patch to anyone in particular.&lt;br /&gt;
&lt;br /&gt;
== See also ==&lt;br /&gt;
&lt;br /&gt;
* Job offer [[Project_jobs#Documentation_manager_.28open.29|Documentation manager]]&lt;/div&gt;</summary>
		<author><name>⚠️EricPatton</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=Project_jobs&amp;diff=5183</id>
		<title>Project jobs</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=Project_jobs&amp;diff=5183"/>
		<updated>2007-11-05T17:54:25Z</updated>

		<summary type="html">&lt;p&gt;⚠️EricPatton: /* Interested people */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Open jobs in the GRASS project ==&lt;br /&gt;
&lt;br /&gt;
The growing infrastructure and extended user support requires more efforts to integrate user contributions and to keep things running. This page contains a list of jobs for which we seek volunteers. These jobs descriptions may appear a bit formal, but shall illustrate the needs.&lt;br /&gt;
&lt;br /&gt;
=== Documentation manager (open) ===&lt;br /&gt;
&lt;br /&gt;
GRASS documentation (HTML/MAN pages) need to be frequently revisited and updated. Some pages are still lacking examples or clarity.&lt;br /&gt;
&lt;br /&gt;
Skills: &lt;br /&gt;
* knowledge of standard HTML (ASCII editor is preferred over HTML editor)&lt;br /&gt;
* willingness to use plain text editors to write pages (to avoid that HTML cruft creeps in)&lt;br /&gt;
* familiarity (or willingness to learn use) with GRASS Web site CVS (see [[Working with CVS|instructions]])&lt;br /&gt;
* no programming skills required&lt;br /&gt;
* excellent knowledge of English language (native speaker preferred)&lt;br /&gt;
Tasks:&lt;br /&gt;
* update outdated manual pages&lt;br /&gt;
* homogenize style and layout&lt;br /&gt;
* add relevant graphics/screenshots with credits/CC license into page&lt;br /&gt;
* receive and merge contributions from external contributors; remove offensive HTML tags not understood by g.html2man (say: reduce to simple HTML - see [http://freegis.org/cgi-bin/viewcvs.cgi/grass6/SUBMITTING_DOCS?rev=HEAD&amp;amp;content-type=text/vnd.viewcvs-markup instructions])&lt;br /&gt;
Estimated workload:&lt;br /&gt;
* in average: 1-x h per week&lt;br /&gt;
&lt;br /&gt;
Contact: Markus Neteler&lt;br /&gt;
&lt;br /&gt;
=== Web site contributors (open) ===&lt;br /&gt;
&lt;br /&gt;
Several Web site contributors are desired to update pages and to improve the current structure. A future goal could be the move to a CMS system such as Drupal which would be a major effort. Wolf Bergenheim is currently working on the preparation of a OSGeo based Drupal server for GRASS.&lt;br /&gt;
&lt;br /&gt;
Skills: &lt;br /&gt;
* knowledge of standard HTML (a single PHP function is used to construct menus)&lt;br /&gt;
* willingness to use plain text editors to write pages (to avoid that HTML cruft creeps in)&lt;br /&gt;
* familiarity (or willingness to learn use) with GRASS Web site CVS (see [[Working with CVS|instructions]])&lt;br /&gt;
* no programming skills required&lt;br /&gt;
Tasks:&lt;br /&gt;
* update outdated pages&lt;br /&gt;
* think about and implement &amp;quot;user stories&amp;quot; to make site more attractive&lt;br /&gt;
* think about and implement translation of important pages&lt;br /&gt;
* simplify structure&lt;br /&gt;
* add new screenshots with credits/CC license)&lt;br /&gt;
* regularly check if mirror sites work&lt;br /&gt;
Estimated workload:&lt;br /&gt;
* in average: 1-x h per week&lt;br /&gt;
Contact: Markus Neteler&lt;br /&gt;
&lt;br /&gt;
=== Wiki manager (open) ===&lt;br /&gt;
&lt;br /&gt;
The GRASS wiki (you are using it at the moment) requires continuous monitoring.&lt;br /&gt;
&lt;br /&gt;
Skills: &lt;br /&gt;
* basic knowledge of mediawiki usage&lt;br /&gt;
* no programming skills required&lt;br /&gt;
Tasks:&lt;br /&gt;
* update outdated pages&lt;br /&gt;
* simplify structure where needed (merge pages)&lt;br /&gt;
* clean up [[:Special:Lonelypages|Orphaned pages]] (link, merge or remove)&lt;br /&gt;
* keep [[:Special:Categories|Categories]] up to date (add at bottom of pages where needed)&lt;br /&gt;
* keep an eye on spammers&lt;br /&gt;
Estimated workload:&lt;br /&gt;
* in average: 1h per week&lt;br /&gt;
Contact: Markus Neteler, [[User:Landa|Martin Landa]]&lt;br /&gt;
&lt;br /&gt;
=== Graphic design lead (open) ===&lt;br /&gt;
&lt;br /&gt;
We need someone with good graphic design skills to maintain the artwork used in the various GUIs and the web site. The initial priority is to rework the icons used in the various GUIs and clean up the screenshot gallery.&lt;br /&gt;
&lt;br /&gt;
Skills:&lt;br /&gt;
* Graphic design, graphic design software&lt;br /&gt;
* Artistic&lt;br /&gt;
* A sufficient level of familiarity with the GIS in order to capture the precise meaning of a button's task in a simple picture.&lt;br /&gt;
* No programming experience needed, but it would be helpful if willing to learn a little Tcl in the short term and more wxPython in the long term. (present and future GUI frameworks)&lt;br /&gt;
* Manage binary files in CVS. (fairly simple to learn)&lt;br /&gt;
Tasks:&lt;br /&gt;
* Create new icons for the various GUIs&lt;br /&gt;
* Work with website manager to create, solicit, and maintain screenshot gallery&lt;br /&gt;
* Work with the GUI team to perfect GUI layout and menu presentation.&lt;br /&gt;
* Help promotion and newsletter teams in preparing logo banners, layout ideas, etc.&lt;br /&gt;
Estimated workload:&lt;br /&gt;
* After initial work on icons: 1hr per week&lt;br /&gt;
&lt;br /&gt;
== Accepted positions (which were advertised here) ==&lt;br /&gt;
&lt;br /&gt;
=== Translations manager ===&lt;br /&gt;
&lt;br /&gt;
'''''NEWS: Kindly accepted by Carlos Dávila'''''&lt;br /&gt;
&lt;br /&gt;
The translations manager is responsible for maintaining the translation of GRASS messages&lt;br /&gt;
([http://grass.itc.it/devel/i18n.php translation page; [http://grass.itc.it/mailman/listinfo/translations mailing list])&lt;br /&gt;
&lt;br /&gt;
Skills: &lt;br /&gt;
* knowledge (or willingness to learn use) of translation tools (kbabel, poEDIT)&lt;br /&gt;
* familiarity (or willingness to learn use) with CVS (see [[Working with CVS|instructions]])&lt;br /&gt;
* no programming skills required&lt;br /&gt;
Tasks:&lt;br /&gt;
* work with GRASS CVS-Head (latest GRASS)&lt;br /&gt;
* merging translation contributions (with 'msgmerge' of .po files or simply use [http://mpa.itc.it/markus/useful/po_merge.sh po_merge.sh])&lt;br /&gt;
* invite translators to contribute (ask regularly, find new), make them use recent GRASS&lt;br /&gt;
* create template files for new languages ('make pot')&lt;br /&gt;
* update existing translations '''after''' having received latest submissions from translators ('make update-po')&lt;br /&gt;
* keep headers of .po files intact and up-to-date&lt;br /&gt;
* add new translators to AUTHORS file in source code&lt;br /&gt;
Estimated workload:&lt;br /&gt;
* in average: 1-2h per week or less&lt;br /&gt;
Contact: Markus Neteler&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Public relations manager ===&lt;br /&gt;
&lt;br /&gt;
'''''NEWS: Kindly accepted by Malte Halbey-Martin'''''&lt;br /&gt;
&lt;br /&gt;
Despite the continuous growth of the user community, we seek &amp;quot;GRASS GIS awareness&amp;quot; especially for public administration and companies. A multi-language brochure is needed to promote GRASS in a more effective way. Funding for a high quality print is to be defined.&lt;br /&gt;
&lt;br /&gt;
Skills:&lt;br /&gt;
* communication and design skills&lt;br /&gt;
Tasks:&lt;br /&gt;
* find like-minded people to form a GRASS promotion group&lt;br /&gt;
* communicate the existence of the GRASS project&lt;br /&gt;
* design of a multi-language brochure (both PDF and printed) in collaboration with the [http://wiki.osgeo.org/index.php?title=VisCom OSGeo-VisCom team]&lt;br /&gt;
* create material to illustrate the GRASS functionality&lt;br /&gt;
* contact public administration and professionals in a non-spammy way&lt;br /&gt;
* collect success stories and render them usable for the Web site&lt;br /&gt;
Contact: Markus Neteler&lt;br /&gt;
&lt;br /&gt;
== Interested people ==&lt;br /&gt;
&lt;br /&gt;
While we have to figure out the process, here a list of interested people. Please add yourself:&lt;br /&gt;
&lt;br /&gt;
* Malte Halbey-Martin: Public relations Manager + Web site contributor&lt;br /&gt;
* Dylan Beaudette: Web site contributor (familiar with Drupal CMS)&lt;br /&gt;
* Scott Mitchell: Web site contributor, could possibly do the translation job, if nobody with translation tool experience volunteers&lt;br /&gt;
* Brad Douglas: Public Relations contributor (co-maintainer)&lt;br /&gt;
* Eric Patton: Documentation Manager&lt;br /&gt;
&lt;br /&gt;
== Existing jobs ==&lt;br /&gt;
&lt;br /&gt;
* Bug tracker maintainer: Maciej Sieczka&lt;br /&gt;
** Jachym Chepicky - code patches&lt;br /&gt;
** Scott Mitchell - website patches&lt;br /&gt;
** Martin Landa	- doc patches&lt;br /&gt;
* Newsletter editor-in-chief: Martin Wegmann (+ Paul Kelly and MN) - for OSGeo: Tyler Mitchell&lt;br /&gt;
* CVS maintainer: Bernhard Reiter&lt;br /&gt;
* Main Web site/[http://freegis.org/cgi-bin/viewcvs.cgi/grass6/doc/infrastructure.txt?rev=HEAD&amp;amp;content-type=text/vnd.viewcvs-markup Infrastructure] manager: Markus Neteler&lt;br /&gt;
* Mailing list manager: Markus Neteler&lt;br /&gt;
* Translations manager: Carlos Dávila&lt;br /&gt;
* Wiki manager: Markus Neteler (see above for open position)&lt;br /&gt;
*  Public relations manager: Malte Halbey-Martin&lt;br /&gt;
* Binaries packager:&lt;br /&gt;
** Fedora RPMs: Brad Douglas&lt;br /&gt;
** Mandriva RPMs: Buchan Milne&lt;br /&gt;
** Debian: Francesco Lovergine and the [http://pkg-grass.alioth.debian.org/cgi-bin/wiki.pl Debian GIS Project]&lt;br /&gt;
** winGRASS native: Moritz Lennert, Benjamin Ducke, Huidae Cho, Paul Kelly, Tim Sutton (QGIS/GRASS bundle)&lt;br /&gt;
** MacOSX: William Kyngesburye, Lorenzo Moretti&lt;/div&gt;</summary>
		<author><name>⚠️EricPatton</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=AddOns&amp;diff=3008</id>
		<title>AddOns</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=AddOns&amp;diff=3008"/>
		<updated>2006-11-17T17:54:57Z</updated>

		<summary type="html">&lt;p&gt;⚠️EricPatton: /* Raster add-ons */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page contains references to user contributions and add-ons (the original GRASS GIS software can be downloaded [http://grass.itc.it/download/index.php here]).&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
==Copyright and licensing information==&lt;br /&gt;
&lt;br /&gt;
''Please be sure to include copyright and licensing information in the header comments of your code so that others may know how they can use, extend, modify, and redistribute your work.''&lt;br /&gt;
&lt;br /&gt;
e.g. at the top of a shell script:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/sh&lt;br /&gt;
############################################################################&lt;br /&gt;
#&lt;br /&gt;
# MODULE:       v.in.e00&lt;br /&gt;
#&lt;br /&gt;
# AUTHOR(S):    Markus Neteler, Otto Dassau&lt;br /&gt;
#&lt;br /&gt;
# PURPOSE:      Import E00 data into a GRASS vector map&lt;br /&gt;
#               Imports single and split E00 files (.e00, .e01, .e02 ...)&lt;br /&gt;
#&lt;br /&gt;
# COPYRIGHT:    (c) 2004, 2005 GDF Hannover bR, http://www.gdf-hannover.de&lt;br /&gt;
#&lt;br /&gt;
#               This program is free software under the GNU General Public&lt;br /&gt;
#               License (&amp;gt;=v2). Read the file COPYING that comes with GRASS&lt;br /&gt;
#               for details.&lt;br /&gt;
#&lt;br /&gt;
#############################################################################&lt;br /&gt;
#&lt;br /&gt;
# REQUIREMENTS:&lt;br /&gt;
#      -  avcimport: http://avce00.maptools.org&lt;br /&gt;
&lt;br /&gt;
[script follows]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Shell script coding standards==&lt;br /&gt;
&lt;br /&gt;
Please have a look at our [http://grass.itc.it/grass63/source/SUBMITTING_SCRIPTS Shell script coding standards] before submitting here.&lt;br /&gt;
&lt;br /&gt;
==Miscellaneous Add-ons==&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/utm_which_zone.sh utm_which_zone.sh] is a shell script to determine UTM zone from Lat/Lon input. Requires [http://www.octave.org Octave] to be installed. A shell-only version is [http://dcalvelo.free.fr/grass/utm_which_zone_sh.sh available] which only requires awk.&amp;lt;BR&amp;gt;'''Authors''': Hamish Bowman (Octave part), Markus Neteler (shell script wrapper), Daniel Calvelo (sh+awk version)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Perl scripts for converting data forth and back between Excel files and PostgreSQL: [http://dcalvelo.free.fr/grass/pg2xls.pl pg2xls.pl] reads data from PostgreSQL and produces an excel workbook; [http://dcalvelo.free.fr/grass/xls2sql.pl xls2sql.pl] reads excel files and outputs SQL statements to be fed into an RDBMS. Both scripts need modules from [http://www.cpan.org CPAN], especially [http://search.cpan.org/dist/Spreadsheet-ParseExcel/  Spreadsheet::ParseExcel] for xls2sql.pl and [http://search.cpan.org/~tmtm/Spreadsheet-WriteExcel-FromDB Spreadsheet::WriteExcel::FromDB] and its dependencies for pg2sql.pl. Check the source headers for more info.&amp;lt;BR&amp;gt;'''Authors:''' Daniel Calvelo (xls2sql.pl), Markus Neteler (pg2xls.pl)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://dream.lrrl.arch.tu-muenchen.de/~wqual/perl/dbf2sql.tgz dbf2sql] is a Perl script for translating dbf-tables into a sql-command. dbf-tables are read using dbfdump-command from dbd-xbase-perl module ([http://search.cpan.org/~janpaz/DBD-XBase-0.241/ dbd::xbase] and [http://search.cpan.org/~jv/Getopt-Long-2.35/lib/Getopt/Long.pm getopt::long] have to be installed from CPAN first). There are problems, if the last column of the table contains characters. Suggestions for improvements welcome! &amp;lt;BR&amp;gt;'''Author:'''Wolfgang Qual&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.igc.usp.br/pessoais/guano/downloads/azimuth2.c azimuth2.c] is a small C program to calculate the azimuth and length of vector lines exported by GRASS-GIS as ASCII files (like this: v.out.ascii input=vector output=ascii format=standard). It is useful for create rose diagrams of lineament maps. Improvements on the original code after suggestions by Örs Téglásy, Hungary.&amp;lt;BR&amp;gt;'''Author:''' Carlos Henrique Grohmann&lt;br /&gt;
&lt;br /&gt;
==GRASS 5.x==&lt;br /&gt;
&lt;br /&gt;
===Vector add-ons for GRASS 5===&lt;br /&gt;
&lt;br /&gt;
* See here: http://grass.itc.it/download/addons.php&lt;br /&gt;
&lt;br /&gt;
===Raster add-ons for GRASS 5===&lt;br /&gt;
&lt;br /&gt;
* See here: http://grass.itc.it/download/addons.php&lt;br /&gt;
&lt;br /&gt;
* [http://www.valledemexico.ambitiouslemon.com/gwmodelling.html r.gmtg] The groundwater modelling tool for grass. A module to use MODFLOW within GRASS. &amp;lt;BR&amp;gt;'''Author''': Jaime Carrera&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==GRASS 6.x==&lt;br /&gt;
&lt;br /&gt;
===Vector add-ons===&lt;br /&gt;
&lt;br /&gt;
* [http://geni.ath.cx/grass/v.out.gmt v.out.gmt] is a shell script that exports a polygon vector file into GMT xy file. psbasemap code was copied from Hamish's r.out.gmt. &amp;lt;BR&amp;gt;'''Author:''' Huidae Cho, Hamish Bowman, Dylan Beaudette&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.pois.org/florian/downloads/grass/v.strahler.tgz v.strahler] is a module that calculates the Strahler Order for all lines of a given dendritic network. &amp;lt;BR&amp;gt;'''Author:''' Florian Kindl&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://svg.cc/grass/index.html v.out.svg] is a module that exports SVG notation along with optional attribute data directly from GRASS 6.x vector layers. &amp;lt;BR&amp;gt;'''Author:''' Klaus Förster&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://les-ejk.cz/programs/trees.html v.trees3d] is a module for making 3D trees from input vector point file. &amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.public.asu.edu/~cmbarton/files/grass_scripts/v.lda v.lda] is a shell script for calculating Ian Johnson's (U. Sidney) Local Density Analysis values to measure clustering of point data at different neighborhood radii. There is an option to create a simple line graph of the results. There have been reports of problems creating the line graph on Cygwin installations of GRASS.&amp;lt;BR&amp;gt;'''Author:''' Michael Barton &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.public.asu.edu/~cmbarton/files/grass_scripts/v.append v.append] is a shell script combining two vector files AND their associated attribute tables. The vector files should be of the same type and, for best results, should have identically formatted attribute tables.&amp;lt;BR&amp;gt;'''Author:''' Michael Barton &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.shockfamily.net/cedric/grass/v.group v.group] generates a new vector map with the same geometry as an existing map. The new map has categories and a table based on grouping by the values in certain columns of the existing map's table. The values in these columns are preserved in the table for the new map. It's like a v.reclass that preserves data.&amp;lt;BR&amp;gt;'''Author:''' Cedric Shock&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/v.out.ascii.db v.out.ascii.db] is a shell script for exporting vector point data coordinates and selected attribute columns to either a file or to the console.&amp;lt;BR&amp;gt;'''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.fle.czu.cz/~jachym/programs/v.rasterbounds v.rasterbounds] is a shell script for creating polygon-vector file of rasterfile boundaries. The best version of GRASS is 6.1+. If you are using GRASS &amp;lt; 6.1, you  have to be in the same mapset as your raster maps are from.&amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.fle.czu.cz/~jachym/programs/v.3Dtin v.3Dtin] is a shell script for making 3D-vector of the 2D ouput from ''v.delauny''. &amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.clubwebcanada.ca/twiens/v.sample.buffer.tgz v.sample.buffer] is a shell script that samples rasters in buffers of a specified size around features in a specified vector file. Sampling results are added as attributes to the vector file. This script was designed for sampling vegetation indices and DEM derived attributes for bird point counts. Sampling results can be one or more basic statistics such as mean, range, max, etc.&amp;lt;BR&amp;gt;'''Author:''' Trevor Wiens&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.gfosservices.it/materiale_didattico/moduli/v.variogram.tar.gz v.variogram] is a script that create an omnidirectional experimental semi-variogram. This scripts require R-statistics software installed on your machine. Please see a [http://grass.itc.it/pipermail/statsgrass/2006-October/000455.html reply] on the STATGRASS list for changes need to the script to run on spgrass6 &amp;gt;= 0.3 and sp &amp;gt;= 0.9. &amp;lt;BR&amp;gt;'''Author:''' Ivan Marchesini, Pierluigi De Rosa.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.gfosservices.it/materiale_didattico/moduli/v.krige.tar.gz v.krige] is a script that  do a surface interpolation from vector point data by Kriging method.The interpolated value of a cell is determined by using an omnidirectional variogram model fitted starting from model parameter given by user desumed from the experimental semi variogram produced by v.variogram.&amp;lt;BR&amp;gt;'''Author:''' Ivan Marchesini, Pierluigi De Rosa&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://ngeo.de/grassstuff/v.lmeasure v.lmeasure] and [http://ngeo.de/grassstuff/v.revlmeasure v.revlmeasure] are two perl scripts that place equidistant vector points along a given arbitrary vector line starting from the beginning or end of the vector line, respectively. Resulting  vector points are labeled with the distance from origin.&amp;lt;BR&amp;gt;'''Author:''' Mats Schuh&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://david.p.finlayson.googlepages.com/v.swathwidth v.swathwidth] creates a vector map representing the sea bottom coverage of a multibeam (swath) sonar survey.&amp;lt;BR&amp;gt;'''Author:''' David Finlayson&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://kufaya.googlepages.com/v.flip.tar.gz v.flip] flips the direction of selected vector lines.&amp;lt;BR&amp;gt;'''Author:''' Maciej Sieczka&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://phygeo7.geo.uni-augsburg.de/gis2/scripts/v.digatt v.digatt] (shell script) Interactively assign numeric table attributes to series of vector objects. It is meant to be effective by avoiding to type in the attribute value for all single objects again and again. The user is prompted for typing in an attribute value which is assigned to all objects selected by mouseclick afterwards. Next the display is redrawn after updating the table column. Zooming allows to change the region before the old value can be reused or a new one can be typed in (or copied by mouse from another object) in order to assign it to the next series of objects etc. It is tested not very extensively yet. Therefore better work with a copy of your map and consider using v.digit or d.what.vect -e alternatively. [http://phygeo7.geo.uni-augsburg.de/gis2/scripts/v.digatt.png screenshot]. &amp;lt;BR&amp;gt;'''Author:''' Andreas Philipp&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://k153-85.fsv.cvut.cz/cgi-bin/viewcvs.cgi/grass6/vector/v.in.gama/ v.in.gama] converts [http://www.gnu.org/software/gama/ GNU GaMa] XML output file to a GRASS vector map layer.&amp;lt;br /&amp;gt;'''Author:''' Martin Landa&lt;br /&gt;
&lt;br /&gt;
===Raster add-ons===&lt;br /&gt;
&lt;br /&gt;
* [http://www.igc.usp.br/pessoais/guano/downloads/r.roughness r.roughness] is a shell script to calculate the surface roughness of a DEM, using r.surf.area and v.surf.rst. (for GRASS versions 6.1 and above)&lt;br /&gt;
* [http://www.igc.usp.br/pessoais/guano/downloads/r.roughness60 r.roughness60] - for GRASS versions 6.0.X&amp;lt;BR&amp;gt;'''Author:''' Carlos Henrique Grohmann&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://les-ejk.cz/programs/grass/r.gauss.tgz r.gauss] is Gaussian and Laplacian of Gaussian filter for GRASS. It is written in C language.&amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://les-ejk.cz/programs/grass/r.mlv.tgz r.mlv] is Mean of least variance filter for GRASS. It is an edge-preserving (or even edge-enhacing) filter, which should serve for removing additive noise from images. It is written in C language.&amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://les-ejk.cz/programs/grass/r.bilateral.tgz r.bilateral] Bilateral filter is an edge-preserving filter, which combines domain and range filtering. It is written in C language.&amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://les-ejk.cz/programs/zc.pl Zero crossing] is a simple Perl script, finds the ,,zero crossings`` from the Laplacian of Gaussian filter (see above). It is really &amp;lt;em&amp;gt;very&amp;lt;/em&amp;gt; simple, the edges don't need to be really on that pixel, where they are detected, no interpolation is performed.&amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
     '''Usage:'''&lt;br /&gt;
     zc.pl -i input -o output |r.mapcalc&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://les-ejk.cz/programs/local_max.pl Local maxima] is a Perl script for &amp;lt;code&amp;gt;r.mapcalc&amp;lt;/code&amp;gt;. It detects local maxima of the image.&amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
     '''Usage:'''&lt;br /&gt;
     local_maxima.pl -i input -o output -s matrix_size|r.mapcalc&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/r.out.gmt r.out.gmt] is a GRASS script for exporting a GRASS raster map into a [[http://www.soest.hawaii.edu/gmt/ GMT]] grid file. It also creates a GMT color table from the data and can generate some GMT commands for plotting a postscript file. (code is experimental, but functional)&amp;lt;BR&amp;gt;see  also http://169.237.35.250/~dylan/grass_user_group/#GMT_and_GRASS-overview&amp;lt;BR&amp;gt;'''Authors:''' Hamish Bowman, Dylan Beaudette&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://geni.ath.cx/grass/r.out.gmt yet another r.out.gmt] is a modified version of Hamish's r.out.gmt.  Added options for title, xlabel, ylabel, comment, and map width.  Removed any settings that can be changed by gmtset for more flexibility.&amp;lt;BR&amp;gt;'''Author:''' Hamish Bowman, Huidae Cho, Dylan Beaudette&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/r.pack r.pack] and [http://bambi.otago.ac.nz/hamish/grass/r.unpack r.unpack] are two GRASS scripts for transfering raster maps to another computer as a single file.&amp;lt;BR&amp;gt;'''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/dominant_dir.m dominant_dir.m] and [http://bambi.otago.ac.nz/hamish/grass/calc_terraflow_dir.m calc_terraflow_dir.m] are two Matlab scripts for determining the dominant flow direction from a r.terraflow MFD map and converting into a GRASS aspect map for use with d.rast.arrow, etc.&amp;lt;BR&amp;gt;'''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www-pool.math.tu-berlin.de/~soeren/grass/modules/ r.in.onearth] for download and import satellite images direct from the NASA onearth WMS server into GRASS.&amp;lt;BR&amp;gt;'''Author:''' Soeren Gebbert&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.shockfamily.net/cedric/grass/r.tileset r.tileset] generates a list of tiles and sizes in a source projection that cover the region in the current database with appropriate resolution. The size of individual tiles can be constrained. Only tiles intersecting the current region are returned. These tilings are appropriate for requesting data from another projection to meet the specifications of the current region. For example, it could be used to generate tile requests to a latitude / longitude WMS server like this &amp;lt;code&amp;gt;r.tileset -w sourceproj=&amp;quot;+init=epsg:4326&amp;quot;&amp;lt;/code&amp;gt;.&amp;lt;BR&amp;gt;'''Author:''' Cedric Shock&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [ftp://gsca.nrcan.gc.ca/outgoing/Patton/Grass/Scripts/r.csr.tar.bz2 r.csr] integrates several Grass programs to produce colored, shaded-relief rasters in one step. Accepts single or multiple elevation/bathymetry maps as input; optionally will fill data holidays with 3x3 median filter, multiple times, if required; can apply color maps from a) input raster, b) another raster in MAPSET, or c) from a rules file; otherwise, rainbow colorbar is applied. Output colored, shaded-relief rasters can optionally be exported to tiff format and archived using tar with gzip/bzip2 compression if appropriate flags are given. Shading parameters can be modified, though useful defaults are given. &amp;lt;BR&amp;gt;'''Author:''' Eric Patton&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [ftp://gsca.nrcan.gc.ca/outgoing/Patton/Grass/Scripts/r.fragment.tar.bz2 r.fragment] fragments a raster into a user-defined set of smaller tiles according to an input number of rows and columns. Optionally, a null value threshold can be set to filter out candidate tiles that would have a large percentage of null cells. &amp;lt;BR&amp;gt;'''Author:''' Eric Patton&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://david.p.finlayson.googlepages.com/r.eucdist r.eucdist] creates a raster map estimating the euclidean distance from known cells.&amp;lt;BR&amp;gt;'''Author:''' David Finlayson&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://david.p.finlayson.googlepages.com/r.smoothpatch r.smoothpatch] creates a composite of two rasters using a distance-weighted average across the transition to smooth the edges.&amp;lt;BR&amp;gt;'''Author:''' David Finlayson&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.faunalia.it/download/r_li/ r.li] is a more flexible and faster replacement of the old r.le. Please note: r.li is now on grass-cvs. --[[User:Cavallini|Cavallini]] 16:50, 6 November 2006 (CET)&amp;lt;BR&amp;gt;&lt;br /&gt;
[http://www.faunalia.com/mediawiki/index.php/R_li Wiki page]&amp;lt;BR&amp;gt;&lt;br /&gt;
'''Authors:''' Claudio Porta, Davide Spano, Serena Pallecchi, [http://www.faunalia.it Faunalia]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://kufaya.googlepages.com/r.surf.nnbathy.tar.gz r.surf.nnbathy] interpolates surface from raster input using [http://www.marine.csiro.au/~sakov/ nn] natural neighbor intepolation library.&amp;lt;BR&amp;gt;'''Author:''' Maciej Sieczka&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
* [http://www.star.ait.ac.th/~yann/sebal/r.usler.tar.gz r.usler] creates USLE R factor (Rainfall erosivity) from annual precipitations. It has 4 methods, Morgan, Roose, Foster and El-Swaify to choose from.&amp;lt;BR&amp;gt;'''Authors:''' Natalia Medvedeva and Yann Chemin&lt;br /&gt;
* [http://www.star.ait.ac.th/~yann/sebal/r.uslek.tar.gz r.uslek] creates USLE K factor (soil erodibility) from sand,clay,silt fractions and organic matter fraction. Based on USDA 1951 (p209) quoted in FAO World Soil CD, and from some generic [soil class+OM] to K conversion table.Update: Fixed input file swap and silty-clay class recognition.&amp;lt;BR&amp;gt;'''Author:''' Yann Chemin&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
* [http://www.star.ait.ac.th/~yann/sebal/r.albedo.tar.gz r.albedo] creates Albedo. Albedo is the shortwave surface reflectance in the range of 0.3-3 micro-meters. This module takes Modis, Aster, Landsat or AVHRR individual surface reflectance bands  to calculate Albedo. This module is a precursor to r.sun or any Energy-Balance related processing.&amp;lt;BR&amp;gt;'''Author:''' Yann Chemin&lt;br /&gt;
* [http://www.star.ait.ac.th/~yann/sebal/ r.eb.*] are a set of 13 GRASS modules that together perform the main functions of the SEBAL model (Bastiaanssen, 1995). Those functions include (but are not limited to) Soil heat flux, sensible heat flux, net radiation, evaporative fraction at satellite overpass, diurnal actual evapotranspiration, momentum roughness length, etc. These modules are also part of any Energy-Balance related processing.&amp;lt;BR&amp;gt;'''Author:''' Yann Chemin&lt;br /&gt;
* [http://www.star.ait.ac.th/~yann/sebal/r.evapo.potrad.tar.gz r.evapo.potrad] create diurnal Potential evapotranspiration assuming all net radiation becomes ET, according to SEBAL model (Bastiaanssen, 1995). This module also has a flag for diurnal net radiation as required by SEBAL in [http://www.star.ait.ac.th/~yann/sebal/r.eb.eta.tar.gz r.eb.eta]. &amp;lt;BR&amp;gt;'''Author:''' Yann Chemin&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
* [http://www.star.ait.ac.th/~yann/sebal/r.vi.tar.gz r.vi] creates a given Vegetation index from a list of 13 of them, most of them only requiring Red and NIR. Updated to accept all types of input data. &amp;lt;BR&amp;gt;'''Authors:''' Baburao Kamble and Yann Chemin&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
* [http://www.star.ait.ac.th/~yann/sebal/r.dn2ref.l7.tar.gz r.dn2ref.l7] [http://www.star.ait.ac.th/~yann/sebal/r.dn2ref.ast.tar.gz r.dn2ref.ast] create top of atmosphere reflectance for Landsat 7ETM+ and ASTER. These modules also have a flag for radiance output. Updated r.dn2ref.l7 to read .met calibration file. [http://www.star.ait.ac.th/~yann/sebal/r.dn2full.l7.tar.gz r.dn2full.l7] is an attempt to get all bands of Landsat7 calibrated and corrected to either reflectance or temperature, reads only the met file. &amp;lt;BR&amp;gt;'''Author:''' Yann Chemin&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
* [http://www.star.ait.ac.th/~yann/sebal/r.biomass.tar.gz r.biomass] create biomass growth map from fPAR, lightuse efficiency, water availability (or evap.fraction), Lat, doy and tsw . &amp;lt;BR&amp;gt;'''Author:''' Yann Chemin&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
* [http://www.pois.org/florian/downloads/grass/r.boxcount.tgz r.boxcount] and [http://www.pois.org/florian/downloads/grass/r.boxcount.sh.tgz r.boxcount.sh] calculate the fractal dimension for a given map. These are versions for grass6 of [http://www.ucl.ac.uk/~tcrnmar/ Mark Lake's modules] for grass43.&amp;lt;br&amp;gt; '''Authors:''' Mark Lake, grass6 port: Florian Kindl&lt;br /&gt;
&lt;br /&gt;
===General add-ons===&lt;br /&gt;
&lt;br /&gt;
* [http://www.gdf-hannover.de/dassau/g.laptop/g.laptop.sh g.laptop.sh] is an interactive shell script to extract raster and vector data from current Location into a new one. Data can be copied or extracted in current or original resolution and region extend. This script was written to extract smaller parts of a GRASS location to be able to present them on a laptop without the necessity to transfer huge data. Maps do not have to be in the same mapset.&amp;lt;BR&amp;gt;'''Author:''' Otto Dassau &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* '''''Readline completion''''' for GRASS commands under the bash shell: [http://www.sorokine.info/grass-complete/ grass-complete] won't clutter the environment but needs to be installed; [http://dcalvelo.free.fr/grass/grass_rlcompleter.sh grass_rlcompleter.sh] needs almost no installation but will pollute the environment. Grass-Complete currently requires Bash version 2.05 for proper install.&amp;lt;BR&amp;gt;'''Author:''' Alexandre Sorokine (grass-complete), Daniel Calvelo (grass_rlcompleter.sh)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
=== Imagery add-ons ===&lt;br /&gt;
&lt;br /&gt;
* [http://www.star.ait.ac.th/~yann/6s/i.atcorr.1.3.1b.tar.gz i.atcorr] Atmospheric Correction using Christo Zietsman's implementation of 6s code in C/C++. The Old Page was rescued by Christo recently and copied [http://www.star.ait.ac.th/~yann/6s/ here]. Compiled in CVS but not tested. Update: The source code is somehow functional in GRASS CVS, it is processing and creates output map, but does not accept non-default input. Not Tested/Validated! &amp;lt;BR&amp;gt;'''Author:''' Christo Zietsman&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/gdal/i.warp61 i.warp61] is a shell script that will use gdalwarp to rectify a raw input image using thin plate splines. The map should be imported into GRASS with r.in.gdal and GCPs set with i.points. Input is the raw image (GeoTIFF, JPEG, etc). Output is a GeoTIFF in the imagery group's target location's map projection. Requires a recent (early 2006) version of GRASS 6.1, or newer.&amp;lt;BR&amp;gt;'''Author:''' Hamish Bowman&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Display add-ons ===&lt;br /&gt;
&lt;br /&gt;
* [http://www.ornl.gov/sci/gist/software/grass/ pd-GRASS]: Parallel Display for GRASS GIS&amp;lt;BR&amp;gt;'''Author:''' Alex Sorokine&lt;br /&gt;
&lt;br /&gt;
==== [[IconSymbols]] ====&lt;br /&gt;
* [[IconSymbols|Symbols]] which can be used with ''d.vect, d.graph'', and ''ps.map''.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/d.frame.quarter d.frame.quarter] is a shell script that will split the display into four quadrants using ''d.frame''. Individual frames are named ''uno, dos, tres, cuatro'', and ''full_screen''.&amp;lt;BR&amp;gt;'''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [ftp://gsca.nrcan.gc.ca/outgoing/Patton/Grass/Scripts/d.hyperlink.tar.bz2 d.hyperlink] is an interactive shell script that allows the viewing of hyperlinked images from a vector's attribute table in an external image viewer. Queries can be made via SQL statements or interactive mouse-clicking. The attribute table must be pre-populated with a column containing the image to link the vector to; the user also specifies the image folder in the current MAPSET where the images are located. The script currently supports gimp, Eye of Gnome, gthumb, gpdf, and Inkscape image viewers. &amp;lt;BR&amp;gt;'''Author: '''Eric Patton&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/d.stations d.stations] is a shell script that quickly displays vector points (or sites for GRASS 5.4 and below).&amp;lt;BR&amp;gt;'''Author:''' Hamish Bowman &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/d.varea d.varea] is a shell script that quickly displays vector areas.&amp;lt;BR&amp;gt;'''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
===Postscript add-ons===&lt;br /&gt;
&lt;br /&gt;
* [http://les-ejk.cz/programs/grass/ps.atlas ps.atlas] is a shell script that makes more maps on current region according to input *.psmap file. General map can be stored as vector file. The resulting *.eps maps can be automatically converted to *.pdf files.&amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [[ps.map scripts|ps.map samples/templates]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== [[AreaFillPatterns]] ====&lt;br /&gt;
* Hatches for ps.map's vareas&lt;br /&gt;
&lt;br /&gt;
===GRASS and UMN Mapserver===&lt;br /&gt;
&lt;br /&gt;
* [http://www.mail-archive.com/mapserver-users@lists.umn.edu/msg00086.html See interesting posting]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Community]]&lt;br /&gt;
[[Category:Development]]&lt;br /&gt;
[[Category:Documentation]]&lt;br /&gt;
[[Category:Installation]]&lt;/div&gt;</summary>
		<author><name>⚠️EricPatton</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=AddOns&amp;diff=3007</id>
		<title>AddOns</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=AddOns&amp;diff=3007"/>
		<updated>2006-11-17T17:53:32Z</updated>

		<summary type="html">&lt;p&gt;⚠️EricPatton: /* IconSymbols */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page contains references to user contributions and add-ons (the original GRASS GIS software can be downloaded [http://grass.itc.it/download/index.php here]).&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
==Copyright and licensing information==&lt;br /&gt;
&lt;br /&gt;
''Please be sure to include copyright and licensing information in the header comments of your code so that others may know how they can use, extend, modify, and redistribute your work.''&lt;br /&gt;
&lt;br /&gt;
e.g. at the top of a shell script:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/sh&lt;br /&gt;
############################################################################&lt;br /&gt;
#&lt;br /&gt;
# MODULE:       v.in.e00&lt;br /&gt;
#&lt;br /&gt;
# AUTHOR(S):    Markus Neteler, Otto Dassau&lt;br /&gt;
#&lt;br /&gt;
# PURPOSE:      Import E00 data into a GRASS vector map&lt;br /&gt;
#               Imports single and split E00 files (.e00, .e01, .e02 ...)&lt;br /&gt;
#&lt;br /&gt;
# COPYRIGHT:    (c) 2004, 2005 GDF Hannover bR, http://www.gdf-hannover.de&lt;br /&gt;
#&lt;br /&gt;
#               This program is free software under the GNU General Public&lt;br /&gt;
#               License (&amp;gt;=v2). Read the file COPYING that comes with GRASS&lt;br /&gt;
#               for details.&lt;br /&gt;
#&lt;br /&gt;
#############################################################################&lt;br /&gt;
#&lt;br /&gt;
# REQUIREMENTS:&lt;br /&gt;
#      -  avcimport: http://avce00.maptools.org&lt;br /&gt;
&lt;br /&gt;
[script follows]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Shell script coding standards==&lt;br /&gt;
&lt;br /&gt;
Please have a look at our [http://grass.itc.it/grass63/source/SUBMITTING_SCRIPTS Shell script coding standards] before submitting here.&lt;br /&gt;
&lt;br /&gt;
==Miscellaneous Add-ons==&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/utm_which_zone.sh utm_which_zone.sh] is a shell script to determine UTM zone from Lat/Lon input. Requires [http://www.octave.org Octave] to be installed. A shell-only version is [http://dcalvelo.free.fr/grass/utm_which_zone_sh.sh available] which only requires awk.&amp;lt;BR&amp;gt;'''Authors''': Hamish Bowman (Octave part), Markus Neteler (shell script wrapper), Daniel Calvelo (sh+awk version)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Perl scripts for converting data forth and back between Excel files and PostgreSQL: [http://dcalvelo.free.fr/grass/pg2xls.pl pg2xls.pl] reads data from PostgreSQL and produces an excel workbook; [http://dcalvelo.free.fr/grass/xls2sql.pl xls2sql.pl] reads excel files and outputs SQL statements to be fed into an RDBMS. Both scripts need modules from [http://www.cpan.org CPAN], especially [http://search.cpan.org/dist/Spreadsheet-ParseExcel/  Spreadsheet::ParseExcel] for xls2sql.pl and [http://search.cpan.org/~tmtm/Spreadsheet-WriteExcel-FromDB Spreadsheet::WriteExcel::FromDB] and its dependencies for pg2sql.pl. Check the source headers for more info.&amp;lt;BR&amp;gt;'''Authors:''' Daniel Calvelo (xls2sql.pl), Markus Neteler (pg2xls.pl)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://dream.lrrl.arch.tu-muenchen.de/~wqual/perl/dbf2sql.tgz dbf2sql] is a Perl script for translating dbf-tables into a sql-command. dbf-tables are read using dbfdump-command from dbd-xbase-perl module ([http://search.cpan.org/~janpaz/DBD-XBase-0.241/ dbd::xbase] and [http://search.cpan.org/~jv/Getopt-Long-2.35/lib/Getopt/Long.pm getopt::long] have to be installed from CPAN first). There are problems, if the last column of the table contains characters. Suggestions for improvements welcome! &amp;lt;BR&amp;gt;'''Author:'''Wolfgang Qual&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.igc.usp.br/pessoais/guano/downloads/azimuth2.c azimuth2.c] is a small C program to calculate the azimuth and length of vector lines exported by GRASS-GIS as ASCII files (like this: v.out.ascii input=vector output=ascii format=standard). It is useful for create rose diagrams of lineament maps. Improvements on the original code after suggestions by Örs Téglásy, Hungary.&amp;lt;BR&amp;gt;'''Author:''' Carlos Henrique Grohmann&lt;br /&gt;
&lt;br /&gt;
==GRASS 5.x==&lt;br /&gt;
&lt;br /&gt;
===Vector add-ons for GRASS 5===&lt;br /&gt;
&lt;br /&gt;
* See here: http://grass.itc.it/download/addons.php&lt;br /&gt;
&lt;br /&gt;
===Raster add-ons for GRASS 5===&lt;br /&gt;
&lt;br /&gt;
* See here: http://grass.itc.it/download/addons.php&lt;br /&gt;
&lt;br /&gt;
* [http://www.valledemexico.ambitiouslemon.com/gwmodelling.html r.gmtg] The groundwater modelling tool for grass. A module to use MODFLOW within GRASS. &amp;lt;BR&amp;gt;'''Author''': Jaime Carrera&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==GRASS 6.x==&lt;br /&gt;
&lt;br /&gt;
===Vector add-ons===&lt;br /&gt;
&lt;br /&gt;
* [http://geni.ath.cx/grass/v.out.gmt v.out.gmt] is a shell script that exports a polygon vector file into GMT xy file. psbasemap code was copied from Hamish's r.out.gmt. &amp;lt;BR&amp;gt;'''Author:''' Huidae Cho, Hamish Bowman, Dylan Beaudette&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.pois.org/florian/downloads/grass/v.strahler.tgz v.strahler] is a module that calculates the Strahler Order for all lines of a given dendritic network. &amp;lt;BR&amp;gt;'''Author:''' Florian Kindl&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://svg.cc/grass/index.html v.out.svg] is a module that exports SVG notation along with optional attribute data directly from GRASS 6.x vector layers. &amp;lt;BR&amp;gt;'''Author:''' Klaus Förster&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://les-ejk.cz/programs/trees.html v.trees3d] is a module for making 3D trees from input vector point file. &amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.public.asu.edu/~cmbarton/files/grass_scripts/v.lda v.lda] is a shell script for calculating Ian Johnson's (U. Sidney) Local Density Analysis values to measure clustering of point data at different neighborhood radii. There is an option to create a simple line graph of the results. There have been reports of problems creating the line graph on Cygwin installations of GRASS.&amp;lt;BR&amp;gt;'''Author:''' Michael Barton &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.public.asu.edu/~cmbarton/files/grass_scripts/v.append v.append] is a shell script combining two vector files AND their associated attribute tables. The vector files should be of the same type and, for best results, should have identically formatted attribute tables.&amp;lt;BR&amp;gt;'''Author:''' Michael Barton &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.shockfamily.net/cedric/grass/v.group v.group] generates a new vector map with the same geometry as an existing map. The new map has categories and a table based on grouping by the values in certain columns of the existing map's table. The values in these columns are preserved in the table for the new map. It's like a v.reclass that preserves data.&amp;lt;BR&amp;gt;'''Author:''' Cedric Shock&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/v.out.ascii.db v.out.ascii.db] is a shell script for exporting vector point data coordinates and selected attribute columns to either a file or to the console.&amp;lt;BR&amp;gt;'''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.fle.czu.cz/~jachym/programs/v.rasterbounds v.rasterbounds] is a shell script for creating polygon-vector file of rasterfile boundaries. The best version of GRASS is 6.1+. If you are using GRASS &amp;lt; 6.1, you  have to be in the same mapset as your raster maps are from.&amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.fle.czu.cz/~jachym/programs/v.3Dtin v.3Dtin] is a shell script for making 3D-vector of the 2D ouput from ''v.delauny''. &amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.clubwebcanada.ca/twiens/v.sample.buffer.tgz v.sample.buffer] is a shell script that samples rasters in buffers of a specified size around features in a specified vector file. Sampling results are added as attributes to the vector file. This script was designed for sampling vegetation indices and DEM derived attributes for bird point counts. Sampling results can be one or more basic statistics such as mean, range, max, etc.&amp;lt;BR&amp;gt;'''Author:''' Trevor Wiens&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.gfosservices.it/materiale_didattico/moduli/v.variogram.tar.gz v.variogram] is a script that create an omnidirectional experimental semi-variogram. This scripts require R-statistics software installed on your machine. Please see a [http://grass.itc.it/pipermail/statsgrass/2006-October/000455.html reply] on the STATGRASS list for changes need to the script to run on spgrass6 &amp;gt;= 0.3 and sp &amp;gt;= 0.9. &amp;lt;BR&amp;gt;'''Author:''' Ivan Marchesini, Pierluigi De Rosa.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.gfosservices.it/materiale_didattico/moduli/v.krige.tar.gz v.krige] is a script that  do a surface interpolation from vector point data by Kriging method.The interpolated value of a cell is determined by using an omnidirectional variogram model fitted starting from model parameter given by user desumed from the experimental semi variogram produced by v.variogram.&amp;lt;BR&amp;gt;'''Author:''' Ivan Marchesini, Pierluigi De Rosa&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://ngeo.de/grassstuff/v.lmeasure v.lmeasure] and [http://ngeo.de/grassstuff/v.revlmeasure v.revlmeasure] are two perl scripts that place equidistant vector points along a given arbitrary vector line starting from the beginning or end of the vector line, respectively. Resulting  vector points are labeled with the distance from origin.&amp;lt;BR&amp;gt;'''Author:''' Mats Schuh&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://david.p.finlayson.googlepages.com/v.swathwidth v.swathwidth] creates a vector map representing the sea bottom coverage of a multibeam (swath) sonar survey.&amp;lt;BR&amp;gt;'''Author:''' David Finlayson&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://kufaya.googlepages.com/v.flip.tar.gz v.flip] flips the direction of selected vector lines.&amp;lt;BR&amp;gt;'''Author:''' Maciej Sieczka&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://phygeo7.geo.uni-augsburg.de/gis2/scripts/v.digatt v.digatt] (shell script) Interactively assign numeric table attributes to series of vector objects. It is meant to be effective by avoiding to type in the attribute value for all single objects again and again. The user is prompted for typing in an attribute value which is assigned to all objects selected by mouseclick afterwards. Next the display is redrawn after updating the table column. Zooming allows to change the region before the old value can be reused or a new one can be typed in (or copied by mouse from another object) in order to assign it to the next series of objects etc. It is tested not very extensively yet. Therefore better work with a copy of your map and consider using v.digit or d.what.vect -e alternatively. [http://phygeo7.geo.uni-augsburg.de/gis2/scripts/v.digatt.png screenshot]. &amp;lt;BR&amp;gt;'''Author:''' Andreas Philipp&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://k153-85.fsv.cvut.cz/cgi-bin/viewcvs.cgi/grass6/vector/v.in.gama/ v.in.gama] converts [http://www.gnu.org/software/gama/ GNU GaMa] XML output file to a GRASS vector map layer.&amp;lt;br /&amp;gt;'''Author:''' Martin Landa&lt;br /&gt;
&lt;br /&gt;
===Raster add-ons===&lt;br /&gt;
&lt;br /&gt;
* [http://www.igc.usp.br/pessoais/guano/downloads/r.roughness r.roughness] is a shell script to calculate the surface roughness of a DEM, using r.surf.area and v.surf.rst. (for GRASS versions 6.1 and above)&lt;br /&gt;
* [http://www.igc.usp.br/pessoais/guano/downloads/r.roughness60 r.roughness60] - for GRASS versions 6.0.X&amp;lt;BR&amp;gt;'''Author:''' Carlos Henrique Grohmann&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://les-ejk.cz/programs/grass/r.gauss.tgz r.gauss] is Gaussian and Laplacian of Gaussian filter for GRASS. It is written in C language.&amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://les-ejk.cz/programs/grass/r.mlv.tgz r.mlv] is Mean of least variance filter for GRASS. It is an edge-preserving (or even edge-enhacing) filter, which should serve for removing additive noise from images. It is written in C language.&amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://les-ejk.cz/programs/grass/r.bilateral.tgz r.bilateral] Bilateral filter is an edge-preserving filter, which combines domain and range filtering. It is written in C language.&amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://les-ejk.cz/programs/zc.pl Zero crossing] is a simple Perl script, finds the ,,zero crossings`` from the Laplacian of Gaussian filter (see above). It is really &amp;lt;em&amp;gt;very&amp;lt;/em&amp;gt; simple, the edges don't need to be really on that pixel, where they are detected, no interpolation is performed.&amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
     '''Usage:'''&lt;br /&gt;
     zc.pl -i input -o output |r.mapcalc&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://les-ejk.cz/programs/local_max.pl Local maxima] is a Perl script for &amp;lt;code&amp;gt;r.mapcalc&amp;lt;/code&amp;gt;. It detects local maxima of the image.&amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
     '''Usage:'''&lt;br /&gt;
     local_maxima.pl -i input -o output -s matrix_size|r.mapcalc&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/r.out.gmt r.out.gmt] is a GRASS script for exporting a GRASS raster map into a [[http://www.soest.hawaii.edu/gmt/ GMT]] grid file. It also creates a GMT color table from the data and can generate some GMT commands for plotting a postscript file. (code is experimental, but functional)&amp;lt;BR&amp;gt;see  also http://169.237.35.250/~dylan/grass_user_group/#GMT_and_GRASS-overview&amp;lt;BR&amp;gt;'''Authors:''' Hamish Bowman, Dylan Beaudette&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://geni.ath.cx/grass/r.out.gmt yet another r.out.gmt] is a modified version of Hamish's r.out.gmt.  Added options for title, xlabel, ylabel, comment, and map width.  Removed any settings that can be changed by gmtset for more flexibility.&amp;lt;BR&amp;gt;'''Author:''' Hamish Bowman, Huidae Cho, Dylan Beaudette&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/r.pack r.pack] and [http://bambi.otago.ac.nz/hamish/grass/r.unpack r.unpack] are two GRASS scripts for transfering raster maps to another computer as a single file.&amp;lt;BR&amp;gt;'''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/dominant_dir.m dominant_dir.m] and [http://bambi.otago.ac.nz/hamish/grass/calc_terraflow_dir.m calc_terraflow_dir.m] are two Matlab scripts for determining the dominant flow direction from a r.terraflow MFD map and converting into a GRASS aspect map for use with d.rast.arrow, etc.&amp;lt;BR&amp;gt;'''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www-pool.math.tu-berlin.de/~soeren/grass/modules/ r.in.onearth] for download and import satellite images direct from the NASA onearth WMS server into GRASS.&amp;lt;BR&amp;gt;'''Author:''' Soeren Gebbert&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.shockfamily.net/cedric/grass/r.tileset r.tileset] generates a list of tiles and sizes in a source projection that cover the region in the current database with appropriate resolution. The size of individual tiles can be constrained. Only tiles intersecting the current region are returned. These tilings are appropriate for requesting data from another projection to meet the specifications of the current region. For example, it could be used to generate tile requests to a latitude / longitude WMS server like this &amp;lt;code&amp;gt;r.tileset -w sourceproj=&amp;quot;+init=epsg:4326&amp;quot;&amp;lt;/code&amp;gt;.&amp;lt;BR&amp;gt;'''Author:''' Cedric Shock&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [ftp://gsca.nrcan.gc.ca/outgoing/Patton/Grass/Scripts/r.csr.tar.bz2 r.csr] integrates several Grass programs to produce colored, shaded-relief rasters in one step. Accepts single or multiple elevation/bathymetry maps as input; optionally will fill data holidays with 3x3 median filter, multiple times, if required; can apply color maps from a) input raster, b) another raster in MAPSET, or c) from a rules file; otherwise, rainbow colorbar is applied. Output colored, shaded-relief rasters can optionally be exported to tiff format and archived using tar with gzip/bzip2 compression if appropriate flags are given. Shading parameters can be modified, though useful defaults are given. (Right-click and choose 'Save Link As')&amp;lt;BR&amp;gt;'''Author:''' Eric Patton&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [ftp://gsca.nrcan.gc.ca/outgoing/Patton/Grass/Scripts/r.fragment.tar.bz2 r.fragment] fragments a raster into a user-defined set of smaller tiles according to an input number of rows and columns. Optionally, a null value threshold can be set to filter out candidate tiles that would have a large percentage of null cells. (Right-click and choose 'Save Link As')&amp;lt;BR&amp;gt;'''Author:''' Eric Patton&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://david.p.finlayson.googlepages.com/r.eucdist r.eucdist] creates a raster map estimating the euclidean distance from known cells.&amp;lt;BR&amp;gt;'''Author:''' David Finlayson&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://david.p.finlayson.googlepages.com/r.smoothpatch r.smoothpatch] creates a composite of two rasters using a distance-weighted average across the transition to smooth the edges.&amp;lt;BR&amp;gt;'''Author:''' David Finlayson&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.faunalia.it/download/r_li/ r.li] is a more flexible and faster replacement of the old r.le. Please note: r.li is now on grass-cvs. --[[User:Cavallini|Cavallini]] 16:50, 6 November 2006 (CET)&amp;lt;BR&amp;gt;&lt;br /&gt;
[http://www.faunalia.com/mediawiki/index.php/R_li Wiki page]&amp;lt;BR&amp;gt;&lt;br /&gt;
'''Authors:''' Claudio Porta, Davide Spano, Serena Pallecchi, [http://www.faunalia.it Faunalia]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://kufaya.googlepages.com/r.surf.nnbathy.tar.gz r.surf.nnbathy] interpolates surface from raster input using [http://www.marine.csiro.au/~sakov/ nn] natural neighbor intepolation library.&amp;lt;BR&amp;gt;'''Author:''' Maciej Sieczka&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
* [http://www.star.ait.ac.th/~yann/sebal/r.usler.tar.gz r.usler] creates USLE R factor (Rainfall erosivity) from annual precipitations. It has 4 methods, Morgan, Roose, Foster and El-Swaify to choose from.&amp;lt;BR&amp;gt;'''Authors:''' Natalia Medvedeva and Yann Chemin&lt;br /&gt;
* [http://www.star.ait.ac.th/~yann/sebal/r.uslek.tar.gz r.uslek] creates USLE K factor (soil erodibility) from sand,clay,silt fractions and organic matter fraction. Based on USDA 1951 (p209) quoted in FAO World Soil CD, and from some generic [soil class+OM] to K conversion table.Update: Fixed input file swap and silty-clay class recognition.&amp;lt;BR&amp;gt;'''Author:''' Yann Chemin&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
* [http://www.star.ait.ac.th/~yann/sebal/r.albedo.tar.gz r.albedo] creates Albedo. Albedo is the shortwave surface reflectance in the range of 0.3-3 micro-meters. This module takes Modis, Aster, Landsat or AVHRR individual surface reflectance bands  to calculate Albedo. This module is a precursor to r.sun or any Energy-Balance related processing.&amp;lt;BR&amp;gt;'''Author:''' Yann Chemin&lt;br /&gt;
* [http://www.star.ait.ac.th/~yann/sebal/ r.eb.*] are a set of 13 GRASS modules that together perform the main functions of the SEBAL model (Bastiaanssen, 1995). Those functions include (but are not limited to) Soil heat flux, sensible heat flux, net radiation, evaporative fraction at satellite overpass, diurnal actual evapotranspiration, momentum roughness length, etc. These modules are also part of any Energy-Balance related processing.&amp;lt;BR&amp;gt;'''Author:''' Yann Chemin&lt;br /&gt;
* [http://www.star.ait.ac.th/~yann/sebal/r.evapo.potrad.tar.gz r.evapo.potrad] create diurnal Potential evapotranspiration assuming all net radiation becomes ET, according to SEBAL model (Bastiaanssen, 1995). This module also has a flag for diurnal net radiation as required by SEBAL in [http://www.star.ait.ac.th/~yann/sebal/r.eb.eta.tar.gz r.eb.eta]. &amp;lt;BR&amp;gt;'''Author:''' Yann Chemin&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
* [http://www.star.ait.ac.th/~yann/sebal/r.vi.tar.gz r.vi] creates a given Vegetation index from a list of 13 of them, most of them only requiring Red and NIR. Updated to accept all types of input data. &amp;lt;BR&amp;gt;'''Authors:''' Baburao Kamble and Yann Chemin&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
* [http://www.star.ait.ac.th/~yann/sebal/r.dn2ref.l7.tar.gz r.dn2ref.l7] [http://www.star.ait.ac.th/~yann/sebal/r.dn2ref.ast.tar.gz r.dn2ref.ast] create top of atmosphere reflectance for Landsat 7ETM+ and ASTER. These modules also have a flag for radiance output. Updated r.dn2ref.l7 to read .met calibration file. [http://www.star.ait.ac.th/~yann/sebal/r.dn2full.l7.tar.gz r.dn2full.l7] is an attempt to get all bands of Landsat7 calibrated and corrected to either reflectance or temperature, reads only the met file. &amp;lt;BR&amp;gt;'''Author:''' Yann Chemin&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
* [http://www.star.ait.ac.th/~yann/sebal/r.biomass.tar.gz r.biomass] create biomass growth map from fPAR, lightuse efficiency, water availability (or evap.fraction), Lat, doy and tsw . &amp;lt;BR&amp;gt;'''Author:''' Yann Chemin&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
* [http://www.pois.org/florian/downloads/grass/r.boxcount.tgz r.boxcount] and [http://www.pois.org/florian/downloads/grass/r.boxcount.sh.tgz r.boxcount.sh] calculate the fractal dimension for a given map. These are versions for grass6 of [http://www.ucl.ac.uk/~tcrnmar/ Mark Lake's modules] for grass43.&amp;lt;br&amp;gt; '''Authors:''' Mark Lake, grass6 port: Florian Kindl&lt;br /&gt;
&lt;br /&gt;
===General add-ons===&lt;br /&gt;
&lt;br /&gt;
* [http://www.gdf-hannover.de/dassau/g.laptop/g.laptop.sh g.laptop.sh] is an interactive shell script to extract raster and vector data from current Location into a new one. Data can be copied or extracted in current or original resolution and region extend. This script was written to extract smaller parts of a GRASS location to be able to present them on a laptop without the necessity to transfer huge data. Maps do not have to be in the same mapset.&amp;lt;BR&amp;gt;'''Author:''' Otto Dassau &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* '''''Readline completion''''' for GRASS commands under the bash shell: [http://www.sorokine.info/grass-complete/ grass-complete] won't clutter the environment but needs to be installed; [http://dcalvelo.free.fr/grass/grass_rlcompleter.sh grass_rlcompleter.sh] needs almost no installation but will pollute the environment. Grass-Complete currently requires Bash version 2.05 for proper install.&amp;lt;BR&amp;gt;'''Author:''' Alexandre Sorokine (grass-complete), Daniel Calvelo (grass_rlcompleter.sh)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
=== Imagery add-ons ===&lt;br /&gt;
&lt;br /&gt;
* [http://www.star.ait.ac.th/~yann/6s/i.atcorr.1.3.1b.tar.gz i.atcorr] Atmospheric Correction using Christo Zietsman's implementation of 6s code in C/C++. The Old Page was rescued by Christo recently and copied [http://www.star.ait.ac.th/~yann/6s/ here]. Compiled in CVS but not tested. Update: The source code is somehow functional in GRASS CVS, it is processing and creates output map, but does not accept non-default input. Not Tested/Validated! &amp;lt;BR&amp;gt;'''Author:''' Christo Zietsman&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/gdal/i.warp61 i.warp61] is a shell script that will use gdalwarp to rectify a raw input image using thin plate splines. The map should be imported into GRASS with r.in.gdal and GCPs set with i.points. Input is the raw image (GeoTIFF, JPEG, etc). Output is a GeoTIFF in the imagery group's target location's map projection. Requires a recent (early 2006) version of GRASS 6.1, or newer.&amp;lt;BR&amp;gt;'''Author:''' Hamish Bowman&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Display add-ons ===&lt;br /&gt;
&lt;br /&gt;
* [http://www.ornl.gov/sci/gist/software/grass/ pd-GRASS]: Parallel Display for GRASS GIS&amp;lt;BR&amp;gt;'''Author:''' Alex Sorokine&lt;br /&gt;
&lt;br /&gt;
==== [[IconSymbols]] ====&lt;br /&gt;
* [[IconSymbols|Symbols]] which can be used with ''d.vect, d.graph'', and ''ps.map''.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/d.frame.quarter d.frame.quarter] is a shell script that will split the display into four quadrants using ''d.frame''. Individual frames are named ''uno, dos, tres, cuatro'', and ''full_screen''.&amp;lt;BR&amp;gt;'''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [ftp://gsca.nrcan.gc.ca/outgoing/Patton/Grass/Scripts/d.hyperlink.tar.bz2 d.hyperlink] is an interactive shell script that allows the viewing of hyperlinked images from a vector's attribute table in an external image viewer. Queries can be made via SQL statements or interactive mouse-clicking. The attribute table must be pre-populated with a column containing the image to link the vector to; the user also specifies the image folder in the current MAPSET where the images are located. The script currently supports gimp, Eye of Gnome, gthumb, gpdf, and Inkscape image viewers. &amp;lt;BR&amp;gt;'''Author: '''Eric Patton&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/d.stations d.stations] is a shell script that quickly displays vector points (or sites for GRASS 5.4 and below).&amp;lt;BR&amp;gt;'''Author:''' Hamish Bowman &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/d.varea d.varea] is a shell script that quickly displays vector areas.&amp;lt;BR&amp;gt;'''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
===Postscript add-ons===&lt;br /&gt;
&lt;br /&gt;
* [http://les-ejk.cz/programs/grass/ps.atlas ps.atlas] is a shell script that makes more maps on current region according to input *.psmap file. General map can be stored as vector file. The resulting *.eps maps can be automatically converted to *.pdf files.&amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [[ps.map scripts|ps.map samples/templates]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== [[AreaFillPatterns]] ====&lt;br /&gt;
* Hatches for ps.map's vareas&lt;br /&gt;
&lt;br /&gt;
===GRASS and UMN Mapserver===&lt;br /&gt;
&lt;br /&gt;
* [http://www.mail-archive.com/mapserver-users@lists.umn.edu/msg00086.html See interesting posting]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Community]]&lt;br /&gt;
[[Category:Development]]&lt;br /&gt;
[[Category:Documentation]]&lt;br /&gt;
[[Category:Installation]]&lt;/div&gt;</summary>
		<author><name>⚠️EricPatton</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=AddOns&amp;diff=3006</id>
		<title>AddOns</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=AddOns&amp;diff=3006"/>
		<updated>2006-11-17T17:53:08Z</updated>

		<summary type="html">&lt;p&gt;⚠️EricPatton: /* IconSymbols */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page contains references to user contributions and add-ons (the original GRASS GIS software can be downloaded [http://grass.itc.it/download/index.php here]).&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
==Copyright and licensing information==&lt;br /&gt;
&lt;br /&gt;
''Please be sure to include copyright and licensing information in the header comments of your code so that others may know how they can use, extend, modify, and redistribute your work.''&lt;br /&gt;
&lt;br /&gt;
e.g. at the top of a shell script:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/sh&lt;br /&gt;
############################################################################&lt;br /&gt;
#&lt;br /&gt;
# MODULE:       v.in.e00&lt;br /&gt;
#&lt;br /&gt;
# AUTHOR(S):    Markus Neteler, Otto Dassau&lt;br /&gt;
#&lt;br /&gt;
# PURPOSE:      Import E00 data into a GRASS vector map&lt;br /&gt;
#               Imports single and split E00 files (.e00, .e01, .e02 ...)&lt;br /&gt;
#&lt;br /&gt;
# COPYRIGHT:    (c) 2004, 2005 GDF Hannover bR, http://www.gdf-hannover.de&lt;br /&gt;
#&lt;br /&gt;
#               This program is free software under the GNU General Public&lt;br /&gt;
#               License (&amp;gt;=v2). Read the file COPYING that comes with GRASS&lt;br /&gt;
#               for details.&lt;br /&gt;
#&lt;br /&gt;
#############################################################################&lt;br /&gt;
#&lt;br /&gt;
# REQUIREMENTS:&lt;br /&gt;
#      -  avcimport: http://avce00.maptools.org&lt;br /&gt;
&lt;br /&gt;
[script follows]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Shell script coding standards==&lt;br /&gt;
&lt;br /&gt;
Please have a look at our [http://grass.itc.it/grass63/source/SUBMITTING_SCRIPTS Shell script coding standards] before submitting here.&lt;br /&gt;
&lt;br /&gt;
==Miscellaneous Add-ons==&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/utm_which_zone.sh utm_which_zone.sh] is a shell script to determine UTM zone from Lat/Lon input. Requires [http://www.octave.org Octave] to be installed. A shell-only version is [http://dcalvelo.free.fr/grass/utm_which_zone_sh.sh available] which only requires awk.&amp;lt;BR&amp;gt;'''Authors''': Hamish Bowman (Octave part), Markus Neteler (shell script wrapper), Daniel Calvelo (sh+awk version)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Perl scripts for converting data forth and back between Excel files and PostgreSQL: [http://dcalvelo.free.fr/grass/pg2xls.pl pg2xls.pl] reads data from PostgreSQL and produces an excel workbook; [http://dcalvelo.free.fr/grass/xls2sql.pl xls2sql.pl] reads excel files and outputs SQL statements to be fed into an RDBMS. Both scripts need modules from [http://www.cpan.org CPAN], especially [http://search.cpan.org/dist/Spreadsheet-ParseExcel/  Spreadsheet::ParseExcel] for xls2sql.pl and [http://search.cpan.org/~tmtm/Spreadsheet-WriteExcel-FromDB Spreadsheet::WriteExcel::FromDB] and its dependencies for pg2sql.pl. Check the source headers for more info.&amp;lt;BR&amp;gt;'''Authors:''' Daniel Calvelo (xls2sql.pl), Markus Neteler (pg2xls.pl)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://dream.lrrl.arch.tu-muenchen.de/~wqual/perl/dbf2sql.tgz dbf2sql] is a Perl script for translating dbf-tables into a sql-command. dbf-tables are read using dbfdump-command from dbd-xbase-perl module ([http://search.cpan.org/~janpaz/DBD-XBase-0.241/ dbd::xbase] and [http://search.cpan.org/~jv/Getopt-Long-2.35/lib/Getopt/Long.pm getopt::long] have to be installed from CPAN first). There are problems, if the last column of the table contains characters. Suggestions for improvements welcome! &amp;lt;BR&amp;gt;'''Author:'''Wolfgang Qual&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.igc.usp.br/pessoais/guano/downloads/azimuth2.c azimuth2.c] is a small C program to calculate the azimuth and length of vector lines exported by GRASS-GIS as ASCII files (like this: v.out.ascii input=vector output=ascii format=standard). It is useful for create rose diagrams of lineament maps. Improvements on the original code after suggestions by Örs Téglásy, Hungary.&amp;lt;BR&amp;gt;'''Author:''' Carlos Henrique Grohmann&lt;br /&gt;
&lt;br /&gt;
==GRASS 5.x==&lt;br /&gt;
&lt;br /&gt;
===Vector add-ons for GRASS 5===&lt;br /&gt;
&lt;br /&gt;
* See here: http://grass.itc.it/download/addons.php&lt;br /&gt;
&lt;br /&gt;
===Raster add-ons for GRASS 5===&lt;br /&gt;
&lt;br /&gt;
* See here: http://grass.itc.it/download/addons.php&lt;br /&gt;
&lt;br /&gt;
* [http://www.valledemexico.ambitiouslemon.com/gwmodelling.html r.gmtg] The groundwater modelling tool for grass. A module to use MODFLOW within GRASS. &amp;lt;BR&amp;gt;'''Author''': Jaime Carrera&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==GRASS 6.x==&lt;br /&gt;
&lt;br /&gt;
===Vector add-ons===&lt;br /&gt;
&lt;br /&gt;
* [http://geni.ath.cx/grass/v.out.gmt v.out.gmt] is a shell script that exports a polygon vector file into GMT xy file. psbasemap code was copied from Hamish's r.out.gmt. &amp;lt;BR&amp;gt;'''Author:''' Huidae Cho, Hamish Bowman, Dylan Beaudette&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.pois.org/florian/downloads/grass/v.strahler.tgz v.strahler] is a module that calculates the Strahler Order for all lines of a given dendritic network. &amp;lt;BR&amp;gt;'''Author:''' Florian Kindl&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://svg.cc/grass/index.html v.out.svg] is a module that exports SVG notation along with optional attribute data directly from GRASS 6.x vector layers. &amp;lt;BR&amp;gt;'''Author:''' Klaus Förster&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://les-ejk.cz/programs/trees.html v.trees3d] is a module for making 3D trees from input vector point file. &amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.public.asu.edu/~cmbarton/files/grass_scripts/v.lda v.lda] is a shell script for calculating Ian Johnson's (U. Sidney) Local Density Analysis values to measure clustering of point data at different neighborhood radii. There is an option to create a simple line graph of the results. There have been reports of problems creating the line graph on Cygwin installations of GRASS.&amp;lt;BR&amp;gt;'''Author:''' Michael Barton &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.public.asu.edu/~cmbarton/files/grass_scripts/v.append v.append] is a shell script combining two vector files AND their associated attribute tables. The vector files should be of the same type and, for best results, should have identically formatted attribute tables.&amp;lt;BR&amp;gt;'''Author:''' Michael Barton &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.shockfamily.net/cedric/grass/v.group v.group] generates a new vector map with the same geometry as an existing map. The new map has categories and a table based on grouping by the values in certain columns of the existing map's table. The values in these columns are preserved in the table for the new map. It's like a v.reclass that preserves data.&amp;lt;BR&amp;gt;'''Author:''' Cedric Shock&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/v.out.ascii.db v.out.ascii.db] is a shell script for exporting vector point data coordinates and selected attribute columns to either a file or to the console.&amp;lt;BR&amp;gt;'''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.fle.czu.cz/~jachym/programs/v.rasterbounds v.rasterbounds] is a shell script for creating polygon-vector file of rasterfile boundaries. The best version of GRASS is 6.1+. If you are using GRASS &amp;lt; 6.1, you  have to be in the same mapset as your raster maps are from.&amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.fle.czu.cz/~jachym/programs/v.3Dtin v.3Dtin] is a shell script for making 3D-vector of the 2D ouput from ''v.delauny''. &amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.clubwebcanada.ca/twiens/v.sample.buffer.tgz v.sample.buffer] is a shell script that samples rasters in buffers of a specified size around features in a specified vector file. Sampling results are added as attributes to the vector file. This script was designed for sampling vegetation indices and DEM derived attributes for bird point counts. Sampling results can be one or more basic statistics such as mean, range, max, etc.&amp;lt;BR&amp;gt;'''Author:''' Trevor Wiens&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.gfosservices.it/materiale_didattico/moduli/v.variogram.tar.gz v.variogram] is a script that create an omnidirectional experimental semi-variogram. This scripts require R-statistics software installed on your machine. Please see a [http://grass.itc.it/pipermail/statsgrass/2006-October/000455.html reply] on the STATGRASS list for changes need to the script to run on spgrass6 &amp;gt;= 0.3 and sp &amp;gt;= 0.9. &amp;lt;BR&amp;gt;'''Author:''' Ivan Marchesini, Pierluigi De Rosa.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.gfosservices.it/materiale_didattico/moduli/v.krige.tar.gz v.krige] is a script that  do a surface interpolation from vector point data by Kriging method.The interpolated value of a cell is determined by using an omnidirectional variogram model fitted starting from model parameter given by user desumed from the experimental semi variogram produced by v.variogram.&amp;lt;BR&amp;gt;'''Author:''' Ivan Marchesini, Pierluigi De Rosa&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://ngeo.de/grassstuff/v.lmeasure v.lmeasure] and [http://ngeo.de/grassstuff/v.revlmeasure v.revlmeasure] are two perl scripts that place equidistant vector points along a given arbitrary vector line starting from the beginning or end of the vector line, respectively. Resulting  vector points are labeled with the distance from origin.&amp;lt;BR&amp;gt;'''Author:''' Mats Schuh&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://david.p.finlayson.googlepages.com/v.swathwidth v.swathwidth] creates a vector map representing the sea bottom coverage of a multibeam (swath) sonar survey.&amp;lt;BR&amp;gt;'''Author:''' David Finlayson&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://kufaya.googlepages.com/v.flip.tar.gz v.flip] flips the direction of selected vector lines.&amp;lt;BR&amp;gt;'''Author:''' Maciej Sieczka&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://phygeo7.geo.uni-augsburg.de/gis2/scripts/v.digatt v.digatt] (shell script) Interactively assign numeric table attributes to series of vector objects. It is meant to be effective by avoiding to type in the attribute value for all single objects again and again. The user is prompted for typing in an attribute value which is assigned to all objects selected by mouseclick afterwards. Next the display is redrawn after updating the table column. Zooming allows to change the region before the old value can be reused or a new one can be typed in (or copied by mouse from another object) in order to assign it to the next series of objects etc. It is tested not very extensively yet. Therefore better work with a copy of your map and consider using v.digit or d.what.vect -e alternatively. [http://phygeo7.geo.uni-augsburg.de/gis2/scripts/v.digatt.png screenshot]. &amp;lt;BR&amp;gt;'''Author:''' Andreas Philipp&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://k153-85.fsv.cvut.cz/cgi-bin/viewcvs.cgi/grass6/vector/v.in.gama/ v.in.gama] converts [http://www.gnu.org/software/gama/ GNU GaMa] XML output file to a GRASS vector map layer.&amp;lt;br /&amp;gt;'''Author:''' Martin Landa&lt;br /&gt;
&lt;br /&gt;
===Raster add-ons===&lt;br /&gt;
&lt;br /&gt;
* [http://www.igc.usp.br/pessoais/guano/downloads/r.roughness r.roughness] is a shell script to calculate the surface roughness of a DEM, using r.surf.area and v.surf.rst. (for GRASS versions 6.1 and above)&lt;br /&gt;
* [http://www.igc.usp.br/pessoais/guano/downloads/r.roughness60 r.roughness60] - for GRASS versions 6.0.X&amp;lt;BR&amp;gt;'''Author:''' Carlos Henrique Grohmann&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://les-ejk.cz/programs/grass/r.gauss.tgz r.gauss] is Gaussian and Laplacian of Gaussian filter for GRASS. It is written in C language.&amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://les-ejk.cz/programs/grass/r.mlv.tgz r.mlv] is Mean of least variance filter for GRASS. It is an edge-preserving (or even edge-enhacing) filter, which should serve for removing additive noise from images. It is written in C language.&amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://les-ejk.cz/programs/grass/r.bilateral.tgz r.bilateral] Bilateral filter is an edge-preserving filter, which combines domain and range filtering. It is written in C language.&amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://les-ejk.cz/programs/zc.pl Zero crossing] is a simple Perl script, finds the ,,zero crossings`` from the Laplacian of Gaussian filter (see above). It is really &amp;lt;em&amp;gt;very&amp;lt;/em&amp;gt; simple, the edges don't need to be really on that pixel, where they are detected, no interpolation is performed.&amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
     '''Usage:'''&lt;br /&gt;
     zc.pl -i input -o output |r.mapcalc&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://les-ejk.cz/programs/local_max.pl Local maxima] is a Perl script for &amp;lt;code&amp;gt;r.mapcalc&amp;lt;/code&amp;gt;. It detects local maxima of the image.&amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
     '''Usage:'''&lt;br /&gt;
     local_maxima.pl -i input -o output -s matrix_size|r.mapcalc&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/r.out.gmt r.out.gmt] is a GRASS script for exporting a GRASS raster map into a [[http://www.soest.hawaii.edu/gmt/ GMT]] grid file. It also creates a GMT color table from the data and can generate some GMT commands for plotting a postscript file. (code is experimental, but functional)&amp;lt;BR&amp;gt;see  also http://169.237.35.250/~dylan/grass_user_group/#GMT_and_GRASS-overview&amp;lt;BR&amp;gt;'''Authors:''' Hamish Bowman, Dylan Beaudette&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://geni.ath.cx/grass/r.out.gmt yet another r.out.gmt] is a modified version of Hamish's r.out.gmt.  Added options for title, xlabel, ylabel, comment, and map width.  Removed any settings that can be changed by gmtset for more flexibility.&amp;lt;BR&amp;gt;'''Author:''' Hamish Bowman, Huidae Cho, Dylan Beaudette&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/r.pack r.pack] and [http://bambi.otago.ac.nz/hamish/grass/r.unpack r.unpack] are two GRASS scripts for transfering raster maps to another computer as a single file.&amp;lt;BR&amp;gt;'''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/dominant_dir.m dominant_dir.m] and [http://bambi.otago.ac.nz/hamish/grass/calc_terraflow_dir.m calc_terraflow_dir.m] are two Matlab scripts for determining the dominant flow direction from a r.terraflow MFD map and converting into a GRASS aspect map for use with d.rast.arrow, etc.&amp;lt;BR&amp;gt;'''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www-pool.math.tu-berlin.de/~soeren/grass/modules/ r.in.onearth] for download and import satellite images direct from the NASA onearth WMS server into GRASS.&amp;lt;BR&amp;gt;'''Author:''' Soeren Gebbert&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.shockfamily.net/cedric/grass/r.tileset r.tileset] generates a list of tiles and sizes in a source projection that cover the region in the current database with appropriate resolution. The size of individual tiles can be constrained. Only tiles intersecting the current region are returned. These tilings are appropriate for requesting data from another projection to meet the specifications of the current region. For example, it could be used to generate tile requests to a latitude / longitude WMS server like this &amp;lt;code&amp;gt;r.tileset -w sourceproj=&amp;quot;+init=epsg:4326&amp;quot;&amp;lt;/code&amp;gt;.&amp;lt;BR&amp;gt;'''Author:''' Cedric Shock&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [ftp://gsca.nrcan.gc.ca/outgoing/Patton/Grass/Scripts/r.csr.tar.bz2 r.csr] integrates several Grass programs to produce colored, shaded-relief rasters in one step. Accepts single or multiple elevation/bathymetry maps as input; optionally will fill data holidays with 3x3 median filter, multiple times, if required; can apply color maps from a) input raster, b) another raster in MAPSET, or c) from a rules file; otherwise, rainbow colorbar is applied. Output colored, shaded-relief rasters can optionally be exported to tiff format and archived using tar with gzip/bzip2 compression if appropriate flags are given. Shading parameters can be modified, though useful defaults are given. (Right-click and choose 'Save Link As')&amp;lt;BR&amp;gt;'''Author:''' Eric Patton&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [ftp://gsca.nrcan.gc.ca/outgoing/Patton/Grass/Scripts/r.fragment.tar.bz2 r.fragment] fragments a raster into a user-defined set of smaller tiles according to an input number of rows and columns. Optionally, a null value threshold can be set to filter out candidate tiles that would have a large percentage of null cells. (Right-click and choose 'Save Link As')&amp;lt;BR&amp;gt;'''Author:''' Eric Patton&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://david.p.finlayson.googlepages.com/r.eucdist r.eucdist] creates a raster map estimating the euclidean distance from known cells.&amp;lt;BR&amp;gt;'''Author:''' David Finlayson&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://david.p.finlayson.googlepages.com/r.smoothpatch r.smoothpatch] creates a composite of two rasters using a distance-weighted average across the transition to smooth the edges.&amp;lt;BR&amp;gt;'''Author:''' David Finlayson&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.faunalia.it/download/r_li/ r.li] is a more flexible and faster replacement of the old r.le. Please note: r.li is now on grass-cvs. --[[User:Cavallini|Cavallini]] 16:50, 6 November 2006 (CET)&amp;lt;BR&amp;gt;&lt;br /&gt;
[http://www.faunalia.com/mediawiki/index.php/R_li Wiki page]&amp;lt;BR&amp;gt;&lt;br /&gt;
'''Authors:''' Claudio Porta, Davide Spano, Serena Pallecchi, [http://www.faunalia.it Faunalia]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://kufaya.googlepages.com/r.surf.nnbathy.tar.gz r.surf.nnbathy] interpolates surface from raster input using [http://www.marine.csiro.au/~sakov/ nn] natural neighbor intepolation library.&amp;lt;BR&amp;gt;'''Author:''' Maciej Sieczka&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
* [http://www.star.ait.ac.th/~yann/sebal/r.usler.tar.gz r.usler] creates USLE R factor (Rainfall erosivity) from annual precipitations. It has 4 methods, Morgan, Roose, Foster and El-Swaify to choose from.&amp;lt;BR&amp;gt;'''Authors:''' Natalia Medvedeva and Yann Chemin&lt;br /&gt;
* [http://www.star.ait.ac.th/~yann/sebal/r.uslek.tar.gz r.uslek] creates USLE K factor (soil erodibility) from sand,clay,silt fractions and organic matter fraction. Based on USDA 1951 (p209) quoted in FAO World Soil CD, and from some generic [soil class+OM] to K conversion table.Update: Fixed input file swap and silty-clay class recognition.&amp;lt;BR&amp;gt;'''Author:''' Yann Chemin&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
* [http://www.star.ait.ac.th/~yann/sebal/r.albedo.tar.gz r.albedo] creates Albedo. Albedo is the shortwave surface reflectance in the range of 0.3-3 micro-meters. This module takes Modis, Aster, Landsat or AVHRR individual surface reflectance bands  to calculate Albedo. This module is a precursor to r.sun or any Energy-Balance related processing.&amp;lt;BR&amp;gt;'''Author:''' Yann Chemin&lt;br /&gt;
* [http://www.star.ait.ac.th/~yann/sebal/ r.eb.*] are a set of 13 GRASS modules that together perform the main functions of the SEBAL model (Bastiaanssen, 1995). Those functions include (but are not limited to) Soil heat flux, sensible heat flux, net radiation, evaporative fraction at satellite overpass, diurnal actual evapotranspiration, momentum roughness length, etc. These modules are also part of any Energy-Balance related processing.&amp;lt;BR&amp;gt;'''Author:''' Yann Chemin&lt;br /&gt;
* [http://www.star.ait.ac.th/~yann/sebal/r.evapo.potrad.tar.gz r.evapo.potrad] create diurnal Potential evapotranspiration assuming all net radiation becomes ET, according to SEBAL model (Bastiaanssen, 1995). This module also has a flag for diurnal net radiation as required by SEBAL in [http://www.star.ait.ac.th/~yann/sebal/r.eb.eta.tar.gz r.eb.eta]. &amp;lt;BR&amp;gt;'''Author:''' Yann Chemin&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
* [http://www.star.ait.ac.th/~yann/sebal/r.vi.tar.gz r.vi] creates a given Vegetation index from a list of 13 of them, most of them only requiring Red and NIR. Updated to accept all types of input data. &amp;lt;BR&amp;gt;'''Authors:''' Baburao Kamble and Yann Chemin&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
* [http://www.star.ait.ac.th/~yann/sebal/r.dn2ref.l7.tar.gz r.dn2ref.l7] [http://www.star.ait.ac.th/~yann/sebal/r.dn2ref.ast.tar.gz r.dn2ref.ast] create top of atmosphere reflectance for Landsat 7ETM+ and ASTER. These modules also have a flag for radiance output. Updated r.dn2ref.l7 to read .met calibration file. [http://www.star.ait.ac.th/~yann/sebal/r.dn2full.l7.tar.gz r.dn2full.l7] is an attempt to get all bands of Landsat7 calibrated and corrected to either reflectance or temperature, reads only the met file. &amp;lt;BR&amp;gt;'''Author:''' Yann Chemin&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
* [http://www.star.ait.ac.th/~yann/sebal/r.biomass.tar.gz r.biomass] create biomass growth map from fPAR, lightuse efficiency, water availability (or evap.fraction), Lat, doy and tsw . &amp;lt;BR&amp;gt;'''Author:''' Yann Chemin&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
* [http://www.pois.org/florian/downloads/grass/r.boxcount.tgz r.boxcount] and [http://www.pois.org/florian/downloads/grass/r.boxcount.sh.tgz r.boxcount.sh] calculate the fractal dimension for a given map. These are versions for grass6 of [http://www.ucl.ac.uk/~tcrnmar/ Mark Lake's modules] for grass43.&amp;lt;br&amp;gt; '''Authors:''' Mark Lake, grass6 port: Florian Kindl&lt;br /&gt;
&lt;br /&gt;
===General add-ons===&lt;br /&gt;
&lt;br /&gt;
* [http://www.gdf-hannover.de/dassau/g.laptop/g.laptop.sh g.laptop.sh] is an interactive shell script to extract raster and vector data from current Location into a new one. Data can be copied or extracted in current or original resolution and region extend. This script was written to extract smaller parts of a GRASS location to be able to present them on a laptop without the necessity to transfer huge data. Maps do not have to be in the same mapset.&amp;lt;BR&amp;gt;'''Author:''' Otto Dassau &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* '''''Readline completion''''' for GRASS commands under the bash shell: [http://www.sorokine.info/grass-complete/ grass-complete] won't clutter the environment but needs to be installed; [http://dcalvelo.free.fr/grass/grass_rlcompleter.sh grass_rlcompleter.sh] needs almost no installation but will pollute the environment. Grass-Complete currently requires Bash version 2.05 for proper install.&amp;lt;BR&amp;gt;'''Author:''' Alexandre Sorokine (grass-complete), Daniel Calvelo (grass_rlcompleter.sh)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
=== Imagery add-ons ===&lt;br /&gt;
&lt;br /&gt;
* [http://www.star.ait.ac.th/~yann/6s/i.atcorr.1.3.1b.tar.gz i.atcorr] Atmospheric Correction using Christo Zietsman's implementation of 6s code in C/C++. The Old Page was rescued by Christo recently and copied [http://www.star.ait.ac.th/~yann/6s/ here]. Compiled in CVS but not tested. Update: The source code is somehow functional in GRASS CVS, it is processing and creates output map, but does not accept non-default input. Not Tested/Validated! &amp;lt;BR&amp;gt;'''Author:''' Christo Zietsman&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/gdal/i.warp61 i.warp61] is a shell script that will use gdalwarp to rectify a raw input image using thin plate splines. The map should be imported into GRASS with r.in.gdal and GCPs set with i.points. Input is the raw image (GeoTIFF, JPEG, etc). Output is a GeoTIFF in the imagery group's target location's map projection. Requires a recent (early 2006) version of GRASS 6.1, or newer.&amp;lt;BR&amp;gt;'''Author:''' Hamish Bowman&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Display add-ons ===&lt;br /&gt;
&lt;br /&gt;
* [http://www.ornl.gov/sci/gist/software/grass/ pd-GRASS]: Parallel Display for GRASS GIS&amp;lt;BR&amp;gt;'''Author:''' Alex Sorokine&lt;br /&gt;
&lt;br /&gt;
==== [[IconSymbols]] ====&lt;br /&gt;
* [[IconSymbols|Symbols]] which can be used with ''d.vect, d.graph'', and ''ps.map''.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/d.frame.quarter d.frame.quarter] is a shell script that will split the display into four quadrants using ''d.frame''. Individual frames are named ''uno, dos, tres, cuatro'', and ''full_screen''.&amp;lt;BR&amp;gt;'''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [ftp://gsca.nrcan.gc.ca/outgoing/Patton/Grass/Scripts/d.hyperlink.tar.bz2 d.hyperlink] is an interactive shell script that allows the viewing of hyperlinked images from a vector's attribute table in an external image viewer. Queries can be made via SQL statements or interactive mouse-clicking. The attribute table must be pre-populated with a column containing the image to link the vector to; the user also specifies the image folder in the current MAPSET where the images are located. The script currently supports gimp, Eye of Gnome, gthumb, gpdf, and Inkscape image viewers. (Right-click and choose 'Save Link As')&amp;lt;BR&amp;gt;'''Author: '''Eric Patton&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/d.stations d.stations] is a shell script that quickly displays vector points (or sites for GRASS 5.4 and below).&amp;lt;BR&amp;gt;'''Author:''' Hamish Bowman &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/d.varea d.varea] is a shell script that quickly displays vector areas.&amp;lt;BR&amp;gt;'''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
===Postscript add-ons===&lt;br /&gt;
&lt;br /&gt;
* [http://les-ejk.cz/programs/grass/ps.atlas ps.atlas] is a shell script that makes more maps on current region according to input *.psmap file. General map can be stored as vector file. The resulting *.eps maps can be automatically converted to *.pdf files.&amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [[ps.map scripts|ps.map samples/templates]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== [[AreaFillPatterns]] ====&lt;br /&gt;
* Hatches for ps.map's vareas&lt;br /&gt;
&lt;br /&gt;
===GRASS and UMN Mapserver===&lt;br /&gt;
&lt;br /&gt;
* [http://www.mail-archive.com/mapserver-users@lists.umn.edu/msg00086.html See interesting posting]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Community]]&lt;br /&gt;
[[Category:Development]]&lt;br /&gt;
[[Category:Documentation]]&lt;br /&gt;
[[Category:Installation]]&lt;/div&gt;</summary>
		<author><name>⚠️EricPatton</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=AddOns&amp;diff=3005</id>
		<title>AddOns</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=AddOns&amp;diff=3005"/>
		<updated>2006-11-17T17:47:13Z</updated>

		<summary type="html">&lt;p&gt;⚠️EricPatton: /* Raster add-ons */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page contains references to user contributions and add-ons (the original GRASS GIS software can be downloaded [http://grass.itc.it/download/index.php here]).&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
==Copyright and licensing information==&lt;br /&gt;
&lt;br /&gt;
''Please be sure to include copyright and licensing information in the header comments of your code so that others may know how they can use, extend, modify, and redistribute your work.''&lt;br /&gt;
&lt;br /&gt;
e.g. at the top of a shell script:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/sh&lt;br /&gt;
############################################################################&lt;br /&gt;
#&lt;br /&gt;
# MODULE:       v.in.e00&lt;br /&gt;
#&lt;br /&gt;
# AUTHOR(S):    Markus Neteler, Otto Dassau&lt;br /&gt;
#&lt;br /&gt;
# PURPOSE:      Import E00 data into a GRASS vector map&lt;br /&gt;
#               Imports single and split E00 files (.e00, .e01, .e02 ...)&lt;br /&gt;
#&lt;br /&gt;
# COPYRIGHT:    (c) 2004, 2005 GDF Hannover bR, http://www.gdf-hannover.de&lt;br /&gt;
#&lt;br /&gt;
#               This program is free software under the GNU General Public&lt;br /&gt;
#               License (&amp;gt;=v2). Read the file COPYING that comes with GRASS&lt;br /&gt;
#               for details.&lt;br /&gt;
#&lt;br /&gt;
#############################################################################&lt;br /&gt;
#&lt;br /&gt;
# REQUIREMENTS:&lt;br /&gt;
#      -  avcimport: http://avce00.maptools.org&lt;br /&gt;
&lt;br /&gt;
[script follows]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Shell script coding standards==&lt;br /&gt;
&lt;br /&gt;
Please have a look at our [http://grass.itc.it/grass63/source/SUBMITTING_SCRIPTS Shell script coding standards] before submitting here.&lt;br /&gt;
&lt;br /&gt;
==Miscellaneous Add-ons==&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/utm_which_zone.sh utm_which_zone.sh] is a shell script to determine UTM zone from Lat/Lon input. Requires [http://www.octave.org Octave] to be installed. A shell-only version is [http://dcalvelo.free.fr/grass/utm_which_zone_sh.sh available] which only requires awk.&amp;lt;BR&amp;gt;'''Authors''': Hamish Bowman (Octave part), Markus Neteler (shell script wrapper), Daniel Calvelo (sh+awk version)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Perl scripts for converting data forth and back between Excel files and PostgreSQL: [http://dcalvelo.free.fr/grass/pg2xls.pl pg2xls.pl] reads data from PostgreSQL and produces an excel workbook; [http://dcalvelo.free.fr/grass/xls2sql.pl xls2sql.pl] reads excel files and outputs SQL statements to be fed into an RDBMS. Both scripts need modules from [http://www.cpan.org CPAN], especially [http://search.cpan.org/dist/Spreadsheet-ParseExcel/  Spreadsheet::ParseExcel] for xls2sql.pl and [http://search.cpan.org/~tmtm/Spreadsheet-WriteExcel-FromDB Spreadsheet::WriteExcel::FromDB] and its dependencies for pg2sql.pl. Check the source headers for more info.&amp;lt;BR&amp;gt;'''Authors:''' Daniel Calvelo (xls2sql.pl), Markus Neteler (pg2xls.pl)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://dream.lrrl.arch.tu-muenchen.de/~wqual/perl/dbf2sql.tgz dbf2sql] is a Perl script for translating dbf-tables into a sql-command. dbf-tables are read using dbfdump-command from dbd-xbase-perl module ([http://search.cpan.org/~janpaz/DBD-XBase-0.241/ dbd::xbase] and [http://search.cpan.org/~jv/Getopt-Long-2.35/lib/Getopt/Long.pm getopt::long] have to be installed from CPAN first). There are problems, if the last column of the table contains characters. Suggestions for improvements welcome! &amp;lt;BR&amp;gt;'''Author:'''Wolfgang Qual&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.igc.usp.br/pessoais/guano/downloads/azimuth2.c azimuth2.c] is a small C program to calculate the azimuth and length of vector lines exported by GRASS-GIS as ASCII files (like this: v.out.ascii input=vector output=ascii format=standard). It is useful for create rose diagrams of lineament maps. Improvements on the original code after suggestions by Örs Téglásy, Hungary.&amp;lt;BR&amp;gt;'''Author:''' Carlos Henrique Grohmann&lt;br /&gt;
&lt;br /&gt;
==GRASS 5.x==&lt;br /&gt;
&lt;br /&gt;
===Vector add-ons for GRASS 5===&lt;br /&gt;
&lt;br /&gt;
* See here: http://grass.itc.it/download/addons.php&lt;br /&gt;
&lt;br /&gt;
===Raster add-ons for GRASS 5===&lt;br /&gt;
&lt;br /&gt;
* See here: http://grass.itc.it/download/addons.php&lt;br /&gt;
&lt;br /&gt;
* [http://www.valledemexico.ambitiouslemon.com/gwmodelling.html r.gmtg] The groundwater modelling tool for grass. A module to use MODFLOW within GRASS. &amp;lt;BR&amp;gt;'''Author''': Jaime Carrera&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==GRASS 6.x==&lt;br /&gt;
&lt;br /&gt;
===Vector add-ons===&lt;br /&gt;
&lt;br /&gt;
* [http://geni.ath.cx/grass/v.out.gmt v.out.gmt] is a shell script that exports a polygon vector file into GMT xy file. psbasemap code was copied from Hamish's r.out.gmt. &amp;lt;BR&amp;gt;'''Author:''' Huidae Cho, Hamish Bowman, Dylan Beaudette&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.pois.org/florian/downloads/grass/v.strahler.tgz v.strahler] is a module that calculates the Strahler Order for all lines of a given dendritic network. &amp;lt;BR&amp;gt;'''Author:''' Florian Kindl&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://svg.cc/grass/index.html v.out.svg] is a module that exports SVG notation along with optional attribute data directly from GRASS 6.x vector layers. &amp;lt;BR&amp;gt;'''Author:''' Klaus Förster&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://les-ejk.cz/programs/trees.html v.trees3d] is a module for making 3D trees from input vector point file. &amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.public.asu.edu/~cmbarton/files/grass_scripts/v.lda v.lda] is a shell script for calculating Ian Johnson's (U. Sidney) Local Density Analysis values to measure clustering of point data at different neighborhood radii. There is an option to create a simple line graph of the results. There have been reports of problems creating the line graph on Cygwin installations of GRASS.&amp;lt;BR&amp;gt;'''Author:''' Michael Barton &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.public.asu.edu/~cmbarton/files/grass_scripts/v.append v.append] is a shell script combining two vector files AND their associated attribute tables. The vector files should be of the same type and, for best results, should have identically formatted attribute tables.&amp;lt;BR&amp;gt;'''Author:''' Michael Barton &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.shockfamily.net/cedric/grass/v.group v.group] generates a new vector map with the same geometry as an existing map. The new map has categories and a table based on grouping by the values in certain columns of the existing map's table. The values in these columns are preserved in the table for the new map. It's like a v.reclass that preserves data.&amp;lt;BR&amp;gt;'''Author:''' Cedric Shock&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/v.out.ascii.db v.out.ascii.db] is a shell script for exporting vector point data coordinates and selected attribute columns to either a file or to the console.&amp;lt;BR&amp;gt;'''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.fle.czu.cz/~jachym/programs/v.rasterbounds v.rasterbounds] is a shell script for creating polygon-vector file of rasterfile boundaries. The best version of GRASS is 6.1+. If you are using GRASS &amp;lt; 6.1, you  have to be in the same mapset as your raster maps are from.&amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.fle.czu.cz/~jachym/programs/v.3Dtin v.3Dtin] is a shell script for making 3D-vector of the 2D ouput from ''v.delauny''. &amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.clubwebcanada.ca/twiens/v.sample.buffer.tgz v.sample.buffer] is a shell script that samples rasters in buffers of a specified size around features in a specified vector file. Sampling results are added as attributes to the vector file. This script was designed for sampling vegetation indices and DEM derived attributes for bird point counts. Sampling results can be one or more basic statistics such as mean, range, max, etc.&amp;lt;BR&amp;gt;'''Author:''' Trevor Wiens&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.gfosservices.it/materiale_didattico/moduli/v.variogram.tar.gz v.variogram] is a script that create an omnidirectional experimental semi-variogram. This scripts require R-statistics software installed on your machine. Please see a [http://grass.itc.it/pipermail/statsgrass/2006-October/000455.html reply] on the STATGRASS list for changes need to the script to run on spgrass6 &amp;gt;= 0.3 and sp &amp;gt;= 0.9. &amp;lt;BR&amp;gt;'''Author:''' Ivan Marchesini, Pierluigi De Rosa.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.gfosservices.it/materiale_didattico/moduli/v.krige.tar.gz v.krige] is a script that  do a surface interpolation from vector point data by Kriging method.The interpolated value of a cell is determined by using an omnidirectional variogram model fitted starting from model parameter given by user desumed from the experimental semi variogram produced by v.variogram.&amp;lt;BR&amp;gt;'''Author:''' Ivan Marchesini, Pierluigi De Rosa&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://ngeo.de/grassstuff/v.lmeasure v.lmeasure] and [http://ngeo.de/grassstuff/v.revlmeasure v.revlmeasure] are two perl scripts that place equidistant vector points along a given arbitrary vector line starting from the beginning or end of the vector line, respectively. Resulting  vector points are labeled with the distance from origin.&amp;lt;BR&amp;gt;'''Author:''' Mats Schuh&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://david.p.finlayson.googlepages.com/v.swathwidth v.swathwidth] creates a vector map representing the sea bottom coverage of a multibeam (swath) sonar survey.&amp;lt;BR&amp;gt;'''Author:''' David Finlayson&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://kufaya.googlepages.com/v.flip.tar.gz v.flip] flips the direction of selected vector lines.&amp;lt;BR&amp;gt;'''Author:''' Maciej Sieczka&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://phygeo7.geo.uni-augsburg.de/gis2/scripts/v.digatt v.digatt] (shell script) Interactively assign numeric table attributes to series of vector objects. It is meant to be effective by avoiding to type in the attribute value for all single objects again and again. The user is prompted for typing in an attribute value which is assigned to all objects selected by mouseclick afterwards. Next the display is redrawn after updating the table column. Zooming allows to change the region before the old value can be reused or a new one can be typed in (or copied by mouse from another object) in order to assign it to the next series of objects etc. It is tested not very extensively yet. Therefore better work with a copy of your map and consider using v.digit or d.what.vect -e alternatively. [http://phygeo7.geo.uni-augsburg.de/gis2/scripts/v.digatt.png screenshot]. &amp;lt;BR&amp;gt;'''Author:''' Andreas Philipp&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://k153-85.fsv.cvut.cz/cgi-bin/viewcvs.cgi/grass6/vector/v.in.gama/ v.in.gama] converts [http://www.gnu.org/software/gama/ GNU GaMa] XML output file to a GRASS vector map layer.&amp;lt;br /&amp;gt;'''Author:''' Martin Landa&lt;br /&gt;
&lt;br /&gt;
===Raster add-ons===&lt;br /&gt;
&lt;br /&gt;
* [http://www.igc.usp.br/pessoais/guano/downloads/r.roughness r.roughness] is a shell script to calculate the surface roughness of a DEM, using r.surf.area and v.surf.rst. (for GRASS versions 6.1 and above)&lt;br /&gt;
* [http://www.igc.usp.br/pessoais/guano/downloads/r.roughness60 r.roughness60] - for GRASS versions 6.0.X&amp;lt;BR&amp;gt;'''Author:''' Carlos Henrique Grohmann&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://les-ejk.cz/programs/grass/r.gauss.tgz r.gauss] is Gaussian and Laplacian of Gaussian filter for GRASS. It is written in C language.&amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://les-ejk.cz/programs/grass/r.mlv.tgz r.mlv] is Mean of least variance filter for GRASS. It is an edge-preserving (or even edge-enhacing) filter, which should serve for removing additive noise from images. It is written in C language.&amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://les-ejk.cz/programs/grass/r.bilateral.tgz r.bilateral] Bilateral filter is an edge-preserving filter, which combines domain and range filtering. It is written in C language.&amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://les-ejk.cz/programs/zc.pl Zero crossing] is a simple Perl script, finds the ,,zero crossings`` from the Laplacian of Gaussian filter (see above). It is really &amp;lt;em&amp;gt;very&amp;lt;/em&amp;gt; simple, the edges don't need to be really on that pixel, where they are detected, no interpolation is performed.&amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
     '''Usage:'''&lt;br /&gt;
     zc.pl -i input -o output |r.mapcalc&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://les-ejk.cz/programs/local_max.pl Local maxima] is a Perl script for &amp;lt;code&amp;gt;r.mapcalc&amp;lt;/code&amp;gt;. It detects local maxima of the image.&amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
     '''Usage:'''&lt;br /&gt;
     local_maxima.pl -i input -o output -s matrix_size|r.mapcalc&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/r.out.gmt r.out.gmt] is a GRASS script for exporting a GRASS raster map into a [[http://www.soest.hawaii.edu/gmt/ GMT]] grid file. It also creates a GMT color table from the data and can generate some GMT commands for plotting a postscript file. (code is experimental, but functional)&amp;lt;BR&amp;gt;see  also http://169.237.35.250/~dylan/grass_user_group/#GMT_and_GRASS-overview&amp;lt;BR&amp;gt;'''Authors:''' Hamish Bowman, Dylan Beaudette&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://geni.ath.cx/grass/r.out.gmt yet another r.out.gmt] is a modified version of Hamish's r.out.gmt.  Added options for title, xlabel, ylabel, comment, and map width.  Removed any settings that can be changed by gmtset for more flexibility.&amp;lt;BR&amp;gt;'''Author:''' Hamish Bowman, Huidae Cho, Dylan Beaudette&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/r.pack r.pack] and [http://bambi.otago.ac.nz/hamish/grass/r.unpack r.unpack] are two GRASS scripts for transfering raster maps to another computer as a single file.&amp;lt;BR&amp;gt;'''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/dominant_dir.m dominant_dir.m] and [http://bambi.otago.ac.nz/hamish/grass/calc_terraflow_dir.m calc_terraflow_dir.m] are two Matlab scripts for determining the dominant flow direction from a r.terraflow MFD map and converting into a GRASS aspect map for use with d.rast.arrow, etc.&amp;lt;BR&amp;gt;'''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www-pool.math.tu-berlin.de/~soeren/grass/modules/ r.in.onearth] for download and import satellite images direct from the NASA onearth WMS server into GRASS.&amp;lt;BR&amp;gt;'''Author:''' Soeren Gebbert&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.shockfamily.net/cedric/grass/r.tileset r.tileset] generates a list of tiles and sizes in a source projection that cover the region in the current database with appropriate resolution. The size of individual tiles can be constrained. Only tiles intersecting the current region are returned. These tilings are appropriate for requesting data from another projection to meet the specifications of the current region. For example, it could be used to generate tile requests to a latitude / longitude WMS server like this &amp;lt;code&amp;gt;r.tileset -w sourceproj=&amp;quot;+init=epsg:4326&amp;quot;&amp;lt;/code&amp;gt;.&amp;lt;BR&amp;gt;'''Author:''' Cedric Shock&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [ftp://gsca.nrcan.gc.ca/outgoing/Patton/Grass/Scripts/r.csr.tar.bz2 r.csr] integrates several Grass programs to produce colored, shaded-relief rasters in one step. Accepts single or multiple elevation/bathymetry maps as input; optionally will fill data holidays with 3x3 median filter, multiple times, if required; can apply color maps from a) input raster, b) another raster in MAPSET, or c) from a rules file; otherwise, rainbow colorbar is applied. Output colored, shaded-relief rasters can optionally be exported to tiff format and archived using tar with gzip/bzip2 compression if appropriate flags are given. Shading parameters can be modified, though useful defaults are given. (Right-click and choose 'Save Link As')&amp;lt;BR&amp;gt;'''Author:''' Eric Patton&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [ftp://gsca.nrcan.gc.ca/outgoing/Patton/Grass/Scripts/r.fragment.tar.bz2 r.fragment] fragments a raster into a user-defined set of smaller tiles according to an input number of rows and columns. Optionally, a null value threshold can be set to filter out candidate tiles that would have a large percentage of null cells. (Right-click and choose 'Save Link As')&amp;lt;BR&amp;gt;'''Author:''' Eric Patton&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://david.p.finlayson.googlepages.com/r.eucdist r.eucdist] creates a raster map estimating the euclidean distance from known cells.&amp;lt;BR&amp;gt;'''Author:''' David Finlayson&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://david.p.finlayson.googlepages.com/r.smoothpatch r.smoothpatch] creates a composite of two rasters using a distance-weighted average across the transition to smooth the edges.&amp;lt;BR&amp;gt;'''Author:''' David Finlayson&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.faunalia.it/download/r_li/ r.li] is a more flexible and faster replacement of the old r.le. Please note: r.li is now on grass-cvs. --[[User:Cavallini|Cavallini]] 16:50, 6 November 2006 (CET)&amp;lt;BR&amp;gt;&lt;br /&gt;
[http://www.faunalia.com/mediawiki/index.php/R_li Wiki page]&amp;lt;BR&amp;gt;&lt;br /&gt;
'''Authors:''' Claudio Porta, Davide Spano, Serena Pallecchi, [http://www.faunalia.it Faunalia]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://kufaya.googlepages.com/r.surf.nnbathy.tar.gz r.surf.nnbathy] interpolates surface from raster input using [http://www.marine.csiro.au/~sakov/ nn] natural neighbor intepolation library.&amp;lt;BR&amp;gt;'''Author:''' Maciej Sieczka&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
* [http://www.star.ait.ac.th/~yann/sebal/r.usler.tar.gz r.usler] creates USLE R factor (Rainfall erosivity) from annual precipitations. It has 4 methods, Morgan, Roose, Foster and El-Swaify to choose from.&amp;lt;BR&amp;gt;'''Authors:''' Natalia Medvedeva and Yann Chemin&lt;br /&gt;
* [http://www.star.ait.ac.th/~yann/sebal/r.uslek.tar.gz r.uslek] creates USLE K factor (soil erodibility) from sand,clay,silt fractions and organic matter fraction. Based on USDA 1951 (p209) quoted in FAO World Soil CD, and from some generic [soil class+OM] to K conversion table.Update: Fixed input file swap and silty-clay class recognition.&amp;lt;BR&amp;gt;'''Author:''' Yann Chemin&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
* [http://www.star.ait.ac.th/~yann/sebal/r.albedo.tar.gz r.albedo] creates Albedo. Albedo is the shortwave surface reflectance in the range of 0.3-3 micro-meters. This module takes Modis, Aster, Landsat or AVHRR individual surface reflectance bands  to calculate Albedo. This module is a precursor to r.sun or any Energy-Balance related processing.&amp;lt;BR&amp;gt;'''Author:''' Yann Chemin&lt;br /&gt;
* [http://www.star.ait.ac.th/~yann/sebal/ r.eb.*] are a set of 13 GRASS modules that together perform the main functions of the SEBAL model (Bastiaanssen, 1995). Those functions include (but are not limited to) Soil heat flux, sensible heat flux, net radiation, evaporative fraction at satellite overpass, diurnal actual evapotranspiration, momentum roughness length, etc. These modules are also part of any Energy-Balance related processing.&amp;lt;BR&amp;gt;'''Author:''' Yann Chemin&lt;br /&gt;
* [http://www.star.ait.ac.th/~yann/sebal/r.evapo.potrad.tar.gz r.evapo.potrad] create diurnal Potential evapotranspiration assuming all net radiation becomes ET, according to SEBAL model (Bastiaanssen, 1995). This module also has a flag for diurnal net radiation as required by SEBAL in [http://www.star.ait.ac.th/~yann/sebal/r.eb.eta.tar.gz r.eb.eta]. &amp;lt;BR&amp;gt;'''Author:''' Yann Chemin&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
* [http://www.star.ait.ac.th/~yann/sebal/r.vi.tar.gz r.vi] creates a given Vegetation index from a list of 13 of them, most of them only requiring Red and NIR. Updated to accept all types of input data. &amp;lt;BR&amp;gt;'''Authors:''' Baburao Kamble and Yann Chemin&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
* [http://www.star.ait.ac.th/~yann/sebal/r.dn2ref.l7.tar.gz r.dn2ref.l7] [http://www.star.ait.ac.th/~yann/sebal/r.dn2ref.ast.tar.gz r.dn2ref.ast] create top of atmosphere reflectance for Landsat 7ETM+ and ASTER. These modules also have a flag for radiance output. Updated r.dn2ref.l7 to read .met calibration file. [http://www.star.ait.ac.th/~yann/sebal/r.dn2full.l7.tar.gz r.dn2full.l7] is an attempt to get all bands of Landsat7 calibrated and corrected to either reflectance or temperature, reads only the met file. &amp;lt;BR&amp;gt;'''Author:''' Yann Chemin&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
* [http://www.star.ait.ac.th/~yann/sebal/r.biomass.tar.gz r.biomass] create biomass growth map from fPAR, lightuse efficiency, water availability (or evap.fraction), Lat, doy and tsw . &amp;lt;BR&amp;gt;'''Author:''' Yann Chemin&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
* [http://www.pois.org/florian/downloads/grass/r.boxcount.tgz r.boxcount] and [http://www.pois.org/florian/downloads/grass/r.boxcount.sh.tgz r.boxcount.sh] calculate the fractal dimension for a given map. These are versions for grass6 of [http://www.ucl.ac.uk/~tcrnmar/ Mark Lake's modules] for grass43.&amp;lt;br&amp;gt; '''Authors:''' Mark Lake, grass6 port: Florian Kindl&lt;br /&gt;
&lt;br /&gt;
===General add-ons===&lt;br /&gt;
&lt;br /&gt;
* [http://www.gdf-hannover.de/dassau/g.laptop/g.laptop.sh g.laptop.sh] is an interactive shell script to extract raster and vector data from current Location into a new one. Data can be copied or extracted in current or original resolution and region extend. This script was written to extract smaller parts of a GRASS location to be able to present them on a laptop without the necessity to transfer huge data. Maps do not have to be in the same mapset.&amp;lt;BR&amp;gt;'''Author:''' Otto Dassau &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* '''''Readline completion''''' for GRASS commands under the bash shell: [http://www.sorokine.info/grass-complete/ grass-complete] won't clutter the environment but needs to be installed; [http://dcalvelo.free.fr/grass/grass_rlcompleter.sh grass_rlcompleter.sh] needs almost no installation but will pollute the environment. Grass-Complete currently requires Bash version 2.05 for proper install.&amp;lt;BR&amp;gt;'''Author:''' Alexandre Sorokine (grass-complete), Daniel Calvelo (grass_rlcompleter.sh)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
=== Imagery add-ons ===&lt;br /&gt;
&lt;br /&gt;
* [http://www.star.ait.ac.th/~yann/6s/i.atcorr.1.3.1b.tar.gz i.atcorr] Atmospheric Correction using Christo Zietsman's implementation of 6s code in C/C++. The Old Page was rescued by Christo recently and copied [http://www.star.ait.ac.th/~yann/6s/ here]. Compiled in CVS but not tested. Update: The source code is somehow functional in GRASS CVS, it is processing and creates output map, but does not accept non-default input. Not Tested/Validated! &amp;lt;BR&amp;gt;'''Author:''' Christo Zietsman&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/gdal/i.warp61 i.warp61] is a shell script that will use gdalwarp to rectify a raw input image using thin plate splines. The map should be imported into GRASS with r.in.gdal and GCPs set with i.points. Input is the raw image (GeoTIFF, JPEG, etc). Output is a GeoTIFF in the imagery group's target location's map projection. Requires a recent (early 2006) version of GRASS 6.1, or newer.&amp;lt;BR&amp;gt;'''Author:''' Hamish Bowman&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Display add-ons ===&lt;br /&gt;
&lt;br /&gt;
* [http://www.ornl.gov/sci/gist/software/grass/ pd-GRASS]: Parallel Display for GRASS GIS&amp;lt;BR&amp;gt;'''Author:''' Alex Sorokine&lt;br /&gt;
&lt;br /&gt;
==== [[IconSymbols]] ====&lt;br /&gt;
* [[IconSymbols|Symbols]] which can be used with ''d.vect, d.graph'', and ''ps.map''.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/d.frame.quarter d.frame.quarter] is a shell script that will split the display into four quadrants using ''d.frame''. Individual frames are named ''uno, dos, tres, cuatro'', and ''full_screen''.&amp;lt;BR&amp;gt;'''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [ftp://gsca.nrcan.gc.ca/outgoing/Patton/Grass/d.hyperlink.tar.bz2 d.hyperlink] is an interactive shell script that allows the viewing of hyperlinked images from a vector's attribute table in an external image viewer. Queries can be made via SQL statements or interactive mouse-clicking. The attribute table must be pre-populated with a column containing the image to link the vector to; the user also specifies the image folder in the current MAPSET where the images are located. The script currently supports gimp, Eye of Gnome, gthumb, gpdf, and Inkscape image viewers. (Right-click and choose 'Save Link As')&amp;lt;BR&amp;gt;'''Author: '''Eric Patton&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/d.stations d.stations] is a shell script that quickly displays vector points (or sites for GRASS 5.4 and below).&amp;lt;BR&amp;gt;'''Author:''' Hamish Bowman &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/d.varea d.varea] is a shell script that quickly displays vector areas.&amp;lt;BR&amp;gt;'''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
===Postscript add-ons===&lt;br /&gt;
&lt;br /&gt;
* [http://les-ejk.cz/programs/grass/ps.atlas ps.atlas] is a shell script that makes more maps on current region according to input *.psmap file. General map can be stored as vector file. The resulting *.eps maps can be automatically converted to *.pdf files.&amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [[ps.map scripts|ps.map samples/templates]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== [[AreaFillPatterns]] ====&lt;br /&gt;
* Hatches for ps.map's vareas&lt;br /&gt;
&lt;br /&gt;
===GRASS and UMN Mapserver===&lt;br /&gt;
&lt;br /&gt;
* [http://www.mail-archive.com/mapserver-users@lists.umn.edu/msg00086.html See interesting posting]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Community]]&lt;br /&gt;
[[Category:Development]]&lt;br /&gt;
[[Category:Documentation]]&lt;br /&gt;
[[Category:Installation]]&lt;/div&gt;</summary>
		<author><name>⚠️EricPatton</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=AddOns&amp;diff=2978</id>
		<title>AddOns</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=AddOns&amp;diff=2978"/>
		<updated>2006-11-10T18:19:53Z</updated>

		<summary type="html">&lt;p&gt;⚠️EricPatton: /* IconSymbols */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page contains references to user contributions and add-ons (the original GRASS GIS software can be downloaded [http://grass.itc.it/download/index.php here]).&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
==Copyright and licensing information==&lt;br /&gt;
&lt;br /&gt;
''Please be sure to include copyright and licensing information in the header comments of your code so that others may know how they can use, extend, modify, and redistribute your work.''&lt;br /&gt;
&lt;br /&gt;
e.g. at the top of a shell script:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/sh&lt;br /&gt;
############################################################################&lt;br /&gt;
#&lt;br /&gt;
# MODULE:       v.in.e00&lt;br /&gt;
#&lt;br /&gt;
# AUTHOR(S):    Markus Neteler, Otto Dassau&lt;br /&gt;
#&lt;br /&gt;
# PURPOSE:      Import E00 data into a GRASS vector map&lt;br /&gt;
#               Imports single and split E00 files (.e00, .e01, .e02 ...)&lt;br /&gt;
#&lt;br /&gt;
# COPYRIGHT:    (c) 2004, 2005 GDF Hannover bR, http://www.gdf-hannover.de&lt;br /&gt;
#&lt;br /&gt;
#               This program is free software under the GNU General Public&lt;br /&gt;
#               License (&amp;gt;=v2). Read the file COPYING that comes with GRASS&lt;br /&gt;
#               for details.&lt;br /&gt;
#&lt;br /&gt;
#############################################################################&lt;br /&gt;
#&lt;br /&gt;
# REQUIREMENTS:&lt;br /&gt;
#      -  avcimport: http://avce00.maptools.org&lt;br /&gt;
&lt;br /&gt;
[script follows]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Shell script coding standards==&lt;br /&gt;
&lt;br /&gt;
Please have a look at our [http://grass.itc.it/grass63/source/SUBMITTING_SCRIPTS Shell script coding standards] before submitting here.&lt;br /&gt;
&lt;br /&gt;
==Miscellaneous Add-ons==&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/utm_which_zone.sh utm_which_zone.sh] is a shell script to determine UTM zone from Lat/Lon input. Requires [http://www.octave.org Octave] to be installed. A shell-only version is [http://dcalvelo.free.fr/grass/utm_which_zone_sh.sh available] which only requires awk.&amp;lt;BR&amp;gt;'''Authors''': Hamish Bowman (Octave part), Markus Neteler (shell script wrapper), Daniel Calvelo (sh+awk version)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Perl scripts for converting data forth and back between Excel files and PostgreSQL: [http://dcalvelo.free.fr/grass/pg2xls.pl pg2xls.pl] reads data from PostgreSQL and produces an excel workbook; [http://dcalvelo.free.fr/grass/xls2sql.pl xls2sql.pl] reads excel files and outputs SQL statements to be fed into an RDBMS. Both scripts need modules from [http://www.cpan.org CPAN], especially [http://search.cpan.org/dist/Spreadsheet-ParseExcel/  Spreadsheet::ParseExcel] for xls2sql.pl and [http://search.cpan.org/~tmtm/Spreadsheet-WriteExcel-FromDB Spreadsheet::WriteExcel::FromDB] and its dependencies for pg2sql.pl. Check the source headers for more info.&amp;lt;BR&amp;gt;'''Authors:''' Daniel Calvelo (xls2sql.pl), Markus Neteler (pg2xls.pl)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://dream.lrrl.arch.tu-muenchen.de/~wqual/perl/dbf2sql.tgz dbf2sql] is a Perl script for translating dbf-tables into a sql-command. dbf-tables are read using dbfdump-command from dbd-xbase-perl module ([http://search.cpan.org/~janpaz/DBD-XBase-0.241/ dbd::xbase] and [http://search.cpan.org/~jv/Getopt-Long-2.35/lib/Getopt/Long.pm getopt::long] have to be installed from CPAN first). There are problems, if the last column of the table contains characters. Suggestions for improvements welcome! &amp;lt;BR&amp;gt;'''Author:'''Wolfgang Qual&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.igc.usp.br/pessoais/guano/downloads/azimuth2.c azimuth2.c] is a small C program to calculate the azimuth and length of vector lines exported by GRASS-GIS as ASCII files (like this: v.out.ascii input=vector output=ascii format=standard). It is useful for create rose diagrams of lineament maps. Improvements on the original code after suggestions by Örs Téglásy, Hungary.&amp;lt;BR&amp;gt;'''Author:''' Carlos Henrique Grohmann&lt;br /&gt;
&lt;br /&gt;
==GRASS 5.x==&lt;br /&gt;
&lt;br /&gt;
===Vector add-ons for GRASS 5===&lt;br /&gt;
&lt;br /&gt;
* See here: http://grass.itc.it/download/addons.php&lt;br /&gt;
&lt;br /&gt;
===Raster add-ons for GRASS 5===&lt;br /&gt;
&lt;br /&gt;
* See here: http://grass.itc.it/download/addons.php&lt;br /&gt;
&lt;br /&gt;
* [http://www.valledemexico.ambitiouslemon.com/gwmodelling.html r.gmtg] The groundwater modelling tool for grass. A module to use MODFLOW within GRASS. &amp;lt;BR&amp;gt;'''Author''': Jaime Carrera&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==GRASS 6.x==&lt;br /&gt;
&lt;br /&gt;
===Vector add-ons===&lt;br /&gt;
&lt;br /&gt;
* [http://geni.ath.cx/grass/v.out.gmt v.out.gmt] is a shell script that exports a polygon vector file into GMT xy file. psbasemap code was copied from Hamish's r.out.gmt. &amp;lt;BR&amp;gt;'''Author:''' Huidae Cho, Hamish Bowman, Dylan Beaudette&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.pois.org/florian/downloads/grass/v.strahler.tgz v.strahler] is a module that calculates the Strahler Order for all lines of a given dendritic network. &amp;lt;BR&amp;gt;'''Author:''' Florian Kindl&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://svg.cc/grass/index.html v.out.svg] is a module that exports SVG notation along with optional attribute data directly from GRASS 6.x vector layers. &amp;lt;BR&amp;gt;'''Author:''' Klaus Förster&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://les-ejk.cz/programs/trees.html v.trees3d] is a module for making 3D trees from input vector point file. &amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.public.asu.edu/~cmbarton/files/grass_scripts/v.lda v.lda] is a shell script for calculating Ian Johnson's (U. Sidney) Local Density Analysis values to measure clustering of point data at different neighborhood radii. There is an option to create a simple line graph of the results. There have been reports of problems creating the line graph on Cygwin installations of GRASS.&amp;lt;BR&amp;gt;'''Author:''' Michael Barton &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.public.asu.edu/~cmbarton/files/grass_scripts/v.append v.append] is a shell script combining two vector files AND their associated attribute tables. The vector files should be of the same type and, for best results, should have identically formatted attribute tables.&amp;lt;BR&amp;gt;'''Author:''' Michael Barton &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.shockfamily.net/cedric/grass/v.group v.group] generates a new vector map with the same geometry as an existing map. The new map has categories and a table based on grouping by the values in certain columns of the existing map's table. The values in these columns are preserved in the table for the new map. It's like a v.reclass that preserves data.&amp;lt;BR&amp;gt;'''Author:''' Cedric Shock&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/v.out.ascii.db v.out.ascii.db] is a shell script for exporting vector point data coordinates and selected attribute columns to either a file or to the console.&amp;lt;BR&amp;gt;'''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.fle.czu.cz/~jachym/programs/v.rasterbounds v.rasterbounds] is a shell script for creating polygon-vector file of rasterfile boundaries. The best version of GRASS is 6.1+. If you are using GRASS &amp;lt; 6.1, you  have to be in the same mapset as your raster maps are from.&amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.fle.czu.cz/~jachym/programs/v.3Dtin v.3Dtin] is a shell script for making 3D-vector of the 2D ouput from ''v.delauny''. &amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.clubwebcanada.ca/twiens/v.sample.buffer.tgz v.sample.buffer] is a shell script that samples rasters in buffers of a specified size around features in a specified vector file. Sampling results are added as attributes to the vector file. This script was designed for sampling vegetation indices and DEM derived attributes for bird point counts. Sampling results can be one or more basic statistics such as mean, range, max, etc.&amp;lt;BR&amp;gt;'''Author:''' Trevor Wiens&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.gfosservices.it/materiale_didattico/moduli/v.variogram.tar.gz v.variogram] is a script that create an omnidirectional experimental semi-variogram. This scripts require R-statistics software installed on your machine. Please see a [http://grass.itc.it/pipermail/statsgrass/2006-October/000455.html reply] on the STATGRASS list for changes need to the script to run on spgrass6 &amp;gt;= 0.3 and sp &amp;gt;= 0.9. &amp;lt;BR&amp;gt;'''Author:''' Ivan Marchesini, Pierluigi De Rosa.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.gfosservices.it/materiale_didattico/moduli/v.krige.tar.gz v.krige] is a script that  do a surface interpolation from vector point data by Kriging method.The interpolated value of a cell is determined by using an omnidirectional variogram model fitted starting from model parameter given by user desumed from the experimental semi variogram produced by v.variogram.&amp;lt;BR&amp;gt;'''Author:''' Ivan Marchesini, Pierluigi De Rosa&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://ngeo.de/grassstuff/v.lmeasure v.lmeasure] and [http://ngeo.de/grassstuff/v.revlmeasure v.revlmeasure] are two perl scripts that place equidistant vector points along a given arbitrary vector line starting from the beginning or end of the vector line, respectively. Resulting  vector points are labeled with the distance from origin.&amp;lt;BR&amp;gt;'''Author:''' Mats Schuh&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://david.p.finlayson.googlepages.com/v.swathwidth v.swathwidth] creates a vector map representing the sea bottom coverage of a multibeam (swath) sonar survey.&amp;lt;BR&amp;gt;'''Author:''' David Finlayson&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://kufaya.googlepages.com/v.flip.tar.gz v.flip] flips the direction of selected vector lines.&amp;lt;BR&amp;gt;'''Author:''' Maciej Sieczka&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://phygeo7.geo.uni-augsburg.de/gis2/scripts/v.digatt v.digatt] (shell script) Interactively assign numeric table attributes to series of vector objects. It is meant to be effective by avoiding to type in the attribute value for all single objects again and again. The user is prompted for typing in an attribute value which is assigned to all objects selected by mouseclick afterwards. Next the display is redrawn after updating the table column. Zooming allows to change the region before the old value can be reused or a new one can be typed in (or copied by mouse from another object) in order to assign it to the next series of objects etc. It is tested not very extensively yet. Therefore better work with a copy of your map and consider using v.digit or d.what.vect -e alternatively. [http://phygeo7.geo.uni-augsburg.de/gis2/scripts/v.digatt.png screenshot]. &amp;lt;BR&amp;gt;'''Author:''' Andreas Philipp&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://k153-85.fsv.cvut.cz/cgi-bin/viewcvs.cgi/grass6/vector/v.in.gama/ v.in.gama] converts [http://www.gnu.org/software/gama/ GNU GaMa] XML output file to a GRASS vector map layer.&amp;lt;br /&amp;gt;'''Author:''' Martin Landa&lt;br /&gt;
&lt;br /&gt;
===Raster add-ons===&lt;br /&gt;
&lt;br /&gt;
* [http://www.igc.usp.br/pessoais/guano/downloads/r.roughness r.roughness] is a shell script to calculate the surface roughness of a DEM, using r.surf.area and v.surf.rst. (for GRASS versions 6.1 and above)&lt;br /&gt;
* [http://www.igc.usp.br/pessoais/guano/downloads/r.roughness60 r.roughness60] - for GRASS versions 6.0.X&amp;lt;BR&amp;gt;'''Author:''' Carlos Henrique Grohmann&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://les-ejk.cz/programs/grass/r.gauss.tgz r.gauss] is Gaussian and Laplacian of Gaussian filter for GRASS. It is written in C language.&amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://les-ejk.cz/programs/grass/r.mlv.tgz r.mlv] is Mean of least variance filter for GRASS. It is an edge-preserving (or even edge-enhacing) filter, which should serve for removing additive noise from images. It is written in C language.&amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://les-ejk.cz/programs/grass/r.bilateral.tgz r.bilateral] Bilateral filter is an edge-preserving filter, which combines domain and range filtering. It is written in C language.&amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://les-ejk.cz/programs/zc.pl Zero crossing] is a simple Perl script, finds the ,,zero crossings`` from the Laplacian of Gaussian filter (see above). It is really &amp;lt;em&amp;gt;very&amp;lt;/em&amp;gt; simple, the edges don't need to be really on that pixel, where they are detected, no interpolation is performed.&amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
     '''Usage:'''&lt;br /&gt;
     zc.pl -i input -o output |r.mapcalc&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://les-ejk.cz/programs/local_max.pl Local maxima] is a Perl script for &amp;lt;code&amp;gt;r.mapcalc&amp;lt;/code&amp;gt;. It detects local maxima of the image.&amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
     '''Usage:'''&lt;br /&gt;
     local_maxima.pl -i input -o output -s matrix_size|r.mapcalc&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/r.out.gmt r.out.gmt] is a GRASS script for exporting a GRASS raster map into a [[http://www.soest.hawaii.edu/gmt/ GMT]] grid file. It also creates a GMT color table from the data and can generate some GMT commands for plotting a postscript file. (code is experimental, but functional)&amp;lt;BR&amp;gt;see  also http://169.237.35.250/~dylan/grass_user_group/#GMT_and_GRASS-overview&amp;lt;BR&amp;gt;'''Authors:''' Hamish Bowman, Dylan Beaudette&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://geni.ath.cx/grass/r.out.gmt yet another r.out.gmt] is a modified version of Hamish's r.out.gmt.  Added options for title, xlabel, ylabel, comment, and map width.  Removed any settings that can be changed by gmtset for more flexibility.&amp;lt;BR&amp;gt;'''Author:''' Hamish Bowman, Huidae Cho, Dylan Beaudette&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/r.pack r.pack] and [http://bambi.otago.ac.nz/hamish/grass/r.unpack r.unpack] are two GRASS scripts for transfering raster maps to another computer as a single file.&amp;lt;BR&amp;gt;'''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/dominant_dir.m dominant_dir.m] and [http://bambi.otago.ac.nz/hamish/grass/calc_terraflow_dir.m calc_terraflow_dir.m] are two Matlab scripts for determining the dominant flow direction from a r.terraflow MFD map and converting into a GRASS aspect map for use with d.rast.arrow, etc.&amp;lt;BR&amp;gt;'''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www-pool.math.tu-berlin.de/~soeren/grass/modules/ r.in.onearth] for download and import satellite images direct from the NASA onearth WMS server into GRASS.&amp;lt;BR&amp;gt;'''Author:''' Soeren Gebbert&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.shockfamily.net/cedric/grass/r.tileset r.tileset] generates a list of tiles and sizes in a source projection that cover the region in the current database with appropriate resolution. The size of individual tiles can be constrained. Only tiles intersecting the current region are returned. These tilings are appropriate for requesting data from another projection to meet the specifications of the current region. For example, it could be used to generate tile requests to a latitude / longitude WMS server like this &amp;lt;code&amp;gt;r.tileset -w sourceproj=&amp;quot;+init=epsg:4326&amp;quot;&amp;lt;/code&amp;gt;.&amp;lt;BR&amp;gt;'''Author:''' Cedric Shock&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [ftp://gsca.nrcan.gc.ca/outgoing/Patton/Grass/r.csr.tar.bz2 r.csr] integrates several Grass programs to produce colored, shaded-relief rasters in one step. Accepts single or multiple elevation/bathymetry maps as input; optionally will fill data holidays with 3x3 median filter, multiple times, if required; can apply color maps from a) input raster, b) another raster in MAPSET, or c) from a rules file; otherwise, rainbow colorbar is applied. Output colored, shaded-relief rasters can optionally be exported to tiff format and archived using tar with gzip/bzip2 compression if appropriate flags are given. Shading parameters can be modified, though useful defaults are given. (Right-click and choose 'Save Link As')&amp;lt;BR&amp;gt;'''Author:''' Eric Patton&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [ftp://gsca.nrcan.gc.ca/outgoing/Patton/Grass/r.fragment.tar.bz2 r.fragment] fragments a raster into a user-defined set of smaller tiles according to an input number of rows and columns. Optionally, a null value threshold can be set to filter out candidate tiles that would have a large percentage of null cells. (Right-click and choose 'Save Link As')&amp;lt;BR&amp;gt;'''Author:''' Eric Patton&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://david.p.finlayson.googlepages.com/r.eucdist r.eucdist] creates a raster map estimating the euclidean distance from known cells.&amp;lt;BR&amp;gt;'''Author:''' David Finlayson&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://david.p.finlayson.googlepages.com/r.smoothpatch r.smoothpatch] creates a composite of two rasters using a distance-weighted average across the transition to smooth the edges.&amp;lt;BR&amp;gt;'''Author:''' David Finlayson&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.faunalia.it/download/r_li/ r.li] is a more flexible and faster replacement of the old r.le. Please note: r.li is now on grass-cvs. --[[User:Cavallini|Cavallini]] 16:50, 6 November 2006 (CET)&amp;lt;BR&amp;gt;&lt;br /&gt;
[http://www.faunalia.com/mediawiki/index.php/R_li Wiki page]&amp;lt;BR&amp;gt;&lt;br /&gt;
'''Authors:''' Claudio Porta, Davide Spano, Serena Pallecchi, [http://www.faunalia.it Faunalia]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://kufaya.googlepages.com/r.surf.nnbathy.tar.gz r.surf.nnbathy] interpolates surface from raster input using [http://www.marine.csiro.au/~sakov/ nn] natural neighbor intepolation library.&amp;lt;BR&amp;gt;'''Author:''' Maciej Sieczka&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
* [http://www.star.ait.ac.th/~yann/sebal/r.usler.tar.gz r.usler] creates USLE R factor (Rainfall erosivity) from annual precipitations. It has 4 methods, Morgan, Roose, Foster and El-Swaify to choose from.&amp;lt;BR&amp;gt;'''Authors:''' Natalia Medvedeva and Yann Chemin&lt;br /&gt;
* [http://www.star.ait.ac.th/~yann/sebal/r.uslek.tar.gz r.uslek] creates USLE K factor (soil erodibility) from sand,clay,silt fractions and organic matter fraction. Based on USDA 1951 (p209) quoted in FAO World Soil CD, and from some generic [soil class+OM] to K conversion table.Update: Fixed input file swap and silty-clay class recognition.&amp;lt;BR&amp;gt;'''Author:''' Yann Chemin&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
* [http://www.star.ait.ac.th/~yann/sebal/r.albedo.tar.gz r.albedo] creates Albedo. Albedo is the shortwave surface reflectance in the range of 0.3-3 micro-meters. This module takes Modis, Aster, Landsat or AVHRR individual surface reflectance bands  to calculate Albedo. This module is a precursor to r.sun or any Energy-Balance related processing.&amp;lt;BR&amp;gt;'''Author:''' Yann Chemin&lt;br /&gt;
* [http://www.star.ait.ac.th/~yann/sebal/ r.eb.*] are a set of 13 GRASS modules that together perform the main functions of the SEBAL model (Bastiaanssen, 1995). Those functions include (but are not limited to) Soil heat flux, sensible heat flux, net radiation, evaporative fraction at satellite overpass, diurnal actual evapotranspiration, momentum roughness length, etc. These modules are also part of any Energy-Balance related processing.&amp;lt;BR&amp;gt;'''Author:''' Yann Chemin&lt;br /&gt;
* [http://www.star.ait.ac.th/~yann/sebal/r.evapo.potrad.tar.gz r.evapo.potrad] create diurnal Potential evapotranspiration assuming all net radiation becomes ET, according to SEBAL model (Bastiaanssen, 1995). This module also has a flag for diurnal net radiation as required by SEBAL in [http://www.star.ait.ac.th/~yann/sebal/r.eb.eta.tar.gz r.eb.eta]. &amp;lt;BR&amp;gt;'''Author:''' Yann Chemin&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
* [http://www.star.ait.ac.th/~yann/sebal/r.vi.tar.gz r.vi] creates a given Vegetation index from a list of 13 of them, most of them only requiring Red and NIR. Updated to accept all types of input data. &amp;lt;BR&amp;gt;'''Authors:''' Baburao Kamble and Yann Chemin&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
* [http://www.star.ait.ac.th/~yann/sebal/r.dn2ref.l7.tar.gz r.dn2ref.l7] [http://www.star.ait.ac.th/~yann/sebal/r.dn2ref.ast.tar.gz r.dn2ref.ast] create top of atmosphere reflectance for Landsat 7ETM+ and ASTER. These modules also have a flag for radiance output. Updated r.dn2ref.l7 to read .met calibration file. [http://www.star.ait.ac.th/~yann/sebal/r.dn2full.l7.tar.gz r.dn2full.l7] is an attempt to get all bands of Landsat7 calibrated and corrected to either reflectance or temperature, reads only the met file. &amp;lt;BR&amp;gt;'''Author:''' Yann Chemin&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
* [http://www.star.ait.ac.th/~yann/sebal/r.biomass.tar.gz r.biomass] create biomass growth map from fPAR, lightuse efficiency, water availability (or evap.fraction), Lat, doy and tsw . &amp;lt;BR&amp;gt;'''Author:''' Yann Chemin&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
* [http://www.pois.org/florian/downloads/grass/r.boxcount.tgz r.boxcount] and [http://www.pois.org/florian/downloads/grass/r.boxcount.sh.tgz r.boxcount.sh] calculate the fractal dimension for a given map. These are versions for grass6 of [http://www.ucl.ac.uk/~tcrnmar/ Mark Lake's modules] for grass43.&amp;lt;br&amp;gt; '''Authors:''' Mark Lake, grass6 port: Florian Kindl&lt;br /&gt;
&lt;br /&gt;
===General add-ons===&lt;br /&gt;
&lt;br /&gt;
* [http://www.gdf-hannover.de/dassau/g.laptop/g.laptop.sh g.laptop.sh] is an interactive shell script to extract raster and vector data from current Location into a new one. Data can be copied or extracted in current or original resolution and region extend. This script was written to extract smaller parts of a GRASS location to be able to present them on a laptop without the necessity to transfer huge data. Maps do not have to be in the same mapset.&amp;lt;BR&amp;gt;'''Author:''' Otto Dassau &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* '''''Readline completion''''' for GRASS commands under the bash shell: [http://www.sorokine.info/grass-complete/ grass-complete] won't clutter the environment but needs to be installed; [http://dcalvelo.free.fr/grass/grass_rlcompleter.sh grass_rlcompleter.sh] needs almost no installation but will pollute the environment. Grass-Complete currently requires Bash version 2.05 for proper install.&amp;lt;BR&amp;gt;'''Author:''' Alexandre Sorokine (grass-complete), Daniel Calvelo (grass_rlcompleter.sh)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
=== Imagery add-ons ===&lt;br /&gt;
&lt;br /&gt;
* [http://www.star.ait.ac.th/~yann/6s/i.atcorr.1.3.1b.tar.gz i.atcorr] Atmospheric Correction using Christo Zietsman's implementation of 6s code in C/C++. The Old Page was rescued by Christo recently and copied [http://www.star.ait.ac.th/~yann/6s/ here]. Compiled in CVS but not tested. Update: The source code is somehow functional in GRASS CVS, it is processing and creates output map, but does not accept non-default input. Not Tested/Validated! &amp;lt;BR&amp;gt;'''Author:''' Christo Zietsman&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/gdal/i.warp61 i.warp61] is a shell script that will use gdalwarp to rectify a raw input image using thin plate splines. The map should be imported into GRASS with r.in.gdal and GCPs set with i.points. Input is the raw image (GeoTIFF, JPEG, etc). Output is a GeoTIFF in the imagery group's target location's map projection. Requires a recent (early 2006) version of GRASS 6.1, or newer.&amp;lt;BR&amp;gt;'''Author:''' Hamish Bowman&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Display add-ons ===&lt;br /&gt;
&lt;br /&gt;
* [http://www.ornl.gov/sci/gist/software/grass/ pd-GRASS]: Parallel Display for GRASS GIS&amp;lt;BR&amp;gt;'''Author:''' Alex Sorokine&lt;br /&gt;
&lt;br /&gt;
==== [[IconSymbols]] ====&lt;br /&gt;
* [[IconSymbols|Symbols]] which can be used with ''d.vect, d.graph'', and ''ps.map''.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/d.frame.quarter d.frame.quarter] is a shell script that will split the display into four quadrants using ''d.frame''. Individual frames are named ''uno, dos, tres, cuatro'', and ''full_screen''.&amp;lt;BR&amp;gt;'''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [ftp://gsca.nrcan.gc.ca/outgoing/Patton/Grass/d.hyperlink.tar.bz2 d.hyperlink] is an interactive shell script that allows the viewing of hyperlinked images from a vector's attribute table in an external image viewer. Queries can be made via SQL statements or interactive mouse-clicking. The attribute table must be pre-populated with a column containing the image to link the vector to; the user also specifies the image folder in the current MAPSET where the images are located. The script currently supports gimp, Eye of Gnome, gthumb, gpdf, and Inkscape image viewers. (Right-click and choose 'Save Link As')&amp;lt;BR&amp;gt;'''Author: '''Eric Patton&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/d.stations d.stations] is a shell script that quickly displays vector points (or sites for GRASS 5.4 and below).&amp;lt;BR&amp;gt;'''Author:''' Hamish Bowman &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/d.varea d.varea] is a shell script that quickly displays vector areas.&amp;lt;BR&amp;gt;'''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
===Postscript add-ons===&lt;br /&gt;
&lt;br /&gt;
* [http://les-ejk.cz/programs/grass/ps.atlas ps.atlas] is a shell script that makes more maps on current region according to input *.psmap file. General map can be stored as vector file. The resulting *.eps maps can be automatically converted to *.pdf files.&amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [[ps.map scripts|ps.map samples/templates]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== [[AreaFillPatterns]] ====&lt;br /&gt;
* Hatches for ps.map's vareas&lt;br /&gt;
&lt;br /&gt;
===GRASS and UMN Mapserver===&lt;br /&gt;
&lt;br /&gt;
* [http://www.mail-archive.com/mapserver-users@lists.umn.edu/msg00086.html See interesting posting]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Community]]&lt;br /&gt;
[[Category:Development]]&lt;br /&gt;
[[Category:Documentation]]&lt;br /&gt;
[[Category:Installation]]&lt;/div&gt;</summary>
		<author><name>⚠️EricPatton</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=AddOns&amp;diff=2977</id>
		<title>AddOns</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=AddOns&amp;diff=2977"/>
		<updated>2006-11-10T18:11:49Z</updated>

		<summary type="html">&lt;p&gt;⚠️EricPatton: /* Raster add-ons */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page contains references to user contributions and add-ons (the original GRASS GIS software can be downloaded [http://grass.itc.it/download/index.php here]).&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
==Copyright and licensing information==&lt;br /&gt;
&lt;br /&gt;
''Please be sure to include copyright and licensing information in the header comments of your code so that others may know how they can use, extend, modify, and redistribute your work.''&lt;br /&gt;
&lt;br /&gt;
e.g. at the top of a shell script:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/sh&lt;br /&gt;
############################################################################&lt;br /&gt;
#&lt;br /&gt;
# MODULE:       v.in.e00&lt;br /&gt;
#&lt;br /&gt;
# AUTHOR(S):    Markus Neteler, Otto Dassau&lt;br /&gt;
#&lt;br /&gt;
# PURPOSE:      Import E00 data into a GRASS vector map&lt;br /&gt;
#               Imports single and split E00 files (.e00, .e01, .e02 ...)&lt;br /&gt;
#&lt;br /&gt;
# COPYRIGHT:    (c) 2004, 2005 GDF Hannover bR, http://www.gdf-hannover.de&lt;br /&gt;
#&lt;br /&gt;
#               This program is free software under the GNU General Public&lt;br /&gt;
#               License (&amp;gt;=v2). Read the file COPYING that comes with GRASS&lt;br /&gt;
#               for details.&lt;br /&gt;
#&lt;br /&gt;
#############################################################################&lt;br /&gt;
#&lt;br /&gt;
# REQUIREMENTS:&lt;br /&gt;
#      -  avcimport: http://avce00.maptools.org&lt;br /&gt;
&lt;br /&gt;
[script follows]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Shell script coding standards==&lt;br /&gt;
&lt;br /&gt;
Please have a look at our [http://grass.itc.it/grass63/source/SUBMITTING_SCRIPTS Shell script coding standards] before submitting here.&lt;br /&gt;
&lt;br /&gt;
==Miscellaneous Add-ons==&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/utm_which_zone.sh utm_which_zone.sh] is a shell script to determine UTM zone from Lat/Lon input. Requires [http://www.octave.org Octave] to be installed. A shell-only version is [http://dcalvelo.free.fr/grass/utm_which_zone_sh.sh available] which only requires awk.&amp;lt;BR&amp;gt;'''Authors''': Hamish Bowman (Octave part), Markus Neteler (shell script wrapper), Daniel Calvelo (sh+awk version)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Perl scripts for converting data forth and back between Excel files and PostgreSQL: [http://dcalvelo.free.fr/grass/pg2xls.pl pg2xls.pl] reads data from PostgreSQL and produces an excel workbook; [http://dcalvelo.free.fr/grass/xls2sql.pl xls2sql.pl] reads excel files and outputs SQL statements to be fed into an RDBMS. Both scripts need modules from [http://www.cpan.org CPAN], especially [http://search.cpan.org/dist/Spreadsheet-ParseExcel/  Spreadsheet::ParseExcel] for xls2sql.pl and [http://search.cpan.org/~tmtm/Spreadsheet-WriteExcel-FromDB Spreadsheet::WriteExcel::FromDB] and its dependencies for pg2sql.pl. Check the source headers for more info.&amp;lt;BR&amp;gt;'''Authors:''' Daniel Calvelo (xls2sql.pl), Markus Neteler (pg2xls.pl)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://dream.lrrl.arch.tu-muenchen.de/~wqual/perl/dbf2sql.tgz dbf2sql] is a Perl script for translating dbf-tables into a sql-command. dbf-tables are read using dbfdump-command from dbd-xbase-perl module ([http://search.cpan.org/~janpaz/DBD-XBase-0.241/ dbd::xbase] and [http://search.cpan.org/~jv/Getopt-Long-2.35/lib/Getopt/Long.pm getopt::long] have to be installed from CPAN first). There are problems, if the last column of the table contains characters. Suggestions for improvements welcome! &amp;lt;BR&amp;gt;'''Author:'''Wolfgang Qual&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.igc.usp.br/pessoais/guano/downloads/azimuth2.c azimuth2.c] is a small C program to calculate the azimuth and length of vector lines exported by GRASS-GIS as ASCII files (like this: v.out.ascii input=vector output=ascii format=standard). It is useful for create rose diagrams of lineament maps. Improvements on the original code after suggestions by Örs Téglásy, Hungary.&amp;lt;BR&amp;gt;'''Author:''' Carlos Henrique Grohmann&lt;br /&gt;
&lt;br /&gt;
==GRASS 5.x==&lt;br /&gt;
&lt;br /&gt;
===Vector add-ons for GRASS 5===&lt;br /&gt;
&lt;br /&gt;
* See here: http://grass.itc.it/download/addons.php&lt;br /&gt;
&lt;br /&gt;
===Raster add-ons for GRASS 5===&lt;br /&gt;
&lt;br /&gt;
* See here: http://grass.itc.it/download/addons.php&lt;br /&gt;
&lt;br /&gt;
* [http://www.valledemexico.ambitiouslemon.com/gwmodelling.html r.gmtg] The groundwater modelling tool for grass. A module to use MODFLOW within GRASS. &amp;lt;BR&amp;gt;'''Author''': Jaime Carrera&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==GRASS 6.x==&lt;br /&gt;
&lt;br /&gt;
===Vector add-ons===&lt;br /&gt;
&lt;br /&gt;
* [http://geni.ath.cx/grass/v.out.gmt v.out.gmt] is a shell script that exports a polygon vector file into GMT xy file. psbasemap code was copied from Hamish's r.out.gmt. &amp;lt;BR&amp;gt;'''Author:''' Huidae Cho, Hamish Bowman, Dylan Beaudette&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.pois.org/florian/downloads/grass/v.strahler.tgz v.strahler] is a module that calculates the Strahler Order for all lines of a given dendritic network. &amp;lt;BR&amp;gt;'''Author:''' Florian Kindl&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://svg.cc/grass/index.html v.out.svg] is a module that exports SVG notation along with optional attribute data directly from GRASS 6.x vector layers. &amp;lt;BR&amp;gt;'''Author:''' Klaus Förster&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://les-ejk.cz/programs/trees.html v.trees3d] is a module for making 3D trees from input vector point file. &amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.public.asu.edu/~cmbarton/files/grass_scripts/v.lda v.lda] is a shell script for calculating Ian Johnson's (U. Sidney) Local Density Analysis values to measure clustering of point data at different neighborhood radii. There is an option to create a simple line graph of the results. There have been reports of problems creating the line graph on Cygwin installations of GRASS.&amp;lt;BR&amp;gt;'''Author:''' Michael Barton &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.public.asu.edu/~cmbarton/files/grass_scripts/v.append v.append] is a shell script combining two vector files AND their associated attribute tables. The vector files should be of the same type and, for best results, should have identically formatted attribute tables.&amp;lt;BR&amp;gt;'''Author:''' Michael Barton &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.shockfamily.net/cedric/grass/v.group v.group] generates a new vector map with the same geometry as an existing map. The new map has categories and a table based on grouping by the values in certain columns of the existing map's table. The values in these columns are preserved in the table for the new map. It's like a v.reclass that preserves data.&amp;lt;BR&amp;gt;'''Author:''' Cedric Shock&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/v.out.ascii.db v.out.ascii.db] is a shell script for exporting vector point data coordinates and selected attribute columns to either a file or to the console.&amp;lt;BR&amp;gt;'''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.fle.czu.cz/~jachym/programs/v.rasterbounds v.rasterbounds] is a shell script for creating polygon-vector file of rasterfile boundaries. The best version of GRASS is 6.1+. If you are using GRASS &amp;lt; 6.1, you  have to be in the same mapset as your raster maps are from.&amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.fle.czu.cz/~jachym/programs/v.3Dtin v.3Dtin] is a shell script for making 3D-vector of the 2D ouput from ''v.delauny''. &amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.clubwebcanada.ca/twiens/v.sample.buffer.tgz v.sample.buffer] is a shell script that samples rasters in buffers of a specified size around features in a specified vector file. Sampling results are added as attributes to the vector file. This script was designed for sampling vegetation indices and DEM derived attributes for bird point counts. Sampling results can be one or more basic statistics such as mean, range, max, etc.&amp;lt;BR&amp;gt;'''Author:''' Trevor Wiens&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.gfosservices.it/materiale_didattico/moduli/v.variogram.tar.gz v.variogram] is a script that create an omnidirectional experimental semi-variogram. This scripts require R-statistics software installed on your machine. Please see a [http://grass.itc.it/pipermail/statsgrass/2006-October/000455.html reply] on the STATGRASS list for changes need to the script to run on spgrass6 &amp;gt;= 0.3 and sp &amp;gt;= 0.9. &amp;lt;BR&amp;gt;'''Author:''' Ivan Marchesini, Pierluigi De Rosa.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.gfosservices.it/materiale_didattico/moduli/v.krige.tar.gz v.krige] is a script that  do a surface interpolation from vector point data by Kriging method.The interpolated value of a cell is determined by using an omnidirectional variogram model fitted starting from model parameter given by user desumed from the experimental semi variogram produced by v.variogram.&amp;lt;BR&amp;gt;'''Author:''' Ivan Marchesini, Pierluigi De Rosa&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://ngeo.de/grassstuff/v.lmeasure v.lmeasure] and [http://ngeo.de/grassstuff/v.revlmeasure v.revlmeasure] are two perl scripts that place equidistant vector points along a given arbitrary vector line starting from the beginning or end of the vector line, respectively. Resulting  vector points are labeled with the distance from origin.&amp;lt;BR&amp;gt;'''Author:''' Mats Schuh&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://david.p.finlayson.googlepages.com/v.swathwidth v.swathwidth] creates a vector map representing the sea bottom coverage of a multibeam (swath) sonar survey.&amp;lt;BR&amp;gt;'''Author:''' David Finlayson&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://kufaya.googlepages.com/v.flip.tar.gz v.flip] flips the direction of selected vector lines.&amp;lt;BR&amp;gt;'''Author:''' Maciej Sieczka&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://phygeo7.geo.uni-augsburg.de/gis2/scripts/v.digatt v.digatt] (shell script) Interactively assign numeric table attributes to series of vector objects. It is meant to be effective by avoiding to type in the attribute value for all single objects again and again. The user is prompted for typing in an attribute value which is assigned to all objects selected by mouseclick afterwards. Next the display is redrawn after updating the table column. Zooming allows to change the region before the old value can be reused or a new one can be typed in (or copied by mouse from another object) in order to assign it to the next series of objects etc. It is tested not very extensively yet. Therefore better work with a copy of your map and consider using v.digit or d.what.vect -e alternatively. [http://phygeo7.geo.uni-augsburg.de/gis2/scripts/v.digatt.png screenshot]. &amp;lt;BR&amp;gt;'''Author:''' Andreas Philipp&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://k153-85.fsv.cvut.cz/cgi-bin/viewcvs.cgi/grass6/vector/v.in.gama/ v.in.gama] converts [http://www.gnu.org/software/gama/ GNU GaMa] XML output file to a GRASS vector map layer.&amp;lt;br /&amp;gt;'''Author:''' Martin Landa&lt;br /&gt;
&lt;br /&gt;
===Raster add-ons===&lt;br /&gt;
&lt;br /&gt;
* [http://www.igc.usp.br/pessoais/guano/downloads/r.roughness r.roughness] is a shell script to calculate the surface roughness of a DEM, using r.surf.area and v.surf.rst. (for GRASS versions 6.1 and above)&lt;br /&gt;
* [http://www.igc.usp.br/pessoais/guano/downloads/r.roughness60 r.roughness60] - for GRASS versions 6.0.X&amp;lt;BR&amp;gt;'''Author:''' Carlos Henrique Grohmann&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://les-ejk.cz/programs/grass/r.gauss.tgz r.gauss] is Gaussian and Laplacian of Gaussian filter for GRASS. It is written in C language.&amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://les-ejk.cz/programs/grass/r.mlv.tgz r.mlv] is Mean of least variance filter for GRASS. It is an edge-preserving (or even edge-enhacing) filter, which should serve for removing additive noise from images. It is written in C language.&amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://les-ejk.cz/programs/grass/r.bilateral.tgz r.bilateral] Bilateral filter is an edge-preserving filter, which combines domain and range filtering. It is written in C language.&amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://les-ejk.cz/programs/zc.pl Zero crossing] is a simple Perl script, finds the ,,zero crossings`` from the Laplacian of Gaussian filter (see above). It is really &amp;lt;em&amp;gt;very&amp;lt;/em&amp;gt; simple, the edges don't need to be really on that pixel, where they are detected, no interpolation is performed.&amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
     '''Usage:'''&lt;br /&gt;
     zc.pl -i input -o output |r.mapcalc&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://les-ejk.cz/programs/local_max.pl Local maxima] is a Perl script for &amp;lt;code&amp;gt;r.mapcalc&amp;lt;/code&amp;gt;. It detects local maxima of the image.&amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
     '''Usage:'''&lt;br /&gt;
     local_maxima.pl -i input -o output -s matrix_size|r.mapcalc&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/r.out.gmt r.out.gmt] is a GRASS script for exporting a GRASS raster map into a [[http://www.soest.hawaii.edu/gmt/ GMT]] grid file. It also creates a GMT color table from the data and can generate some GMT commands for plotting a postscript file. (code is experimental, but functional)&amp;lt;BR&amp;gt;see  also http://169.237.35.250/~dylan/grass_user_group/#GMT_and_GRASS-overview&amp;lt;BR&amp;gt;'''Authors:''' Hamish Bowman, Dylan Beaudette&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://geni.ath.cx/grass/r.out.gmt yet another r.out.gmt] is a modified version of Hamish's r.out.gmt.  Added options for title, xlabel, ylabel, comment, and map width.  Removed any settings that can be changed by gmtset for more flexibility.&amp;lt;BR&amp;gt;'''Author:''' Hamish Bowman, Huidae Cho, Dylan Beaudette&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/r.pack r.pack] and [http://bambi.otago.ac.nz/hamish/grass/r.unpack r.unpack] are two GRASS scripts for transfering raster maps to another computer as a single file.&amp;lt;BR&amp;gt;'''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/dominant_dir.m dominant_dir.m] and [http://bambi.otago.ac.nz/hamish/grass/calc_terraflow_dir.m calc_terraflow_dir.m] are two Matlab scripts for determining the dominant flow direction from a r.terraflow MFD map and converting into a GRASS aspect map for use with d.rast.arrow, etc.&amp;lt;BR&amp;gt;'''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www-pool.math.tu-berlin.de/~soeren/grass/modules/ r.in.onearth] for download and import satellite images direct from the NASA onearth WMS server into GRASS.&amp;lt;BR&amp;gt;'''Author:''' Soeren Gebbert&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.shockfamily.net/cedric/grass/r.tileset r.tileset] generates a list of tiles and sizes in a source projection that cover the region in the current database with appropriate resolution. The size of individual tiles can be constrained. Only tiles intersecting the current region are returned. These tilings are appropriate for requesting data from another projection to meet the specifications of the current region. For example, it could be used to generate tile requests to a latitude / longitude WMS server like this &amp;lt;code&amp;gt;r.tileset -w sourceproj=&amp;quot;+init=epsg:4326&amp;quot;&amp;lt;/code&amp;gt;.&amp;lt;BR&amp;gt;'''Author:''' Cedric Shock&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [ftp://gsca.nrcan.gc.ca/outgoing/Patton/Grass/r.csr.tar.bz2 r.csr] integrates several Grass programs to produce colored, shaded-relief rasters in one step. Accepts single or multiple elevation/bathymetry maps as input; optionally will fill data holidays with 3x3 median filter, multiple times, if required; can apply color maps from a) input raster, b) another raster in MAPSET, or c) from a rules file; otherwise, rainbow colorbar is applied. Output colored, shaded-relief rasters can optionally be exported to tiff format and archived using tar with gzip/bzip2 compression if appropriate flags are given. Shading parameters can be modified, though useful defaults are given. (Right-click and choose 'Save Link As')&amp;lt;BR&amp;gt;'''Author:''' Eric Patton&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [ftp://gsca.nrcan.gc.ca/outgoing/Patton/Grass/r.fragment.tar.bz2 r.fragment] fragments a raster into a user-defined set of smaller tiles according to an input number of rows and columns. Optionally, a null value threshold can be set to filter out candidate tiles that would have a large percentage of null cells. (Right-click and choose 'Save Link As')&amp;lt;BR&amp;gt;'''Author:''' Eric Patton&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://david.p.finlayson.googlepages.com/r.eucdist r.eucdist] creates a raster map estimating the euclidean distance from known cells.&amp;lt;BR&amp;gt;'''Author:''' David Finlayson&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://david.p.finlayson.googlepages.com/r.smoothpatch r.smoothpatch] creates a composite of two rasters using a distance-weighted average across the transition to smooth the edges.&amp;lt;BR&amp;gt;'''Author:''' David Finlayson&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.faunalia.it/download/r_li/ r.li] is a more flexible and faster replacement of the old r.le. Please note: r.li is now on grass-cvs. --[[User:Cavallini|Cavallini]] 16:50, 6 November 2006 (CET)&amp;lt;BR&amp;gt;&lt;br /&gt;
[http://www.faunalia.com/mediawiki/index.php/R_li Wiki page]&amp;lt;BR&amp;gt;&lt;br /&gt;
'''Authors:''' Claudio Porta, Davide Spano, Serena Pallecchi, [http://www.faunalia.it Faunalia]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://kufaya.googlepages.com/r.surf.nnbathy.tar.gz r.surf.nnbathy] interpolates surface from raster input using [http://www.marine.csiro.au/~sakov/ nn] natural neighbor intepolation library.&amp;lt;BR&amp;gt;'''Author:''' Maciej Sieczka&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
* [http://www.star.ait.ac.th/~yann/sebal/r.usler.tar.gz r.usler] creates USLE R factor (Rainfall erosivity) from annual precipitations. It has 4 methods, Morgan, Roose, Foster and El-Swaify to choose from.&amp;lt;BR&amp;gt;'''Authors:''' Natalia Medvedeva and Yann Chemin&lt;br /&gt;
* [http://www.star.ait.ac.th/~yann/sebal/r.uslek.tar.gz r.uslek] creates USLE K factor (soil erodibility) from sand,clay,silt fractions and organic matter fraction. Based on USDA 1951 (p209) quoted in FAO World Soil CD, and from some generic [soil class+OM] to K conversion table.Update: Fixed input file swap and silty-clay class recognition.&amp;lt;BR&amp;gt;'''Author:''' Yann Chemin&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
* [http://www.star.ait.ac.th/~yann/sebal/r.albedo.tar.gz r.albedo] creates Albedo. Albedo is the shortwave surface reflectance in the range of 0.3-3 micro-meters. This module takes Modis, Aster, Landsat or AVHRR individual surface reflectance bands  to calculate Albedo. This module is a precursor to r.sun or any Energy-Balance related processing.&amp;lt;BR&amp;gt;'''Author:''' Yann Chemin&lt;br /&gt;
* [http://www.star.ait.ac.th/~yann/sebal/ r.eb.*] are a set of 13 GRASS modules that together perform the main functions of the SEBAL model (Bastiaanssen, 1995). Those functions include (but are not limited to) Soil heat flux, sensible heat flux, net radiation, evaporative fraction at satellite overpass, diurnal actual evapotranspiration, momentum roughness length, etc. These modules are also part of any Energy-Balance related processing.&amp;lt;BR&amp;gt;'''Author:''' Yann Chemin&lt;br /&gt;
* [http://www.star.ait.ac.th/~yann/sebal/r.evapo.potrad.tar.gz r.evapo.potrad] create diurnal Potential evapotranspiration assuming all net radiation becomes ET, according to SEBAL model (Bastiaanssen, 1995). This module also has a flag for diurnal net radiation as required by SEBAL in [http://www.star.ait.ac.th/~yann/sebal/r.eb.eta.tar.gz r.eb.eta]. &amp;lt;BR&amp;gt;'''Author:''' Yann Chemin&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
* [http://www.star.ait.ac.th/~yann/sebal/r.vi.tar.gz r.vi] creates a given Vegetation index from a list of 13 of them, most of them only requiring Red and NIR. Updated to accept all types of input data. &amp;lt;BR&amp;gt;'''Authors:''' Baburao Kamble and Yann Chemin&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
* [http://www.star.ait.ac.th/~yann/sebal/r.dn2ref.l7.tar.gz r.dn2ref.l7] [http://www.star.ait.ac.th/~yann/sebal/r.dn2ref.ast.tar.gz r.dn2ref.ast] create top of atmosphere reflectance for Landsat 7ETM+ and ASTER. These modules also have a flag for radiance output. Updated r.dn2ref.l7 to read .met calibration file. [http://www.star.ait.ac.th/~yann/sebal/r.dn2full.l7.tar.gz r.dn2full.l7] is an attempt to get all bands of Landsat7 calibrated and corrected to either reflectance or temperature, reads only the met file. &amp;lt;BR&amp;gt;'''Author:''' Yann Chemin&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
* [http://www.star.ait.ac.th/~yann/sebal/r.biomass.tar.gz r.biomass] create biomass growth map from fPAR, lightuse efficiency, water availability (or evap.fraction), Lat, doy and tsw . &amp;lt;BR&amp;gt;'''Author:''' Yann Chemin&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
* [http://www.pois.org/florian/downloads/grass/r.boxcount.tgz r.boxcount] and [http://www.pois.org/florian/downloads/grass/r.boxcount.sh.tgz r.boxcount.sh] calculate the fractal dimension for a given map. These are versions for grass6 of [http://www.ucl.ac.uk/~tcrnmar/ Mark Lake's modules] for grass43.&amp;lt;br&amp;gt; '''Authors:''' Mark Lake, grass6 port: Florian Kindl&lt;br /&gt;
&lt;br /&gt;
===General add-ons===&lt;br /&gt;
&lt;br /&gt;
* [http://www.gdf-hannover.de/dassau/g.laptop/g.laptop.sh g.laptop.sh] is an interactive shell script to extract raster and vector data from current Location into a new one. Data can be copied or extracted in current or original resolution and region extend. This script was written to extract smaller parts of a GRASS location to be able to present them on a laptop without the necessity to transfer huge data. Maps do not have to be in the same mapset.&amp;lt;BR&amp;gt;'''Author:''' Otto Dassau &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* '''''Readline completion''''' for GRASS commands under the bash shell: [http://www.sorokine.info/grass-complete/ grass-complete] won't clutter the environment but needs to be installed; [http://dcalvelo.free.fr/grass/grass_rlcompleter.sh grass_rlcompleter.sh] needs almost no installation but will pollute the environment. Grass-Complete currently requires Bash version 2.05 for proper install.&amp;lt;BR&amp;gt;'''Author:''' Alexandre Sorokine (grass-complete), Daniel Calvelo (grass_rlcompleter.sh)&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
=== Imagery add-ons ===&lt;br /&gt;
&lt;br /&gt;
* [http://www.star.ait.ac.th/~yann/6s/i.atcorr.1.3.1b.tar.gz i.atcorr] Atmospheric Correction using Christo Zietsman's implementation of 6s code in C/C++. The Old Page was rescued by Christo recently and copied [http://www.star.ait.ac.th/~yann/6s/ here]. Compiled in CVS but not tested. Update: The source code is somehow functional in GRASS CVS, it is processing and creates output map, but does not accept non-default input. Not Tested/Validated! &amp;lt;BR&amp;gt;'''Author:''' Christo Zietsman&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/gdal/i.warp61 i.warp61] is a shell script that will use gdalwarp to rectify a raw input image using thin plate splines. The map should be imported into GRASS with r.in.gdal and GCPs set with i.points. Input is the raw image (GeoTIFF, JPEG, etc). Output is a GeoTIFF in the imagery group's target location's map projection. Requires a recent (early 2006) version of GRASS 6.1, or newer.&amp;lt;BR&amp;gt;'''Author:''' Hamish Bowman&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Display add-ons ===&lt;br /&gt;
&lt;br /&gt;
* [http://www.ornl.gov/sci/gist/software/grass/ pd-GRASS]: Parallel Display for GRASS GIS&amp;lt;BR&amp;gt;'''Author:''' Alex Sorokine&lt;br /&gt;
&lt;br /&gt;
==== [[IconSymbols]] ====&lt;br /&gt;
* [[IconSymbols|Symbols]] which can be used with ''d.vect, d.graph'', and ''ps.map''.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/d.frame.quarter d.frame.quarter] is a shell script that will split the display into four quadrants using ''d.frame''. Individual frames are named ''uno, dos, tres, cuatro'', and ''full_screen''.&amp;lt;BR&amp;gt;'''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [ftp://gsca.nrcan.gc.ca/outgoing/Patton/Grass/d.hyperlink.tar.gz d.hyperlink] is an interactive shell script that allows the viewing of hyperlinked images from a vector's attribute table in an external image viewer. Queries can be made via SQL statements or interactive mouse-clicking. The attribute table must be pre-populated with a column containing the image to link the vector to; the user also specifies the image folder in the current MAPSET where the images are located. The script currently supports gimp, Eye of Gnome, gthumb, gpdf, and Inkscape image viewers. (Right-click and choose 'Save Link As')&amp;lt;BR&amp;gt;'''Author: '''Eric Patton&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/d.stations d.stations] is a shell script that quickly displays vector points (or sites for GRASS 5.4 and below).&amp;lt;BR&amp;gt;'''Author:''' Hamish Bowman &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/d.varea d.varea] is a shell script that quickly displays vector areas.&amp;lt;BR&amp;gt;'''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
===Postscript add-ons===&lt;br /&gt;
&lt;br /&gt;
* [http://les-ejk.cz/programs/grass/ps.atlas ps.atlas] is a shell script that makes more maps on current region according to input *.psmap file. General map can be stored as vector file. The resulting *.eps maps can be automatically converted to *.pdf files.&amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [[ps.map scripts|ps.map samples/templates]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== [[AreaFillPatterns]] ====&lt;br /&gt;
* Hatches for ps.map's vareas&lt;br /&gt;
&lt;br /&gt;
===GRASS and UMN Mapserver===&lt;br /&gt;
&lt;br /&gt;
* [http://www.mail-archive.com/mapserver-users@lists.umn.edu/msg00086.html See interesting posting]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Community]]&lt;br /&gt;
[[Category:Development]]&lt;br /&gt;
[[Category:Documentation]]&lt;br /&gt;
[[Category:Installation]]&lt;/div&gt;</summary>
		<author><name>⚠️EricPatton</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=Updating_GRASS_Documentation&amp;diff=2884</id>
		<title>Updating GRASS Documentation</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=Updating_GRASS_Documentation&amp;diff=2884"/>
		<updated>2006-10-25T17:18:10Z</updated>

		<summary type="html">&lt;p&gt;⚠️EricPatton: /* = */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;h2&amp;gt;How-to for Updating Grass Manual Pages&amp;lt;/h2&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
This page will provide general step-by-step instructions for updating and improving Grass manual pages. Feel free to update and improve this page as well!&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
As an example, the vector program v.in.ascii will be used to illustrate the steps required to update its manual page. These steps can then be generalized for your case.&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
* To begin, you must obtain the latest Grass source code from the CVS repositories. Detailed instructions on how to do so can be found [http://grass.itc.it/faq/cvs_howto.html here.]&lt;br /&gt;
* Once you have downloaded the CVS source code, open a terminal and change directory to where the source for a specific GRASS module is located - in this example, something like:&lt;br /&gt;
&amp;lt;pre&amp;gt;/your_cvs_directory/grass6/vector/v.in.ascii&amp;lt;/pre&amp;gt;&lt;br /&gt;
* Open a text editor and make your edits to description.html. Save your edits by overwriting the original description.html.&lt;br /&gt;
* Within a terminal, create a 'unified diff' (a standard way to show changes between two versions of a file) of the Grass CVS repository version of description.html and your newly edited description.html:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cvs diff -u description.html &amp;gt; v.in.ascii.description.patch&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
This &amp;quot;diff -u&amp;quot; command will create a report in v.in.ascii.description.patch which shows any differences between the version of description.html still on the CVS server and your edited version; a '+' at the beginning of each line denotes edits and additions you have made, and a '-' at the beginning of each line denotes lines removed from the original description.html. The exact name of your patch file is arbitrary, but should be as descriptive as&lt;br /&gt;
possible as in the above example.&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;The output of the diff -u should look &amp;lt;i&amp;gt;something&amp;lt;/i&amp;gt; like this (the exact contents will of course depend on whatever changes you made to the file):&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Index: description.html&lt;br /&gt;
===================================================================&lt;br /&gt;
RCS file: /home/grass/grassrepository/grass6/vector/v.in.ascii/description.html,v&lt;br /&gt;
retrieving revision 1.35&lt;br /&gt;
diff -u -r1.35 description.html&lt;br /&gt;
--- description.html    31 May 2006 13:03:57 -0000      1.35&lt;br /&gt;
+++ description.html    26 Sep 2006 14:35:21 -0000&lt;br /&gt;
@@ -35,6 +35,10 @@&lt;br /&gt;
&lt;br /&gt;
 Use the &amp;lt;b&amp;gt;-z&amp;lt;/b&amp;gt; flag to convert ASCII data into a 3D binary vector map.&lt;br /&gt;
&lt;br /&gt;
+Any edits you make to description.html will show up like this after you run diff -u!&lt;br /&gt;
+Three lines of the original description.html will surround each block of edits you made&lt;br /&gt;
+to provide context.&lt;br /&gt;
+&lt;br /&gt;
 A GRASS ASCII vector file (in &amp;lt;B&amp;gt;standard&amp;lt;/B&amp;gt; mode) may contain a mix of&lt;br /&gt;
 primitives including points, lines, boundaries, centroids, areas, faces,&lt;br /&gt;
@@ -51,6 +55,8 @@&lt;br /&gt;
 &amp;lt;LI&amp;gt;'K': kernel (3D centroid)&amp;lt;/LI&amp;gt;&lt;br /&gt;
 &amp;lt;LI&amp;gt;'A': area (boundary) - better use 'B'; kept only for backward compatibility&amp;lt;/LI&amp;gt;&lt;br /&gt;
 &amp;lt;/UL&amp;gt;&lt;br /&gt;
+&lt;br /&gt;
+This line is another edit made further along in description.html....&lt;br /&gt;
&lt;br /&gt;
The coordinates are listed following the initial line containing the&lt;br /&gt;
 primitive code, the total number of vectors in the series, and the number&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Images can also be inserted in the manual page. See [http://grass.itc.it/grass63/manuals/html63_user/v.voronoi.html v.voronoi] for an example. [http://psacake.com/web/dy.asp Here] is a quick reference for html formatting codes. Be sure to also send the image (preferably png format) along with your documentation patch.&lt;br /&gt;
&lt;br /&gt;
* Email a [http://grass.itc.it/community/team.php Grass developer] your description.html.patch for review &amp;lt;b&amp;gt;&amp;lt;i&amp;gt;as an attachment&amp;lt;/i&amp;gt;&amp;lt;/b&amp;gt;, along with a brief explanation why it is required. Please post a general message about your documentation update to the [http://grass.itc.it/devel/index.php#list Grass Deveoper's List] before sending your patch to anyone in particular.&lt;/div&gt;</summary>
		<author><name>⚠️EricPatton</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=Development&amp;diff=2883</id>
		<title>Development</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=Development&amp;diff=2883"/>
		<updated>2006-10-25T15:59:56Z</updated>

		<summary type="html">&lt;p&gt;⚠️EricPatton: /* Added a link to a new page on updating Grass docs via cvs */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The GRASS GIS project is developed under the terms of the [http://www.gnu.org/copyleft/gpl.html GNU General Public License] (the GPL) [http://grass.ibiblio.org/devel/index.php in the open] by [http://grass.ibiblio.org/community/index.php volunteers] the [http://mapserver.gdf-hannover.de/grassusers/map.phtml world over].&lt;br /&gt;
&lt;br /&gt;
=== Resources for Developers ===&lt;br /&gt;
&lt;br /&gt;
==== Communication ====&lt;br /&gt;
* You can contact GRASS folks in [[How to participate in IRC communication|IRC]]&lt;br /&gt;
* [http://grass.itc.it/mailman/listinfo/grass-dev Developers mailing list]&lt;br /&gt;
&lt;br /&gt;
==== Documentation ====&lt;br /&gt;
* [http://grass.itc.it/devel/index.php#prog GRASS Programming Manual]&lt;br /&gt;
* [[GRASS Programming Howto]] (partially outdated)&lt;br /&gt;
* [[Updating Grass Documentation]] How-To&lt;br /&gt;
* [[Gis Concepts]] and how they are implemented in GRASS&lt;br /&gt;
* [[GRASS Debugging]]&lt;br /&gt;
* [[Large File Support]] (LFS) implementation&lt;br /&gt;
* '''Code submission standards''':&lt;br /&gt;
** [http://grass.itc.it/grass61/source/SUBMITTING C language coding standards]&lt;br /&gt;
** [http://grass.itc.it/grass61/source/SUBMITTING_SCRIPTS Shell script coding standards]&lt;br /&gt;
** [http://grass.itc.it/grass61/source/SUBMITTING_TCLTK Tcl/Tk script coding standards]&lt;br /&gt;
&lt;br /&gt;
==== Code ====&lt;br /&gt;
* [http://grass.ibiblio.org/devel/cvs.php CVS server] | [http://freegis.org/cgi-bin/viewcvs.cgi/ GRASS WebCVS interface] browsable source code repository&lt;br /&gt;
* [http://intevation.de/rt/webrt?q_queue=grass GRASS bug and wish tracking system]&lt;br /&gt;
* [[GRASS AddOns]] (User contributions)&lt;br /&gt;
* [[Testing GRASS software]] - a test protocol based on the Spearfish sample data set&lt;br /&gt;
&lt;br /&gt;
==== Source code quality control ====&lt;br /&gt;
* [http://cia.navi.cx/stats/project/GRASS CIA commit bot] for realtime monitoring along with [http://grass.itc.it/mailman/listinfo/grass-commit grass-commit] mailing list (showing the diff's)&lt;br /&gt;
* [http://grass.itc.it/mailman/listinfo/grass-qa Code Quality Control System]&lt;br /&gt;
* [http://web.soccerlab.polymtl.ca/grass-evolution/grass-browsers/grass-index-en.html GRASS Software Evolution code analysis]&lt;br /&gt;
* [http://www-pool.math.tu-berlin.de/~soeren/grass/GRASS_TestSuite/ GRASS Test Suite] a small test suite for GRASS, the current html output is available [http://www-pool.math.tu-berlin.de/~soeren/grass/GRASS_TestSuite/html/ here] and with memory check [http://www-pool.math.tu-berlin.de/~soeren/grass/GRASS_TestSuite/html_memcheck/ here]&lt;br /&gt;
&lt;br /&gt;
=== GRASS and QGIS ===&lt;br /&gt;
&lt;br /&gt;
* [http://wiki.qgis.org/qgiswiki/BuildingWindowsBinaryOnLinux Building QGIS/GRASS Windows Binary On Linux] (using MinGW)&lt;br /&gt;
* [http://wiki.qgis.org/qgiswiki/Adding_New_Tools_to_the_GRASS_Toolbox Adding New Tools to the GRASS Toolbox]&lt;br /&gt;
* [http://wiki.qgis.org/qgiswiki/GrassCookbook QGIS GRASS Cookbook] - Recipes for common tasks&lt;br /&gt;
&lt;br /&gt;
=== GRASS License ===&lt;br /&gt;
&lt;br /&gt;
* [http://en.wikipedia.org/wiki/Gpl WikiPedia entry discussing the GPL]&lt;br /&gt;
&lt;br /&gt;
=== Plans ===&lt;br /&gt;
&lt;br /&gt;
===== Overview =====&lt;br /&gt;
&lt;br /&gt;
* [[Release Roadmap]] (old [http://grass.ibiblio.org/devel/roadmap.php Development Roadmap] which needs freshening) - please help with testing release candidates&lt;br /&gt;
* [[GRASS Module Porting List]] (check here if you don't find a certain command in GRASS 6.0)&lt;br /&gt;
* [[GRASS ToDo List]] (overview of GRASS related community projects, see also [[Release Roadmap]])&lt;br /&gt;
* [http://freegis.org/cgi-bin/viewcvs.cgi/grass6/doc/vector/TODO?rev=HEAD&amp;amp;content-type=text/vnd.viewcvs-markup GRASS 6-CVS Vector TODO]&lt;br /&gt;
&lt;br /&gt;
===== Sandbox (ideas section) =====&lt;br /&gt;
&lt;br /&gt;
* [[GRASS 7 ideas collection]]&lt;br /&gt;
* [[Image processing]]&lt;br /&gt;
* [http://wgbis.ces.iisc.ernet.in/grdss/index.php GRDSS (Geographic Resources Decision Support System)]&lt;br /&gt;
* Ideas on a [[replacement raster format]] specification&lt;br /&gt;
* add support (at least storage!) of vertical datum and units&lt;br /&gt;
* Discussion on [[Development Specs]] for standardized messages&lt;br /&gt;
* Discussion on add-on manager repository setup: [[Development GEM|GEM repository]]&lt;br /&gt;
* Discussion of support for [[time series in GRASS]], e.g. for linking to data and models&lt;br /&gt;
* [[GRASS GUI]] development&lt;br /&gt;
* [[GRASS Location Wizard]] development&lt;br /&gt;
&lt;br /&gt;
=== Linking GRASS to external languages ===&lt;br /&gt;
* [http://mpa.itc.it/markus/grass61progman/swig/ GRASS-SWIG interface]: generic interface to various languages&lt;br /&gt;
* [[GRASS and PHP]]&lt;br /&gt;
* [[GRASS and Python]]&lt;br /&gt;
* [[GRASS and Shell]]: Starting and running GRASS from a script&lt;br /&gt;
* [http://grass.itc.it/mailman/listinfo/grass-abm Integration of GRASS with JAVA based agent based modeling (ABM)]&lt;br /&gt;
* [http://www.hydrologis.com/html/jgrass/jgrass_en.html JAVAGRASS]&lt;br /&gt;
&lt;br /&gt;
=== Related projects ===&lt;br /&gt;
&lt;br /&gt;
* [http://www.hydrologis.com/html/jgrass/jgrass_en.html JGrass] - Java based frontend for GRASS incuding extended hydrological modelling tools&lt;br /&gt;
* [http://www.kergis.com/en/index.html KerGIS] - BSD-like licensed fork of GRASS 4.1.5&lt;br /&gt;
&lt;br /&gt;
* [http://proj.maptools.org PROJ.4] - Cartographic Projections Library&lt;br /&gt;
* [http://www.gdal.org GDAL] - Geospatial Data Abstraction Library&lt;br /&gt;
* [http://www.qgis.org QGIS]- Quantum GIS&lt;br /&gt;
&lt;br /&gt;
* [http://www.osgeo.org OSGeo]- The Open Source Geospatial Foundation&lt;br /&gt;
* [http://freegis.org FreeGIS.org] - Interactive information base for the GIS Free Software world&lt;br /&gt;
&lt;br /&gt;
[[Category:Development]]&lt;/div&gt;</summary>
		<author><name>⚠️EricPatton</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=Updating_GRASS_Documentation&amp;diff=2882</id>
		<title>Updating GRASS Documentation</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=Updating_GRASS_Documentation&amp;diff=2882"/>
		<updated>2006-10-25T15:57:16Z</updated>

		<summary type="html">&lt;p&gt;⚠️EricPatton: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;h2&amp;gt;How-to for Updating Grass Manual Pages&amp;lt;/h2&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
This page will provide general step-by-step instructions for updating and improving Grass manual pages. Feel free to update and improve this page as well!&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
As an example, the vector program v.in.ascii will be used to illustrate the steps required to update its manual page. These steps can then be generalized for your case.&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
* To begin, you must obtain the latest Grass source code from the CVS repositories. Detailed instructions on how to do so can be found [http://grass.itc.it/faq/cvs_howto.html here.]&lt;br /&gt;
* Once you have downloaded the CVS source code, open a terminal and change directory to where the source for a specific GRASS module is located - in this example, something like:&lt;br /&gt;
&amp;lt;pre&amp;gt;/your_cvs_directory/grass6/vector/v.in.ascii&amp;lt;/pre&amp;gt;&lt;br /&gt;
* Open a text editor and make your edits to description.html. Save your edits by overwriting the original description.html.&lt;br /&gt;
* Within a terminal, create a 'unified diff' (a standard way to show changes between two versions of a file) of the Grass CVS repository version of description.html and your newly edited description.html:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cvs diff -u description.html &amp;gt; v.in.ascii.description.patch&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
This &amp;quot;diff -u&amp;quot; command will create a report in v.in.ascii.description.patch which shows any differences between the version of description.html still on the CVS server and your edited version; a '+' at the beginning of each line denotes edits and additions you have made, and a '-' at the beginning of each line denotes lines removed from the original description.html. The exact name of your patch file is arbitrary, but should be as descriptive as&lt;br /&gt;
possible as in the above example.&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;The output of the diff -u should look &amp;lt;i&amp;gt;something&amp;lt;/i&amp;gt; like this (the exact contents will of course depend on whatever changes you made to the file):&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Index: description.html&lt;br /&gt;
===================================================================&lt;br /&gt;
RCS file: /home/grass/grassrepository/grass6/vector/v.in.ascii/description.html,v&lt;br /&gt;
retrieving revision 1.35&lt;br /&gt;
diff -u -r1.35 description.html&lt;br /&gt;
--- description.html    31 May 2006 13:03:57 -0000      1.35&lt;br /&gt;
+++ description.html    26 Sep 2006 14:35:21 -0000&lt;br /&gt;
@@ -35,6 +35,10 @@&lt;br /&gt;
&lt;br /&gt;
 Use the &amp;lt;b&amp;gt;-z&amp;lt;/b&amp;gt; flag to convert ASCII data into a 3D binary vector map.&lt;br /&gt;
&lt;br /&gt;
+Any edits you make to description.html will show up like this after you run diff -u!&lt;br /&gt;
+Three lines of the original description.html will surround each block of edits you made&lt;br /&gt;
+to provide context.&lt;br /&gt;
+&lt;br /&gt;
 A GRASS ASCII vector file (in &amp;lt;B&amp;gt;standard&amp;lt;/B&amp;gt; mode) may contain a mix of&lt;br /&gt;
 primitives including points, lines, boundaries, centroids, areas, faces,&lt;br /&gt;
@@ -51,6 +55,8 @@&lt;br /&gt;
 &amp;lt;LI&amp;gt;'K': kernel (3D centroid)&amp;lt;/LI&amp;gt;&lt;br /&gt;
 &amp;lt;LI&amp;gt;'A': area (boundary) - better use 'B'; kept only for backward compatibility&amp;lt;/LI&amp;gt;&lt;br /&gt;
 &amp;lt;/UL&amp;gt;&lt;br /&gt;
+&lt;br /&gt;
+This line is another edit made further along in description.html....&lt;br /&gt;
&lt;br /&gt;
The coordinates are listed following the initial line containing the&lt;br /&gt;
 primitive code, the total number of vectors in the series, and the number&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Images can also be inserted in the manual page. See [http://grass.itc.it/grass63/manuals/html63_user/v.voronoi.html v.voronoi] for an example. [http://http://psacake.com/web/dy.asp Here] is a quick reference for html formatting codes. Be sure to also send the image (preferably png format) along with your documentation patch.&lt;br /&gt;
&lt;br /&gt;
* Email a [http://grass.itc.it/community/team.php Grass developer] your description.html.patch for review &amp;lt;b&amp;gt;&amp;lt;i&amp;gt;as an attachment&amp;lt;/i&amp;gt;&amp;lt;/b&amp;gt;, along with a brief explanation why it is required. Please post a general message about your documentation update to the [http://grass.itc.it/devel/index.php#list Grass Deveoper's List] before sending your patch to anyone in particular.&lt;/div&gt;</summary>
		<author><name>⚠️EricPatton</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=Updating_GRASS_Documentation&amp;diff=2881</id>
		<title>Updating GRASS Documentation</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=Updating_GRASS_Documentation&amp;diff=2881"/>
		<updated>2006-10-25T15:56:29Z</updated>

		<summary type="html">&lt;p&gt;⚠️EricPatton: /* = */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;h2&amp;gt;How-to for Updating Grass Manual Pages&amp;lt;/h2&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
This page will provide general step-by-step instructions for updating and improving Grass manual pages. Feel free to update and improve this page as well!&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
As an example, the vector program v.in.ascii will be used to illustrate the steps required to update its manual page. These steps can then be generalized for your case.&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
* To begin, you must obtain the latest Grass source code from the CVS repositories. Detailed instructions on how to do so can be found [http://grass.itc.it/faq/cvs_howto.html here.]&lt;br /&gt;
* Once you have downloaded the CVS source code, open a terminal and change directory to where the source for a specific GRASS module is located - in this example, something like:&lt;br /&gt;
&amp;lt;pre&amp;gt;/your_cvs_directory/grass6/vector/v.in.ascii&amp;lt;/pre&amp;gt;&lt;br /&gt;
* Open a text editor and make your edits to description.html. Save your edits by overwriting the original description.html.&lt;br /&gt;
* Within a terminal, create a 'unified diff' (a standard way to show changes between two versions of a file) of the Grass CVS repository version of description.html and your newly edited description.html:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cvs diff -u description.html &amp;gt; v.in.ascii.description.patch&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
This &amp;quot;diff -u&amp;quot; command will create a report in v.in.ascii.description.patch which shows any differences between the version of description.html still on the CVS server and your edited version; a '+' at the beginning of each line denotes edits and additions you have made, and a '-' at the beginning of each line denotes lines removed from the original description.html. The exact name of your patch file is arbitrary, but should be as descriptive as&lt;br /&gt;
possible as in the above example.&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;The output of the diff -u should look &amp;lt;i&amp;gt;something&amp;lt;/i&amp;gt; like this (the exact contents will of course depend on whatever changes you made to the file):&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Index: description.html&lt;br /&gt;
===================================================================&lt;br /&gt;
RCS file: /home/grass/grassrepository/grass6/vector/v.in.ascii/description.html,v&lt;br /&gt;
retrieving revision 1.35&lt;br /&gt;
diff -u -r1.35 description.html&lt;br /&gt;
--- description.html    31 May 2006 13:03:57 -0000      1.35&lt;br /&gt;
+++ description.html    26 Sep 2006 14:35:21 -0000&lt;br /&gt;
@@ -35,6 +35,10 @@&lt;br /&gt;
&lt;br /&gt;
 Use the &amp;lt;b&amp;gt;-z&amp;lt;/b&amp;gt; flag to convert ASCII data into a 3D binary vector map.&lt;br /&gt;
&lt;br /&gt;
+Any edits you make to description.html will show up like this after you run diff -u!&lt;br /&gt;
+Three lines of the original description.html will surround each block of edits you made&lt;br /&gt;
+to provide context.&lt;br /&gt;
+&lt;br /&gt;
 A GRASS ASCII vector file (in &amp;lt;B&amp;gt;standard&amp;lt;/B&amp;gt; mode) may contain a mix of&lt;br /&gt;
 primitives including points, lines, boundaries, centroids, areas, faces,&lt;br /&gt;
@@ -51,6 +55,8 @@&lt;br /&gt;
 &amp;lt;LI&amp;gt;'K': kernel (3D centroid)&amp;lt;/LI&amp;gt;&lt;br /&gt;
 &amp;lt;LI&amp;gt;'A': area (boundary) - better use 'B'; kept only for backward compatibility&amp;lt;/LI&amp;gt;&lt;br /&gt;
 &amp;lt;/UL&amp;gt;&lt;br /&gt;
+&lt;br /&gt;
+This line is another edit made further along in description.html....&lt;br /&gt;
&lt;br /&gt;
The coordinates are listed following the initial line containing the&lt;br /&gt;
 primitive code, the total number of vectors in the series, and the number&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Images can also be inserted in the manual page. See [http://grass.itc.it/grass63/manuals/html63_user/v.voronoi.html v.voronoi] for an example. [http://http://psacake.com/web/dy.asp Here] is a quick reference for html formatting codes. Be sure to also send the image (preferable png format) along with your documentation patch.&lt;br /&gt;
&lt;br /&gt;
* Email a [http://grass.itc.it/community/team.php Grass developer] your description.html.patch for review &amp;lt;b&amp;gt;&amp;lt;i&amp;gt;as an attachment&amp;lt;/i&amp;gt;&amp;lt;/b&amp;gt;, along with a brief explanation why it is required. Please post a general message about your documentation update to the [http://grass.itc.it/devel/index.php#list Grass Deveoper's List] before sending your patch to anyone in particular.&lt;/div&gt;</summary>
		<author><name>⚠️EricPatton</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=Updating_GRASS_Documentation&amp;diff=2880</id>
		<title>Updating GRASS Documentation</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=Updating_GRASS_Documentation&amp;diff=2880"/>
		<updated>2006-10-25T15:54:40Z</updated>

		<summary type="html">&lt;p&gt;⚠️EricPatton: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;h2&amp;gt;How-to for Updating Grass Manual Pages&amp;lt;/h2&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
This page will provide general step-by-step instructions for updating and improving Grass manual pages. Feel free to update and improve this page as well!&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
As an example, the vector program v.in.ascii will be used to illustrate the steps required to update its manual page. These steps can then be generalized for your case.&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
* To begin, you must obtain the latest Grass source code from the CVS repositories. Detailed instructions on how to do so can be found [http://grass.itc.it/faq/cvs_howto.html here.]&lt;br /&gt;
* Once you have downloaded the CVS source code, open a terminal and change directory to where the source for a specific GRASS module is located - in this example, something like:&lt;br /&gt;
&amp;lt;pre&amp;gt;/your_cvs_directory/grass6/vector/v.in.ascii&amp;lt;/pre&amp;gt;&lt;br /&gt;
* Open a text editor and make your edits to description.html. Save your edits by overwriting the original description.html.&lt;br /&gt;
* Within a terminal, create a 'unified diff' (a standard way to show changes between two versions of a file) of the Grass CVS repository version of description.html and your newly edited description.html:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cvs diff -u description.html &amp;gt; v.in.ascii.description.patch&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
This &amp;quot;diff -u&amp;quot; command will create a report in v.in.ascii.description.patch which shows any differences between the version of description.html still on the CVS server and your edited version; a '+' at the beginning of each line denotes edits and additions you have made, and a '-' at the beginning of each line denotes lines removed from the original description.html. The exact name of your patch file is arbitrary, but should be as descriptive as&lt;br /&gt;
possible as in the above example.&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;The output of the diff -u should look &amp;lt;i&amp;gt;something&amp;lt;/i&amp;gt; like this (the exact contents will of course depend on whatever changes you made to the file):&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Index: description.html&lt;br /&gt;
===================================================================&lt;br /&gt;
RCS file: /home/grass/grassrepository/grass6/vector/v.in.ascii/description.html,v&lt;br /&gt;
retrieving revision 1.35&lt;br /&gt;
diff -u -r1.35 description.html&lt;br /&gt;
--- description.html    31 May 2006 13:03:57 -0000      1.35&lt;br /&gt;
+++ description.html    26 Sep 2006 14:35:21 -0000&lt;br /&gt;
@@ -35,6 +35,10 @@&lt;br /&gt;
&lt;br /&gt;
 Use the &amp;lt;b&amp;gt;-z&amp;lt;/b&amp;gt; flag to convert ASCII data into a 3D binary vector map.&lt;br /&gt;
&lt;br /&gt;
+Any edits you make to description.html will show up like this after you run diff -u!&lt;br /&gt;
+Three lines of the original description.html will surround each block of edits you made&lt;br /&gt;
+to provide context.&lt;br /&gt;
+&lt;br /&gt;
 A GRASS ASCII vector file (in &amp;lt;B&amp;gt;standard&amp;lt;/B&amp;gt; mode) may contain a mix of&lt;br /&gt;
 primitives including points, lines, boundaries, centroids, areas, faces,&lt;br /&gt;
@@ -51,6 +55,8 @@&lt;br /&gt;
 &amp;lt;LI&amp;gt;'K': kernel (3D centroid)&amp;lt;/LI&amp;gt;&lt;br /&gt;
 &amp;lt;LI&amp;gt;'A': area (boundary) - better use 'B'; kept only for backward compatibility&amp;lt;/LI&amp;gt;&lt;br /&gt;
 &amp;lt;/UL&amp;gt;&lt;br /&gt;
+&lt;br /&gt;
+This line is another edit made further along in description.html....&lt;br /&gt;
&lt;br /&gt;
The coordinates are listed following the initial line containing the&lt;br /&gt;
 primitive code, the total number of vectors in the series, and the number&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Images can also be inserted in the manual page. See [http://grass.itc.it/grass63/manuals/html63_user/v.voronoi.html v.voronoi] for an example. [http://http://psacake.com/web/dy.asp Here] is a quick reference for html formatting codes. Be sure to also send the image (preferable png format) along with your documentation patch.&lt;br /&gt;
&lt;br /&gt;
* Email a Grass [http://grass.itc.it/community/team.php developer] your description.html.patch for review &amp;lt;b&amp;gt;&amp;lt;i&amp;gt;as an attachment&amp;lt;/i&amp;gt;&amp;lt;/b&amp;gt;, along with a brief explanation why it is required. Please post a general message about your documentation update to the [http://grass.itc.it/devel/index.php#list Grass Deveoper's List] before sending your patch to anyone in particular.&lt;/div&gt;</summary>
		<author><name>⚠️EricPatton</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=Updating_GRASS_Documentation&amp;diff=2879</id>
		<title>Updating GRASS Documentation</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=Updating_GRASS_Documentation&amp;diff=2879"/>
		<updated>2006-10-25T15:45:15Z</updated>

		<summary type="html">&lt;p&gt;⚠️EricPatton: /* = */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;h2&amp;gt;How-to for Updating Grass Manual Pages&amp;lt;/h2&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
This page will provide general step-by-step instructions for updating and improving Grass manual pages. Feel free to update and improve this page as well!&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
As an example, the vector program v.in.ascii will be used to illustrate the steps required to update its manual page. These steps can then be generalized for your case.&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
* To begin, you must obtain the latest Grass source code from the CVS repositories. Detailed instructions on how to do so can be found [http://grass.itc.it/faq/cvs_howto.html here.]&lt;br /&gt;
* Once you have downloaded the CVS source code, open a terminal and change directory to where the source for a specific GRASS module is located - in this example, something like:&lt;br /&gt;
&amp;lt;pre&amp;gt;/your_cvs_directory/grass6/vector/v.in.ascii&amp;lt;/pre&amp;gt;&lt;br /&gt;
* Open a text editor and make your edits to description.html. Save your edits by overwriting the original description.html.&lt;br /&gt;
* Within a terminal, create a 'unified diff' (a standard way to show changes between two versions of a file) of the Grass CVS repository version of description.html and your newly edited description.html:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cvs diff -u description.html &amp;gt; v.in.ascii.description.patch&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
This &amp;quot;diff -u&amp;quot; command will create a report in v.in.ascii.description.patch which shows any differences between the version of description.html still on the CVS server and your edited version; a '+' at the beginning of each line denotes edits and additions you have made, and a '-' at the beginning of each line denotes lines removed from the original description.html. The exact name of your patch file is arbitrary, but should be as descriptive as&lt;br /&gt;
possible as in the above example.&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;The output of the diff -u should look &amp;lt;i&amp;gt;something&amp;lt;/i&amp;gt; like this (the exact contents will of course depend on whatever changes you made to the file):&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Index: description.html&lt;br /&gt;
===================================================================&lt;br /&gt;
RCS file: /home/grass/grassrepository/grass6/vector/v.in.ascii/description.html,v&lt;br /&gt;
retrieving revision 1.35&lt;br /&gt;
diff -u -r1.35 description.html&lt;br /&gt;
--- description.html    31 May 2006 13:03:57 -0000      1.35&lt;br /&gt;
+++ description.html    26 Sep 2006 14:35:21 -0000&lt;br /&gt;
@@ -35,6 +35,10 @@&lt;br /&gt;
&lt;br /&gt;
 Use the &amp;lt;b&amp;gt;-z&amp;lt;/b&amp;gt; flag to convert ASCII data into a 3D binary vector map.&lt;br /&gt;
&lt;br /&gt;
+Any edits you make to description.html will show up like this after you run diff -u!&lt;br /&gt;
+Three lines of the original description.html will surround each block of edits you made&lt;br /&gt;
+to provide context.&lt;br /&gt;
+&lt;br /&gt;
 A GRASS ASCII vector file (in &amp;lt;B&amp;gt;standard&amp;lt;/B&amp;gt; mode) may contain a mix of&lt;br /&gt;
 primitives including points, lines, boundaries, centroids, areas, faces,&lt;br /&gt;
@@ -51,6 +55,8 @@&lt;br /&gt;
 &amp;lt;LI&amp;gt;'K': kernel (3D centroid)&amp;lt;/LI&amp;gt;&lt;br /&gt;
 &amp;lt;LI&amp;gt;'A': area (boundary) - better use 'B'; kept only for backward compatibility&amp;lt;/LI&amp;gt;&lt;br /&gt;
 &amp;lt;/UL&amp;gt;&lt;br /&gt;
+&lt;br /&gt;
+This line is another edit made further along in description.html....&lt;br /&gt;
&lt;br /&gt;
The coordinates are listed following the initial line containing the&lt;br /&gt;
 primitive code, the total number of vectors in the series, and the number&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Email a Grass [http://grass.itc.it/community/team.php developer] your description.html.patch for review &amp;lt;b&amp;gt;&amp;lt;i&amp;gt;as an attachment&amp;lt;/i&amp;gt;&amp;lt;/b&amp;gt;, along with a brief explanation why it is required. Please post a general message about your documentation update to the [http://grass.itc.it/devel/index.php#list Grass Deveoper's List] before sending your patch to anyone in particular.&lt;/div&gt;</summary>
		<author><name>⚠️EricPatton</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=Updating_GRASS_Documentation&amp;diff=2878</id>
		<title>Updating GRASS Documentation</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=Updating_GRASS_Documentation&amp;diff=2878"/>
		<updated>2006-10-25T15:42:45Z</updated>

		<summary type="html">&lt;p&gt;⚠️EricPatton: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;h2&amp;gt;How-to for Updating Grass Manual Pages&amp;lt;/h2&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
This page will provide general step-by-step instructions for updating and improving Grass manual pages. Feel free to update and improve this page as well!&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
As an example, the vector program v.in.ascii will be used to illustrate the steps required to update its manual page. These steps can then be generalized for your case.&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;To begin, you must obtain the latest Grass source code from the CVS repositories. Detailed instructions on how to do so can be found [http://grass.itc.it/faq/cvs_howto.html here.]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Once you have downloaded the CVS source code, open a terminal and change directory to where the source for a specific GRASS module is located - in this example, something like:&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;/your_cvs_directory/grass6/vector/v.in.ascii&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Open a text editor and make your edits to description.html. Save your edits by overwriting the original description.html.&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Within a terminal, create a 'unified diff' (a standard way to show changes between two versions of a file) of the Grass CVS repository version of description.html and your newly edited description.html:&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cvs diff -u description.html &amp;gt; v.in.ascii.description.patch&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
This &amp;quot;diff -u&amp;quot; command will create a report in v.in.ascii.description.patch which shows any differences between the version of description.html still on the CVS server and your edited version; a '+' at the beginning of each line denotes edits and additions you have made, and a '-' at the beginning of each line denotes lines removed from the original description.html. The exact name of your patch file is arbitrary, but should be as descriptive as&lt;br /&gt;
possible as in the above example.&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;The output of the diff -u should look &amp;lt;i&amp;gt;something&amp;lt;/i&amp;gt; like this (the exact contents will of course depend on whatever changes you made to the file):&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Index: description.html&lt;br /&gt;
===================================================================&lt;br /&gt;
RCS file: /home/grass/grassrepository/grass6/vector/v.in.ascii/description.html,v&lt;br /&gt;
retrieving revision 1.35&lt;br /&gt;
diff -u -r1.35 description.html&lt;br /&gt;
--- description.html    31 May 2006 13:03:57 -0000      1.35&lt;br /&gt;
+++ description.html    26 Sep 2006 14:35:21 -0000&lt;br /&gt;
@@ -35,6 +35,10 @@&lt;br /&gt;
&lt;br /&gt;
 Use the &amp;lt;b&amp;gt;-z&amp;lt;/b&amp;gt; flag to convert ASCII data into a 3D binary vector map.&lt;br /&gt;
&lt;br /&gt;
+Any edits you make to description.html will show up like this after you run diff -u!&lt;br /&gt;
+Three lines of the original description.html will surround each block of edits you made&lt;br /&gt;
+to provide context.&lt;br /&gt;
+&lt;br /&gt;
 A GRASS ASCII vector file (in &amp;lt;B&amp;gt;standard&amp;lt;/B&amp;gt; mode) may contain a mix of&lt;br /&gt;
 primitives including points, lines, boundaries, centroids, areas, faces,&lt;br /&gt;
@@ -51,6 +55,8 @@&lt;br /&gt;
 &amp;lt;LI&amp;gt;'K': kernel (3D centroid)&amp;lt;/LI&amp;gt;&lt;br /&gt;
 &amp;lt;LI&amp;gt;'A': area (boundary) - better use 'B'; kept only for backward compatibility&amp;lt;/LI&amp;gt;&lt;br /&gt;
 &amp;lt;/UL&amp;gt;&lt;br /&gt;
+&lt;br /&gt;
+This line is another edit made further along in description.html....&lt;br /&gt;
&lt;br /&gt;
The coordinates are listed following the initial line containing the&lt;br /&gt;
 primitive code, the total number of vectors in the series, and the number&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Email a Grass [http://grass.itc.it/community/team.php developer] your description.html.patch for review &amp;lt;b&amp;gt;&amp;lt;i&amp;gt;as an attachment&amp;lt;/i&amp;gt;&amp;lt;/b&amp;gt;, along with a brief explanation why it is required. Please post a general message about your documentation update to the [http://grass.itc.it/devel/index.php#list Grass Deveoper's List] before sending your patch to anyone in particular.&lt;/div&gt;</summary>
		<author><name>⚠️EricPatton</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=Updating_Documentation&amp;diff=2877</id>
		<title>Updating Documentation</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=Updating_Documentation&amp;diff=2877"/>
		<updated>2006-10-25T15:40:40Z</updated>

		<summary type="html">&lt;p&gt;⚠️EricPatton: Updating Documentation moved to Updating Grass Documentation: A little bit more descriptive.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECT [[Updating Grass Documentation]]&lt;/div&gt;</summary>
		<author><name>⚠️EricPatton</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=Updating_GRASS_Documentation&amp;diff=2876</id>
		<title>Updating GRASS Documentation</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=Updating_GRASS_Documentation&amp;diff=2876"/>
		<updated>2006-10-25T15:40:40Z</updated>

		<summary type="html">&lt;p&gt;⚠️EricPatton: Updating Documentation moved to Updating Grass Documentation: A little bit more descriptive.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;h2&amp;gt;How-to for Updating Grass Manual Pages&amp;lt;/h2&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
This page will provide general step-by-step instructions for updating and improving Grass manual pages. Feel free to update and improve this page as well!&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
As an example, the vector program v.in.ascii will be used to illustrate the steps required to update its manual page. These steps can then be generalized for your case.&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;To begin, you must obtain the latest Grass source code from the CVS repositories. Detailed instructions on how to do so can be found [http://grass.itc.it/faq/cvs_howto.html here.]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Once you have downloaded the CVS source code, open a terminal and change directory to where the source for a specific GRASS module is located - in this example, something like:&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;/your_cvs_directory/grass6/vector/v.in.ascii&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Open a text editor and make your edits to description.html. Save your edits by overwriting the original description.html.&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Within a terminal, create a 'unified diff' (a standard way to show changes between two versions of a file) of the Grass CVS repository version of description.html and your newly edited description.html:&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cvs diff -u description.html &amp;gt; v.in.ascii.description.patch&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
This &amp;quot;diff -u&amp;quot; command will create a report in v.in.ascii.description.patch which shows any differences between the version of description.html still on the CVS server and your edited version; a '+' at the beginning of each line denotes edits and additions you have made, and a '-' at the beginning of each line denotes lines removed from the original description.html. The exact name of your patch file is arbitrary, but should be as descriptive as&lt;br /&gt;
possible as in the above example.&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;The output of the diff -u should look &amp;lt;i&amp;gt;something&amp;lt;/i&amp;gt; like this (the exact contents will of course depend on whatever changes you made to the file):&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Index: description.html&lt;br /&gt;
===================================================================&lt;br /&gt;
RCS file: /home/grass/grassrepository/grass6/vector/v.in.ascii/description.html,v&lt;br /&gt;
retrieving revision 1.35&lt;br /&gt;
diff -u -r1.35 description.html&lt;br /&gt;
--- description.html    31 May 2006 13:03:57 -0000      1.35&lt;br /&gt;
+++ description.html    26 Sep 2006 14:35:21 -0000&lt;br /&gt;
@@ -35,6 +35,10 @@&lt;br /&gt;
&lt;br /&gt;
 Use the &amp;lt;b&amp;gt;-z&amp;lt;/b&amp;gt; flag to convert ASCII data into a 3D binary vector map.&lt;br /&gt;
&lt;br /&gt;
+Any edits you make to description.html will show up like this after you run diff -u!&lt;br /&gt;
+Three lines of the original description.html will surround each block of edits you made&lt;br /&gt;
+to provide context.&lt;br /&gt;
+&lt;br /&gt;
 A GRASS ASCII vector file (in &amp;lt;B&amp;gt;standard&amp;lt;/B&amp;gt; mode) may contain a mix of&lt;br /&gt;
 primitives including points, lines, boundaries, centroids, areas, faces,&lt;br /&gt;
@@ -51,6 +55,8 @@&lt;br /&gt;
 &amp;lt;LI&amp;gt;'K': kernel (3D centroid)&amp;lt;/LI&amp;gt;&lt;br /&gt;
 &amp;lt;LI&amp;gt;'A': area (boundary) - better use 'B'; kept only for backward compatibility&amp;lt;/LI&amp;gt;&lt;br /&gt;
 &amp;lt;/UL&amp;gt;&lt;br /&gt;
+&lt;br /&gt;
+This line is another edit made further along in description.html....&lt;br /&gt;
&lt;br /&gt;
The coordinates are listed following the initial line containing the&lt;br /&gt;
 primitive code, the total number of vectors in the series, and the number&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;(The above line is the end of the example diff file)&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Email a Grass [http://grass.itc.it/community/team.php developer] your description.html.patch for review &amp;lt;b&amp;gt;&amp;lt;i&amp;gt;as an attachment&amp;lt;/i&amp;gt;&amp;lt;/b&amp;gt;, along with a brief explanation why it is required. Please post a general message about your documentation update to the [http://grass.itc.it/devel/index.php#list Grass Deveoper's List] before sending your patch to anyone in particular.&lt;/div&gt;</summary>
		<author><name>⚠️EricPatton</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=Updating_GRASS_Documentation&amp;diff=2875</id>
		<title>Updating GRASS Documentation</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=Updating_GRASS_Documentation&amp;diff=2875"/>
		<updated>2006-10-25T15:39:21Z</updated>

		<summary type="html">&lt;p&gt;⚠️EricPatton: /* = */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;h2&amp;gt;How-to for Updating Grass Manual Pages&amp;lt;/h2&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
This page will provide general step-by-step instructions for updating and improving Grass manual pages. Feel free to update and improve this page as well!&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
As an example, the vector program v.in.ascii will be used to illustrate the steps required to update its manual page. These steps can then be generalized for your case.&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;To begin, you must obtain the latest Grass source code from the CVS repositories. Detailed instructions on how to do so can be found [http://grass.itc.it/faq/cvs_howto.html here.]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Once you have downloaded the CVS source code, open a terminal and change directory to where the source for a specific GRASS module is located - in this example, something like:&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;/your_cvs_directory/grass6/vector/v.in.ascii&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Open a text editor and make your edits to description.html. Save your edits by overwriting the original description.html.&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Within a terminal, create a 'unified diff' (a standard way to show changes between two versions of a file) of the Grass CVS repository version of description.html and your newly edited description.html:&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cvs diff -u description.html &amp;gt; v.in.ascii.description.patch&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
This &amp;quot;diff -u&amp;quot; command will create a report in v.in.ascii.description.patch which shows any differences between the version of description.html still on the CVS server and your edited version; a '+' at the beginning of each line denotes edits and additions you have made, and a '-' at the beginning of each line denotes lines removed from the original description.html. The exact name of your patch file is arbitrary, but should be as descriptive as&lt;br /&gt;
possible as in the above example.&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;The output of the diff -u should look &amp;lt;i&amp;gt;something&amp;lt;/i&amp;gt; like this (the exact contents will of course depend on whatever changes you made to the file):&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Index: description.html&lt;br /&gt;
===================================================================&lt;br /&gt;
RCS file: /home/grass/grassrepository/grass6/vector/v.in.ascii/description.html,v&lt;br /&gt;
retrieving revision 1.35&lt;br /&gt;
diff -u -r1.35 description.html&lt;br /&gt;
--- description.html    31 May 2006 13:03:57 -0000      1.35&lt;br /&gt;
+++ description.html    26 Sep 2006 14:35:21 -0000&lt;br /&gt;
@@ -35,6 +35,10 @@&lt;br /&gt;
&lt;br /&gt;
 Use the &amp;lt;b&amp;gt;-z&amp;lt;/b&amp;gt; flag to convert ASCII data into a 3D binary vector map.&lt;br /&gt;
&lt;br /&gt;
+Any edits you make to description.html will show up like this after you run diff -u!&lt;br /&gt;
+Three lines of the original description.html will surround each block of edits you made&lt;br /&gt;
+to provide context.&lt;br /&gt;
+&lt;br /&gt;
 A GRASS ASCII vector file (in &amp;lt;B&amp;gt;standard&amp;lt;/B&amp;gt; mode) may contain a mix of&lt;br /&gt;
 primitives including points, lines, boundaries, centroids, areas, faces,&lt;br /&gt;
@@ -51,6 +55,8 @@&lt;br /&gt;
 &amp;lt;LI&amp;gt;'K': kernel (3D centroid)&amp;lt;/LI&amp;gt;&lt;br /&gt;
 &amp;lt;LI&amp;gt;'A': area (boundary) - better use 'B'; kept only for backward compatibility&amp;lt;/LI&amp;gt;&lt;br /&gt;
 &amp;lt;/UL&amp;gt;&lt;br /&gt;
+&lt;br /&gt;
+This line is another edit made further along in description.html....&lt;br /&gt;
&lt;br /&gt;
The coordinates are listed following the initial line containing the&lt;br /&gt;
 primitive code, the total number of vectors in the series, and the number&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;(The above line is the end of the example diff file)&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Email a Grass [http://grass.itc.it/community/team.php developer] your description.html.patch for review &amp;lt;b&amp;gt;&amp;lt;i&amp;gt;as an attachment&amp;lt;/i&amp;gt;&amp;lt;/b&amp;gt;, along with a brief explanation why it is required. Please post a general message about your documentation update to the [http://grass.itc.it/devel/index.php#list Grass Deveoper's List] before sending your patch to anyone in particular.&lt;/div&gt;</summary>
		<author><name>⚠️EricPatton</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=Updating_GRASS_Documentation&amp;diff=2874</id>
		<title>Updating GRASS Documentation</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=Updating_GRASS_Documentation&amp;diff=2874"/>
		<updated>2006-10-25T15:34:08Z</updated>

		<summary type="html">&lt;p&gt;⚠️EricPatton: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;h2&amp;gt;How-to for Updating Grass Manual Pages&amp;lt;/h2&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
This page will provide general step-by-step instructions for updating and improving Grass manual pages. Feel free to update and improve this page as well!&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
As an example, the vector program v.in.ascii will be used to illustrate the steps required to update its manual page. These steps can then be generalized for your case.&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;To begin, you must obtain the latest Grass source code from the CVS repositories. Detailed instructions on how to do so can be found [http://grass.itc.it/faq/cvs_howto.html here]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt;Once you have downloaded the CVS source code, open a terminal and change directory to where the source for a specific GRASS module is located - in this example, something like:&lt;br /&gt;
&amp;lt;pre&amp;gt;/your_cvs_directory/grass6/vector/v.in.ascii&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Open a text editor and make your edits to description.html. Save your edits by overwriting the original description.html.&lt;br /&gt;
&amp;lt;li&amp;gt;Within a terminal, create a 'unified diff' (a standard way to show changes between two versions of a file) of the Grass CVS repository version of description.html and your newly edited description.html:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cvs diff -u description.html &amp;gt; v.in.ascii.description.patch&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
This &amp;quot;diff -u&amp;quot; command will create a report in v.in.ascii.description.patch which shows any differences between the version of description.html still on the CVS server and your edited version; a '+' at the beginning of each line denotes edits and additions you have made, and a '-' at the beginning of each line denotes lines removed from the original description.html. The exact name of your patch file is arbitrary, but should be as descriptive as&lt;br /&gt;
possible as in the above example.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;The output of the diff -u should look &amp;lt;i&amp;gt;something&amp;lt;/i&amp;gt; like this (the exact contents will of course depend on whatever changes you made to the file):&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Index: description.html&lt;br /&gt;
===================================================================&lt;br /&gt;
RCS file: /home/grass/grassrepository/grass6/vector/v.in.ascii/description.html,v&lt;br /&gt;
retrieving revision 1.35&lt;br /&gt;
diff -u -r1.35 description.html&lt;br /&gt;
--- description.html    31 May 2006 13:03:57 -0000      1.35&lt;br /&gt;
+++ description.html    26 Sep 2006 14:35:21 -0000&lt;br /&gt;
@@ -35,6 +35,10 @@&lt;br /&gt;
&lt;br /&gt;
 Use the &amp;lt;b&amp;gt;-z&amp;lt;/b&amp;gt; flag to convert ASCII data into a 3D binary vector map.&lt;br /&gt;
&lt;br /&gt;
+Any edits you make to description.html will show up like this after you run diff -u!&lt;br /&gt;
+Three lines of the original description.html will surround each block of edits you made&lt;br /&gt;
+to provide context.&lt;br /&gt;
+&lt;br /&gt;
 A GRASS ASCII vector file (in &amp;lt;B&amp;gt;standard&amp;lt;/B&amp;gt; mode) may contain a mix of&lt;br /&gt;
 primitives including points, lines, boundaries, centroids, areas, faces,&lt;br /&gt;
@@ -51,6 +55,8 @@&lt;br /&gt;
 &amp;lt;LI&amp;gt;'K': kernel (3D centroid)&amp;lt;/LI&amp;gt;&lt;br /&gt;
 &amp;lt;LI&amp;gt;'A': area (boundary) - better use 'B'; kept only for backward compatibility&amp;lt;/LI&amp;gt;&lt;br /&gt;
 &amp;lt;/UL&amp;gt;&lt;br /&gt;
+&lt;br /&gt;
+This line is another edit made further along in description.html....&lt;br /&gt;
&lt;br /&gt;
The coordinates are listed following the initial line containing the&lt;br /&gt;
 primitive code, the total number of vectors in the series, and the number&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;(The above line is the end of the example diff file)&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Email a Grass &amp;lt;a href:&amp;quot;http://grass.itc.it/community/team.php&amp;quot;&amp;gt;developer&amp;lt;/a&amp;gt; your description.html.patch for review &amp;lt;b&amp;gt;&amp;lt;i&amp;gt;as an attachment&amp;lt;/i&amp;gt;&amp;lt;/b&amp;gt;, along with a brief explanation why it is required. Please post a general&lt;br /&gt;
message about your documentation update to the &amp;lt;a href:&amp;quot;http://grass.itc.it/devel/index.php#list&amp;gt;Grass Developer's Mailing List&amp;lt;/a&amp;gt; before sending your patch to anyone in particular.&lt;/div&gt;</summary>
		<author><name>⚠️EricPatton</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=AddOns&amp;diff=2152</id>
		<title>AddOns</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=AddOns&amp;diff=2152"/>
		<updated>2006-07-20T12:51:32Z</updated>

		<summary type="html">&lt;p&gt;⚠️EricPatton: /* IconSymbols */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page contains references to user contributions and add-ons&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Copyright and licensing information==&lt;br /&gt;
&lt;br /&gt;
''Please be sure to include copyright and licensing information in the header comments of your code so that others may know how they can use, extend, modify, and redistribute your work.''&lt;br /&gt;
&lt;br /&gt;
e.g. at the top of a shell script:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/sh&lt;br /&gt;
############################################################################&lt;br /&gt;
#&lt;br /&gt;
# MODULE:       v.in.e00&lt;br /&gt;
#&lt;br /&gt;
# AUTHOR(S):    Markus Neteler, Otto Dassau&lt;br /&gt;
#&lt;br /&gt;
# PURPOSE:      Import E00 data into a GRASS vector map&lt;br /&gt;
#               Imports single and split E00 files (.e00, .e01, .e02 ...)&lt;br /&gt;
#&lt;br /&gt;
# COPYRIGHT:    (c) 2004, 2005 GDF Hannover bR, http://www.gdf-hannover.de&lt;br /&gt;
#&lt;br /&gt;
#               This program is free software under the GNU General Public&lt;br /&gt;
#               License (&amp;gt;=v2). Read the file COPYING that comes with GRASS&lt;br /&gt;
#               for details.&lt;br /&gt;
#&lt;br /&gt;
#############################################################################&lt;br /&gt;
#&lt;br /&gt;
# REQUIREMENTS:&lt;br /&gt;
#      -  avcimport: http://avce00.maptools.org&lt;br /&gt;
&lt;br /&gt;
[script follows]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Shell script coding standards==&lt;br /&gt;
&lt;br /&gt;
Please have a look at our [http://grass.itc.it/grass61/source/SUBMITTING_SCRIPTS Shell script coding standards] before submitting here.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Miscellaneous Add-ons==&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/utm_which_zone.sh utm_which_zone.sh] is a shell script to determine UTM zone from Lat/Lon input. Requires [http://www.octave.org Octave] to be installed. A shell-only version is [http://dcalvelo.free.fr/grass/utm_which_zone_sh.sh available] which only requires awk.&amp;lt;BR&amp;gt;'''Authors''': Hamish Bowman (Octave part), Markus Neteler (shell script wrapper), Daniel Calvelo (sh+awk version)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Perl scripts for converting data forth and back between Excel files and PostgreSQL: [http://dcalvelo.free.fr/grass/pg2xls.pl pg2xls.pl] reads data from PostgreSQL and produces an excel workbook; [http://dcalvelo.free.fr/grass/xls2sql.pl xls2sql.pl] reads excel files and outputs SQL statements to be fed into an RDBMS. Both scripts need modules from [http://www.cpan.org CPAN], especially [http://search.cpan.org/dist/Spreadsheet-ParseExcel/  Spreadsheet::ParseExcel] for xls2sql.pl and [http://search.cpan.org/~tmtm/Spreadsheet-WriteExcel-FromDB Spreadsheet::WriteExcel::FromDB] and its dependencies for pg2sql.pl. Check the source headers for more info.&amp;lt;BR&amp;gt;'''Authors:''' Daniel Calvelo (xls2sql.pl), Markus Neteler (pg2xls.pl)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.igc.usp.br/pessoais/guano/downloads/azimuth2.c azimuth2.c] is a small C programm to calculate the azimuth and length of vector lines exported by GRASS-GIS as ASCII files (like this: v.out.ascii input=vector output=ascii format=standard). It is useful for create rose diagrams of lineament maps. Improvements on the original code after suggestions by Örs Téglásy, Hungary.&amp;lt;BR&amp;gt;'''Author:''' Carlos Henrique Grohmann&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==GRASS 5.x==&lt;br /&gt;
&lt;br /&gt;
===Vector add-ons for GRASS 5===&lt;br /&gt;
&lt;br /&gt;
* See here: http://grass.itc.it/download/addons.php&lt;br /&gt;
&lt;br /&gt;
===Raster add-ons for GRASS 5===&lt;br /&gt;
&lt;br /&gt;
* See here: http://grass.itc.it/download/addons.php&lt;br /&gt;
&lt;br /&gt;
* [http://www.valledemexico.ambitiouslemon.com/gwmodelling.html r.gmtg] The groundwater modelling tool for grass. A module to use MODFLOW within GRASS. &amp;lt;BR&amp;gt;'''Author''': Jaime Carrera&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==GRASS 6.x==&lt;br /&gt;
&lt;br /&gt;
===Vector add-ons===&lt;br /&gt;
&lt;br /&gt;
* [http://les-ejk.cz/programs/trees.html v.trees3d] is module for making 3D trees from input vector point file. &amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.public.asu.edu/~cmbarton/files/grass_scripts/v.lda v.lda] is a shell script for calculating Ian Johnson's (U. Sidney) Local Density Analysis values to measure clustering of point data at different neighborhood radii. There is an option to create a simple line graph of the results. There have been reports of problems creating the line graph on Cygwin installations of GRASS.&amp;lt;BR&amp;gt;'''Author:''' Michael Barton &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.public.asu.edu/~cmbarton/files/grass_scripts/v.append v.append] is a shell script combining two vector files AND their associated attribute tables. The vector files should be of the same type and, for best results, should have identically formatted attribute tables.&amp;lt;BR&amp;gt;'''Author:''' Michael Barton &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.shockfamily.net/cedric/grass/v.group v.group] generates a new vector map with the same geometry as an existing map. The new map has categories and a table based on grouping by the values in certain columns of the existing map's table. The values in these columns are preserved in the table for the new map. It's like a v.reclass that preserves data.&amp;lt;BR&amp;gt;'''Author:''' Cedric Shock&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/v.out.ascii.db v.out.ascii.db] is a shell script for exporting vector point data coordinates and selected attribute columns to either a file or to the console.&amp;lt;BR&amp;gt;'''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.fle.czu.cz/~jachym/programs/v.rasterbounds v.rasterbounds] is a shell script for creating polygon-vector file of rasterfile boundaries. The best version of GRASS is 6.1+. If you are using GRASS &amp;lt; 6.1, you  have to be in the same mapset as your raster maps are from.&amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.fle.czu.cz/~jachym/programs/v.3Dtin v.3Dtin] is a shell script for making 3D-vector of the 2D ouput from ''v.delauny''. &amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.clubwebcanada.ca/twiens/v.sample.buffer.tgz v.sample.buffer] is a shell script that samples rasters in buffers of a specified size around features in a specified vector file. Sampling results are added as attributes to the vector file. This script was designed for sampling vegetation indices and DEM derived attributes for bird point counts. Sampling results can be one or more basic statistics such as mean, range, max, etc.&amp;lt;BR&amp;gt;'''Author:''' Trevor Wiens&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.unipg.it/~ivanm/v.variogram.tar.gz v.variogram] is a script that create an omnidirectional experimental semi-variogram. This scripts require R-statistics software installed on your machine.&amp;lt;BR&amp;gt;'''Author:''' Ivan Marchesini, Pierluigi De Rosa&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.unipg.it/~ivanm/v.krige.tar.gz v.krige] is a script that  do a surface interpolation from vector point data by Kriging method.The interpolated value of a cell is determined by using an omnidirectional variogram model fitted starting from model parameter given by user desumed from the experimental semi variogram produced by v.variogram.&amp;lt;BR&amp;gt;'''Author:''' Ivan Marchesini, Pierluigi De Rosa&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://ngeo.de/grassstuff/v.lmeasure v.lmeasure] and [http://ngeo.de/grassstuff/v.revlmeasure v.revlmeasure] are two perl scripts that place equidistant vector points along a given arbitrary vector line starting from the beginning or end of the vector line, respectively. Resulting  vector points are labeled with the distance from origin.&amp;lt;BR&amp;gt;'''Author:''' Mats Schuh&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://david.p.finlayson.googlepages.com/v.swathwidth v.swathwidth] creates a vector map representing the sea bottom coverage of a multibeam (swath) sonar survey.&amp;lt;BR&amp;gt;'''Author:''' David Finlayson&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.biol.uni.wroc.pl/sieczka/udostepnione/grass_scripts/v.flip.tar.gz v.flip] flips the direction of selected vector lines.&amp;lt;BR&amp;gt;'''Author:''' Maciej Sieczka&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://phygeo7.geo.uni-augsburg.de/gis2/scripts/v.digatt v.digatt] (shell script) Interactively assign numeric table attributes to series of vector objects. It is meant to be effective by avoiding to type in the attribute value for all single objects again and again. The user is prompted for typing in an attribute value which is assigned to all objects selected by mouseclick afterwards. Next the display is redrawn after updating the table column. Zooming allows to change the region before the old value can be reused or a new one can be typed in (or copied by mouse from another object) in order to assign it to the next series of objects etc. It is tested not very extensively yet. Therefore better work with a copy of your map and consider using v.digit or d.what.vect -e alternatively. [http://phygeo7.geo.uni-augsburg.de/gis2/scripts/v.digatt.png screenshot]. &amp;lt;BR&amp;gt;'''Author:''' Andreas Philipp&lt;br /&gt;
&lt;br /&gt;
===Raster add-ons===&lt;br /&gt;
&lt;br /&gt;
* [http://www.igc.usp.br/pessoais/guano/downloads/r.roughness r.roughness] is a shell script to calculate the surface roughness of a DEM, using r.surf.area and v.surf.rst.&amp;lt;BR&amp;gt;'''Author:''' Carlos Henrique Grohmann&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.fle.czu.cz/~jachym/programs/grass/r.gauss.tgz r.gauss] is Gaussian and Laplacian of Gaussian filter for GRASS. It is written in C language.&amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.fle.czu.cz/~jachym/programs/grass/r.mlv.tgz r.mlv] is Mean of least variance filter for GRASS. It is an edge-preserving (or even edge-enhacing) filter, which should serve for removing additive noise from images. It is written in C language.&amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.fle.czu.cz/~jachym/programs/grass/r.bilateral.tgz r.bilateral] Bilateral filter is an edge-preserving filter, which combines domain and range filtering. It is written in C language.&amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.fle.czu.cz/~jachym/programs/zc.pl Zero crossing] is a simple Perl script, finds the ,,zero crossings`` from the Laplacian of Gaussian filter (see above). It is really &amp;lt;em&amp;gt;very&amp;lt;/em&amp;gt; simple, the edges don't need to be really on that pixel, where they are detected, no interpolation is performed.&amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
     '''Usage:'''&lt;br /&gt;
     zc.pl -i input -o output |r.mapcalc&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.fle.czu.cz/~jachym/programs/local_max.pl Local maxima] is a Perl script for &amp;lt;code&amp;gt;r.mapcalc&amp;lt;/code&amp;gt;. It detects local maxima of the image.&amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
     '''Usage:'''&lt;br /&gt;
     local_maxima.pl -i input -o output -s matrix_size|r.mapcalc&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/r.out.gmt r.out.gmt] is a GRASS script for exporting a GRASS raster map into a [[http://www.soest.hawaii.edu/gmt/ GMT]] grid file. It also creates a GMT color table from the data and can generate some GMT commands for plotting a postscript file. (code is experimental, but functional)&amp;lt;BR&amp;gt;see  also http://169.237.35.250/~dylan/grass_user_group/#GMT_and_GRASS-overview&amp;lt;BR&amp;gt;'''Authors:''' Hamish Bowman, Dylan Beaudette&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/r.pack r.pack] and [http://bambi.otago.ac.nz/hamish/grass/r.unpack r.unpack] are two GRASS scripts for transfering raster maps to another computer as a single file.&amp;lt;BR&amp;gt;'''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/dominant_dir.m dominant_dir.m] and [http://bambi.otago.ac.nz/hamish/grass/calc_terraflow_dir.m calc_terraflow_dir.m] are two Matlab scripts for determining the dominant flow direction from a r.terraflow MFD map and converting into a GRASS aspect map for use with d.rast.arrow, etc.&amp;lt;BR&amp;gt;'''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www-pool.math.tu-berlin.de/~soeren/grass/modules/ r.in.onearth] for download and import satellite images direct from the NASA onearth WMS server into GRASS.&amp;lt;BR&amp;gt;'''Author:''' Soeren Gebbert&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.shockfamily.net/cedric/grass/r.tileset r.tileset] generates a list of tiles and sizes in a source projection that cover the region in the current database with appropriate resolution. The size of individual tiles can be constrained. Only tiles intersecting the current region are returned. These tilings are appropriate for requesting data from another projection to meet the specifications of the current region. For example, it could be used to generate tile requests to a latitude / longitude WMS server like this &amp;lt;code&amp;gt;r.tileset -w sourceproj=&amp;quot;+init=epsg:4326&amp;quot;&amp;lt;/code&amp;gt;.&amp;lt;BR&amp;gt;'''Author:''' Cedric Shock&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [ftp://gsca.nrcan.gc.ca/outgoing/Patton/Grass/r.csr.tar.gz r.csr] integrates several Grass programs to produce colored, shaded-relief rasters in one step. Accepts single or multiple elevation/bathymetry maps as input; optionally will fill data holidays with 3x3 median filter, multiple times, if required; can apply color maps from a) input raster, b) another raster in MAPSET, or c) from a rules file; otherwise, rainbow colorbar is applied. Output colored, shaded-relief rasters can optionally be exported to tiff format and archived using tar with gzip/bzip2 compression if appropriate flags are given. Shading parameters can be modified, though useful defaults are given. (Right-click and choose 'Save Link As')&amp;lt;BR&amp;gt;'''Author:''' Eric Patton&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [ftp://gsca.nrcan.gc.ca/outgoing/Patton/Grass/r.fragment.tar.gz r.fragment] fragments a raster into a user-defined set of smaller tiles according to an input number of rows and columns. Optionally, a null value threshold can be set to filter out candidate tiles that would have a large percentage of null cells. (Right-click and choose 'Save Link As')&amp;lt;BR&amp;gt;'''Author:''' Eric Patton&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://david.p.finlayson.googlepages.com/r.eucdist r.eucdist] creates a raster map estimating the euclidean distance from known cells.&amp;lt;BR&amp;gt;'''Author:''' David Finlayson&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://david.p.finlayson.googlepages.com/r.smoothpatch r.smoothpatch] creates a composite of two rasters using a distance-weighted average across the transition to smooth the edges.&amp;lt;BR&amp;gt;'''Author:''' David Finlayson&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.faunalia.it/download/r_li/ r.li] is meant to be a more flexible and faster replacement of the old r.le. Currently under development.&amp;lt;BR&amp;gt;'''Authors:''' Claudio Porta, Davide Spano, Serena Pallecchi, [http://www.faunalia.it Faunalia]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.biol.uni.wroc.pl/sieczka/udostepnione/grass_scripts/r.surf.nnbathy.tar.gz r.surf.nnbathy] interpolates surface from rasterized input using [http://www.marine.csiro.au/~sakov/ nn] natural neighbor intepolation library.&amp;lt;BR&amp;gt;'''Author:''' Maciej Sieczka&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.star.ait.ac.th/~yann/6s/i.atcorr.1.3.1a.tar.gz i.atcorr] Atmospheric Correction using Christo Zietsman's implementation of 6s code in C/C++. The Old Page was rescued by Christo recently and copied [http://www.star.ait.ac.th/~yann/6s/ here]. Compiled in CVS but not tested. &amp;lt;BR&amp;gt;'''Author:''' Christo Zietsman&lt;br /&gt;
&lt;br /&gt;
===General add-ons===&lt;br /&gt;
&lt;br /&gt;
* [http://www.gdf-hannover.de/dassau/g.laptop/g.laptop.sh g.laptop.sh] is an interactive shell script to extract raster and vector data from current Location into a new one. Data can be copied or extracted in current or original resolution and region extend. This script was written to extract smaller parts of a GRASS location to be able to present them on a laptop without the necessity to transfer huge data. Maps do not have to be in the same mapset.&amp;lt;BR&amp;gt;'''Author:''' Otto Dassau &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* '''''Readline completion''''' for GRASS commands under the bash shell: [http://www.sorokine.info/grass-complete/ grass-complete] won't clutter the environment but needs to be installed; [http://dcalvelo.free.fr/grass/grass_rlcompleter.sh grass_rlcompleter.sh] needs almost no installation but will pollute the environment. Grass-Complete currently requires Bash version 2.05 for proper install.&amp;lt;BR&amp;gt;'''Author:''' Alexandre Sorokine (grass-complete), Daniel Calvelo (grass_rlcompleter.sh)&lt;br /&gt;
&lt;br /&gt;
=== Display add-ons ===&lt;br /&gt;
&lt;br /&gt;
==== [[IconSymbols]] ====&lt;br /&gt;
* [[IconSymbols|Symbols]] which can be used with ''d.vect, d.graph'', and ''ps.map''.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/d.frame.quarter d.frame.quarter] is a shell script that will split the display into four quadrants using ''d.frame''. Individual frames are named ''uno, dos, tres, cuatro'', and ''full_screen''.&amp;lt;BR&amp;gt;'''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [ftp://gsca.nrcan.gc.ca/outgoing/Patton/Grass/d.hyperlink.tar.gz d.hyperlink] is an interactive shell script that allows the viewing of hyperlinked images from a vector's attribute table in an external image viewer. Queries can be made via SQL statements or interactive mouse-clicking. The attribute table must be pre-populated with a column containing the image to link the vector to; the user also specifies the image folder in the current MAPSET where the images are located. The script currently supports gimp, Eye of Gnome, gthumb, gpdf, and Inkscape image viewers. (Right-click and choose 'Save Link As')&amp;lt;BR&amp;gt;'''Author: '''Eric Patton&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/d.stations d.stations] is a shell script that quickly displays vector points (or sites for GRASS 5.4 and below).&amp;lt;BR&amp;gt;'''Author:''' Hamish Bowman &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/d.varea d.varea] is a shell script that quickly displays vector areas.&amp;lt;BR&amp;gt;'''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
===Postscript add-ons===&lt;br /&gt;
&lt;br /&gt;
* [http://les-ejk.cz/programs/grass/ps.atlas ps.atlas] is a shell script that makes more maps on current region according to input *.psmap file. General map can be stored as vector file. The resulting *.eps maps can be automatically converted to *.pdf files.&amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [[ps.map scripts|ps.map samples/templates]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== [[AreaFillPatterns]] ====&lt;br /&gt;
* Hatches for ps.map's vareas&lt;br /&gt;
&lt;br /&gt;
===GRASS and UMN Mapserver===&lt;br /&gt;
&lt;br /&gt;
* [http://www.mail-archive.com/mapserver-users@lists.umn.edu/msg00086.html See interesting posting]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Community]]&lt;br /&gt;
[[Category:Development]]&lt;br /&gt;
[[Category:Documentation]]&lt;br /&gt;
[[Category:Installation]]&lt;/div&gt;</summary>
		<author><name>⚠️EricPatton</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=AddOns&amp;diff=2151</id>
		<title>AddOns</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=AddOns&amp;diff=2151"/>
		<updated>2006-07-20T12:50:58Z</updated>

		<summary type="html">&lt;p&gt;⚠️EricPatton: /* Raster add-ons */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page contains references to user contributions and add-ons&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Copyright and licensing information==&lt;br /&gt;
&lt;br /&gt;
''Please be sure to include copyright and licensing information in the header comments of your code so that others may know how they can use, extend, modify, and redistribute your work.''&lt;br /&gt;
&lt;br /&gt;
e.g. at the top of a shell script:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/sh&lt;br /&gt;
############################################################################&lt;br /&gt;
#&lt;br /&gt;
# MODULE:       v.in.e00&lt;br /&gt;
#&lt;br /&gt;
# AUTHOR(S):    Markus Neteler, Otto Dassau&lt;br /&gt;
#&lt;br /&gt;
# PURPOSE:      Import E00 data into a GRASS vector map&lt;br /&gt;
#               Imports single and split E00 files (.e00, .e01, .e02 ...)&lt;br /&gt;
#&lt;br /&gt;
# COPYRIGHT:    (c) 2004, 2005 GDF Hannover bR, http://www.gdf-hannover.de&lt;br /&gt;
#&lt;br /&gt;
#               This program is free software under the GNU General Public&lt;br /&gt;
#               License (&amp;gt;=v2). Read the file COPYING that comes with GRASS&lt;br /&gt;
#               for details.&lt;br /&gt;
#&lt;br /&gt;
#############################################################################&lt;br /&gt;
#&lt;br /&gt;
# REQUIREMENTS:&lt;br /&gt;
#      -  avcimport: http://avce00.maptools.org&lt;br /&gt;
&lt;br /&gt;
[script follows]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Shell script coding standards==&lt;br /&gt;
&lt;br /&gt;
Please have a look at our [http://grass.itc.it/grass61/source/SUBMITTING_SCRIPTS Shell script coding standards] before submitting here.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Miscellaneous Add-ons==&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/utm_which_zone.sh utm_which_zone.sh] is a shell script to determine UTM zone from Lat/Lon input. Requires [http://www.octave.org Octave] to be installed. A shell-only version is [http://dcalvelo.free.fr/grass/utm_which_zone_sh.sh available] which only requires awk.&amp;lt;BR&amp;gt;'''Authors''': Hamish Bowman (Octave part), Markus Neteler (shell script wrapper), Daniel Calvelo (sh+awk version)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Perl scripts for converting data forth and back between Excel files and PostgreSQL: [http://dcalvelo.free.fr/grass/pg2xls.pl pg2xls.pl] reads data from PostgreSQL and produces an excel workbook; [http://dcalvelo.free.fr/grass/xls2sql.pl xls2sql.pl] reads excel files and outputs SQL statements to be fed into an RDBMS. Both scripts need modules from [http://www.cpan.org CPAN], especially [http://search.cpan.org/dist/Spreadsheet-ParseExcel/  Spreadsheet::ParseExcel] for xls2sql.pl and [http://search.cpan.org/~tmtm/Spreadsheet-WriteExcel-FromDB Spreadsheet::WriteExcel::FromDB] and its dependencies for pg2sql.pl. Check the source headers for more info.&amp;lt;BR&amp;gt;'''Authors:''' Daniel Calvelo (xls2sql.pl), Markus Neteler (pg2xls.pl)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.igc.usp.br/pessoais/guano/downloads/azimuth2.c azimuth2.c] is a small C programm to calculate the azimuth and length of vector lines exported by GRASS-GIS as ASCII files (like this: v.out.ascii input=vector output=ascii format=standard). It is useful for create rose diagrams of lineament maps. Improvements on the original code after suggestions by Örs Téglásy, Hungary.&amp;lt;BR&amp;gt;'''Author:''' Carlos Henrique Grohmann&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==GRASS 5.x==&lt;br /&gt;
&lt;br /&gt;
===Vector add-ons for GRASS 5===&lt;br /&gt;
&lt;br /&gt;
* See here: http://grass.itc.it/download/addons.php&lt;br /&gt;
&lt;br /&gt;
===Raster add-ons for GRASS 5===&lt;br /&gt;
&lt;br /&gt;
* See here: http://grass.itc.it/download/addons.php&lt;br /&gt;
&lt;br /&gt;
* [http://www.valledemexico.ambitiouslemon.com/gwmodelling.html r.gmtg] The groundwater modelling tool for grass. A module to use MODFLOW within GRASS. &amp;lt;BR&amp;gt;'''Author''': Jaime Carrera&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==GRASS 6.x==&lt;br /&gt;
&lt;br /&gt;
===Vector add-ons===&lt;br /&gt;
&lt;br /&gt;
* [http://les-ejk.cz/programs/trees.html v.trees3d] is module for making 3D trees from input vector point file. &amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.public.asu.edu/~cmbarton/files/grass_scripts/v.lda v.lda] is a shell script for calculating Ian Johnson's (U. Sidney) Local Density Analysis values to measure clustering of point data at different neighborhood radii. There is an option to create a simple line graph of the results. There have been reports of problems creating the line graph on Cygwin installations of GRASS.&amp;lt;BR&amp;gt;'''Author:''' Michael Barton &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.public.asu.edu/~cmbarton/files/grass_scripts/v.append v.append] is a shell script combining two vector files AND their associated attribute tables. The vector files should be of the same type and, for best results, should have identically formatted attribute tables.&amp;lt;BR&amp;gt;'''Author:''' Michael Barton &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.shockfamily.net/cedric/grass/v.group v.group] generates a new vector map with the same geometry as an existing map. The new map has categories and a table based on grouping by the values in certain columns of the existing map's table. The values in these columns are preserved in the table for the new map. It's like a v.reclass that preserves data.&amp;lt;BR&amp;gt;'''Author:''' Cedric Shock&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/v.out.ascii.db v.out.ascii.db] is a shell script for exporting vector point data coordinates and selected attribute columns to either a file or to the console.&amp;lt;BR&amp;gt;'''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.fle.czu.cz/~jachym/programs/v.rasterbounds v.rasterbounds] is a shell script for creating polygon-vector file of rasterfile boundaries. The best version of GRASS is 6.1+. If you are using GRASS &amp;lt; 6.1, you  have to be in the same mapset as your raster maps are from.&amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.fle.czu.cz/~jachym/programs/v.3Dtin v.3Dtin] is a shell script for making 3D-vector of the 2D ouput from ''v.delauny''. &amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.clubwebcanada.ca/twiens/v.sample.buffer.tgz v.sample.buffer] is a shell script that samples rasters in buffers of a specified size around features in a specified vector file. Sampling results are added as attributes to the vector file. This script was designed for sampling vegetation indices and DEM derived attributes for bird point counts. Sampling results can be one or more basic statistics such as mean, range, max, etc.&amp;lt;BR&amp;gt;'''Author:''' Trevor Wiens&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.unipg.it/~ivanm/v.variogram.tar.gz v.variogram] is a script that create an omnidirectional experimental semi-variogram. This scripts require R-statistics software installed on your machine.&amp;lt;BR&amp;gt;'''Author:''' Ivan Marchesini, Pierluigi De Rosa&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.unipg.it/~ivanm/v.krige.tar.gz v.krige] is a script that  do a surface interpolation from vector point data by Kriging method.The interpolated value of a cell is determined by using an omnidirectional variogram model fitted starting from model parameter given by user desumed from the experimental semi variogram produced by v.variogram.&amp;lt;BR&amp;gt;'''Author:''' Ivan Marchesini, Pierluigi De Rosa&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://ngeo.de/grassstuff/v.lmeasure v.lmeasure] and [http://ngeo.de/grassstuff/v.revlmeasure v.revlmeasure] are two perl scripts that place equidistant vector points along a given arbitrary vector line starting from the beginning or end of the vector line, respectively. Resulting  vector points are labeled with the distance from origin.&amp;lt;BR&amp;gt;'''Author:''' Mats Schuh&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://david.p.finlayson.googlepages.com/v.swathwidth v.swathwidth] creates a vector map representing the sea bottom coverage of a multibeam (swath) sonar survey.&amp;lt;BR&amp;gt;'''Author:''' David Finlayson&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.biol.uni.wroc.pl/sieczka/udostepnione/grass_scripts/v.flip.tar.gz v.flip] flips the direction of selected vector lines.&amp;lt;BR&amp;gt;'''Author:''' Maciej Sieczka&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://phygeo7.geo.uni-augsburg.de/gis2/scripts/v.digatt v.digatt] (shell script) Interactively assign numeric table attributes to series of vector objects. It is meant to be effective by avoiding to type in the attribute value for all single objects again and again. The user is prompted for typing in an attribute value which is assigned to all objects selected by mouseclick afterwards. Next the display is redrawn after updating the table column. Zooming allows to change the region before the old value can be reused or a new one can be typed in (or copied by mouse from another object) in order to assign it to the next series of objects etc. It is tested not very extensively yet. Therefore better work with a copy of your map and consider using v.digit or d.what.vect -e alternatively. [http://phygeo7.geo.uni-augsburg.de/gis2/scripts/v.digatt.png screenshot]. &amp;lt;BR&amp;gt;'''Author:''' Andreas Philipp&lt;br /&gt;
&lt;br /&gt;
===Raster add-ons===&lt;br /&gt;
&lt;br /&gt;
* [http://www.igc.usp.br/pessoais/guano/downloads/r.roughness r.roughness] is a shell script to calculate the surface roughness of a DEM, using r.surf.area and v.surf.rst.&amp;lt;BR&amp;gt;'''Author:''' Carlos Henrique Grohmann&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.fle.czu.cz/~jachym/programs/grass/r.gauss.tgz r.gauss] is Gaussian and Laplacian of Gaussian filter for GRASS. It is written in C language.&amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.fle.czu.cz/~jachym/programs/grass/r.mlv.tgz r.mlv] is Mean of least variance filter for GRASS. It is an edge-preserving (or even edge-enhacing) filter, which should serve for removing additive noise from images. It is written in C language.&amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.fle.czu.cz/~jachym/programs/grass/r.bilateral.tgz r.bilateral] Bilateral filter is an edge-preserving filter, which combines domain and range filtering. It is written in C language.&amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.fle.czu.cz/~jachym/programs/zc.pl Zero crossing] is a simple Perl script, finds the ,,zero crossings`` from the Laplacian of Gaussian filter (see above). It is really &amp;lt;em&amp;gt;very&amp;lt;/em&amp;gt; simple, the edges don't need to be really on that pixel, where they are detected, no interpolation is performed.&amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
     '''Usage:'''&lt;br /&gt;
     zc.pl -i input -o output |r.mapcalc&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.fle.czu.cz/~jachym/programs/local_max.pl Local maxima] is a Perl script for &amp;lt;code&amp;gt;r.mapcalc&amp;lt;/code&amp;gt;. It detects local maxima of the image.&amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
     '''Usage:'''&lt;br /&gt;
     local_maxima.pl -i input -o output -s matrix_size|r.mapcalc&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/r.out.gmt r.out.gmt] is a GRASS script for exporting a GRASS raster map into a [[http://www.soest.hawaii.edu/gmt/ GMT]] grid file. It also creates a GMT color table from the data and can generate some GMT commands for plotting a postscript file. (code is experimental, but functional)&amp;lt;BR&amp;gt;see  also http://169.237.35.250/~dylan/grass_user_group/#GMT_and_GRASS-overview&amp;lt;BR&amp;gt;'''Authors:''' Hamish Bowman, Dylan Beaudette&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/r.pack r.pack] and [http://bambi.otago.ac.nz/hamish/grass/r.unpack r.unpack] are two GRASS scripts for transfering raster maps to another computer as a single file.&amp;lt;BR&amp;gt;'''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/dominant_dir.m dominant_dir.m] and [http://bambi.otago.ac.nz/hamish/grass/calc_terraflow_dir.m calc_terraflow_dir.m] are two Matlab scripts for determining the dominant flow direction from a r.terraflow MFD map and converting into a GRASS aspect map for use with d.rast.arrow, etc.&amp;lt;BR&amp;gt;'''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www-pool.math.tu-berlin.de/~soeren/grass/modules/ r.in.onearth] for download and import satellite images direct from the NASA onearth WMS server into GRASS.&amp;lt;BR&amp;gt;'''Author:''' Soeren Gebbert&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.shockfamily.net/cedric/grass/r.tileset r.tileset] generates a list of tiles and sizes in a source projection that cover the region in the current database with appropriate resolution. The size of individual tiles can be constrained. Only tiles intersecting the current region are returned. These tilings are appropriate for requesting data from another projection to meet the specifications of the current region. For example, it could be used to generate tile requests to a latitude / longitude WMS server like this &amp;lt;code&amp;gt;r.tileset -w sourceproj=&amp;quot;+init=epsg:4326&amp;quot;&amp;lt;/code&amp;gt;.&amp;lt;BR&amp;gt;'''Author:''' Cedric Shock&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [ftp://gsca.nrcan.gc.ca/outgoing/Patton/Grass/r.csr.tar.gz r.csr] integrates several Grass programs to produce colored, shaded-relief rasters in one step. Accepts single or multiple elevation/bathymetry maps as input; optionally will fill data holidays with 3x3 median filter, multiple times, if required; can apply color maps from a) input raster, b) another raster in MAPSET, or c) from a rules file; otherwise, rainbow colorbar is applied. Output colored, shaded-relief rasters can optionally be exported to tiff format and archived using tar with gzip/bzip2 compression if appropriate flags are given. Shading parameters can be modified, though useful defaults are given. (Right-click and choose 'Save Link As')&amp;lt;BR&amp;gt;'''Author:''' Eric Patton&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [ftp://gsca.nrcan.gc.ca/outgoing/Patton/Grass/r.fragment.tar.gz r.fragment] fragments a raster into a user-defined set of smaller tiles according to an input number of rows and columns. Optionally, a null value threshold can be set to filter out candidate tiles that would have a large percentage of null cells. (Right-click and choose 'Save Link As')&amp;lt;BR&amp;gt;'''Author:''' Eric Patton&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://david.p.finlayson.googlepages.com/r.eucdist r.eucdist] creates a raster map estimating the euclidean distance from known cells.&amp;lt;BR&amp;gt;'''Author:''' David Finlayson&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://david.p.finlayson.googlepages.com/r.smoothpatch r.smoothpatch] creates a composite of two rasters using a distance-weighted average across the transition to smooth the edges.&amp;lt;BR&amp;gt;'''Author:''' David Finlayson&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.faunalia.it/download/r_li/ r.li] is meant to be a more flexible and faster replacement of the old r.le. Currently under development.&amp;lt;BR&amp;gt;'''Authors:''' Claudio Porta, Davide Spano, Serena Pallecchi, [http://www.faunalia.it Faunalia]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.biol.uni.wroc.pl/sieczka/udostepnione/grass_scripts/r.surf.nnbathy.tar.gz r.surf.nnbathy] interpolates surface from rasterized input using [http://www.marine.csiro.au/~sakov/ nn] natural neighbor intepolation library.&amp;lt;BR&amp;gt;'''Author:''' Maciej Sieczka&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.star.ait.ac.th/~yann/6s/i.atcorr.1.3.1a.tar.gz i.atcorr] Atmospheric Correction using Christo Zietsman's implementation of 6s code in C/C++. The Old Page was rescued by Christo recently and copied [http://www.star.ait.ac.th/~yann/6s/ here]. Compiled in CVS but not tested. &amp;lt;BR&amp;gt;'''Author:''' Christo Zietsman&lt;br /&gt;
&lt;br /&gt;
===General add-ons===&lt;br /&gt;
&lt;br /&gt;
* [http://www.gdf-hannover.de/dassau/g.laptop/g.laptop.sh g.laptop.sh] is an interactive shell script to extract raster and vector data from current Location into a new one. Data can be copied or extracted in current or original resolution and region extend. This script was written to extract smaller parts of a GRASS location to be able to present them on a laptop without the necessity to transfer huge data. Maps do not have to be in the same mapset.&amp;lt;BR&amp;gt;'''Author:''' Otto Dassau &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* '''''Readline completion''''' for GRASS commands under the bash shell: [http://www.sorokine.info/grass-complete/ grass-complete] won't clutter the environment but needs to be installed; [http://dcalvelo.free.fr/grass/grass_rlcompleter.sh grass_rlcompleter.sh] needs almost no installation but will pollute the environment. Grass-Complete currently requires Bash version 2.05 for proper install.&amp;lt;BR&amp;gt;'''Author:''' Alexandre Sorokine (grass-complete), Daniel Calvelo (grass_rlcompleter.sh)&lt;br /&gt;
&lt;br /&gt;
=== Display add-ons ===&lt;br /&gt;
&lt;br /&gt;
==== [[IconSymbols]] ====&lt;br /&gt;
* [[IconSymbols|Symbols]] which can be used with ''d.vect, d.graph'', and ''ps.map''.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/d.frame.quarter d.frame.quarter] is a shell script that will split the display into four quadrants using ''d.frame''. Individual frames are named ''uno, dos, tres, cuatro'', and ''full_screen''.&amp;lt;BR&amp;gt;'''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [ftp://gsca.nrcan.gc.ca/outgoing/Patton/Grass/d.hyperlink.tar.gz d.hyperlink] is an interactive shell script that allows the viewing of hyperlinked images from a vector's attribute table in an external image viewer. Queries can be made via SQL statements or interactive mouse-clicking. The attribute table must be pre-populated with a column containing the image to link the vector to; the user also specifies the image folder in the current MAPSET where the images are located. The script currently supports gimp, Eye of Gnome, gthumb, gpdf, and Inkscape image viewers.&amp;lt;BR&amp;gt;'''Author: '''Eric Patton&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/d.stations d.stations] is a shell script that quickly displays vector points (or sites for GRASS 5.4 and below).&amp;lt;BR&amp;gt;'''Author:''' Hamish Bowman &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/d.varea d.varea] is a shell script that quickly displays vector areas.&amp;lt;BR&amp;gt;'''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
===Postscript add-ons===&lt;br /&gt;
&lt;br /&gt;
* [http://les-ejk.cz/programs/grass/ps.atlas ps.atlas] is a shell script that makes more maps on current region according to input *.psmap file. General map can be stored as vector file. The resulting *.eps maps can be automatically converted to *.pdf files.&amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [[ps.map scripts|ps.map samples/templates]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== [[AreaFillPatterns]] ====&lt;br /&gt;
* Hatches for ps.map's vareas&lt;br /&gt;
&lt;br /&gt;
===GRASS and UMN Mapserver===&lt;br /&gt;
&lt;br /&gt;
* [http://www.mail-archive.com/mapserver-users@lists.umn.edu/msg00086.html See interesting posting]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Community]]&lt;br /&gt;
[[Category:Development]]&lt;br /&gt;
[[Category:Documentation]]&lt;br /&gt;
[[Category:Installation]]&lt;/div&gt;</summary>
		<author><name>⚠️EricPatton</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=AddOns&amp;diff=2150</id>
		<title>AddOns</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=AddOns&amp;diff=2150"/>
		<updated>2006-07-20T12:50:25Z</updated>

		<summary type="html">&lt;p&gt;⚠️EricPatton: /* Raster add-ons */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page contains references to user contributions and add-ons&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Copyright and licensing information==&lt;br /&gt;
&lt;br /&gt;
''Please be sure to include copyright and licensing information in the header comments of your code so that others may know how they can use, extend, modify, and redistribute your work.''&lt;br /&gt;
&lt;br /&gt;
e.g. at the top of a shell script:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/sh&lt;br /&gt;
############################################################################&lt;br /&gt;
#&lt;br /&gt;
# MODULE:       v.in.e00&lt;br /&gt;
#&lt;br /&gt;
# AUTHOR(S):    Markus Neteler, Otto Dassau&lt;br /&gt;
#&lt;br /&gt;
# PURPOSE:      Import E00 data into a GRASS vector map&lt;br /&gt;
#               Imports single and split E00 files (.e00, .e01, .e02 ...)&lt;br /&gt;
#&lt;br /&gt;
# COPYRIGHT:    (c) 2004, 2005 GDF Hannover bR, http://www.gdf-hannover.de&lt;br /&gt;
#&lt;br /&gt;
#               This program is free software under the GNU General Public&lt;br /&gt;
#               License (&amp;gt;=v2). Read the file COPYING that comes with GRASS&lt;br /&gt;
#               for details.&lt;br /&gt;
#&lt;br /&gt;
#############################################################################&lt;br /&gt;
#&lt;br /&gt;
# REQUIREMENTS:&lt;br /&gt;
#      -  avcimport: http://avce00.maptools.org&lt;br /&gt;
&lt;br /&gt;
[script follows]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Shell script coding standards==&lt;br /&gt;
&lt;br /&gt;
Please have a look at our [http://grass.itc.it/grass61/source/SUBMITTING_SCRIPTS Shell script coding standards] before submitting here.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Miscellaneous Add-ons==&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/utm_which_zone.sh utm_which_zone.sh] is a shell script to determine UTM zone from Lat/Lon input. Requires [http://www.octave.org Octave] to be installed. A shell-only version is [http://dcalvelo.free.fr/grass/utm_which_zone_sh.sh available] which only requires awk.&amp;lt;BR&amp;gt;'''Authors''': Hamish Bowman (Octave part), Markus Neteler (shell script wrapper), Daniel Calvelo (sh+awk version)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Perl scripts for converting data forth and back between Excel files and PostgreSQL: [http://dcalvelo.free.fr/grass/pg2xls.pl pg2xls.pl] reads data from PostgreSQL and produces an excel workbook; [http://dcalvelo.free.fr/grass/xls2sql.pl xls2sql.pl] reads excel files and outputs SQL statements to be fed into an RDBMS. Both scripts need modules from [http://www.cpan.org CPAN], especially [http://search.cpan.org/dist/Spreadsheet-ParseExcel/  Spreadsheet::ParseExcel] for xls2sql.pl and [http://search.cpan.org/~tmtm/Spreadsheet-WriteExcel-FromDB Spreadsheet::WriteExcel::FromDB] and its dependencies for pg2sql.pl. Check the source headers for more info.&amp;lt;BR&amp;gt;'''Authors:''' Daniel Calvelo (xls2sql.pl), Markus Neteler (pg2xls.pl)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.igc.usp.br/pessoais/guano/downloads/azimuth2.c azimuth2.c] is a small C programm to calculate the azimuth and length of vector lines exported by GRASS-GIS as ASCII files (like this: v.out.ascii input=vector output=ascii format=standard). It is useful for create rose diagrams of lineament maps. Improvements on the original code after suggestions by Örs Téglásy, Hungary.&amp;lt;BR&amp;gt;'''Author:''' Carlos Henrique Grohmann&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==GRASS 5.x==&lt;br /&gt;
&lt;br /&gt;
===Vector add-ons for GRASS 5===&lt;br /&gt;
&lt;br /&gt;
* See here: http://grass.itc.it/download/addons.php&lt;br /&gt;
&lt;br /&gt;
===Raster add-ons for GRASS 5===&lt;br /&gt;
&lt;br /&gt;
* See here: http://grass.itc.it/download/addons.php&lt;br /&gt;
&lt;br /&gt;
* [http://www.valledemexico.ambitiouslemon.com/gwmodelling.html r.gmtg] The groundwater modelling tool for grass. A module to use MODFLOW within GRASS. &amp;lt;BR&amp;gt;'''Author''': Jaime Carrera&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==GRASS 6.x==&lt;br /&gt;
&lt;br /&gt;
===Vector add-ons===&lt;br /&gt;
&lt;br /&gt;
* [http://les-ejk.cz/programs/trees.html v.trees3d] is module for making 3D trees from input vector point file. &amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.public.asu.edu/~cmbarton/files/grass_scripts/v.lda v.lda] is a shell script for calculating Ian Johnson's (U. Sidney) Local Density Analysis values to measure clustering of point data at different neighborhood radii. There is an option to create a simple line graph of the results. There have been reports of problems creating the line graph on Cygwin installations of GRASS.&amp;lt;BR&amp;gt;'''Author:''' Michael Barton &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.public.asu.edu/~cmbarton/files/grass_scripts/v.append v.append] is a shell script combining two vector files AND their associated attribute tables. The vector files should be of the same type and, for best results, should have identically formatted attribute tables.&amp;lt;BR&amp;gt;'''Author:''' Michael Barton &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.shockfamily.net/cedric/grass/v.group v.group] generates a new vector map with the same geometry as an existing map. The new map has categories and a table based on grouping by the values in certain columns of the existing map's table. The values in these columns are preserved in the table for the new map. It's like a v.reclass that preserves data.&amp;lt;BR&amp;gt;'''Author:''' Cedric Shock&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/v.out.ascii.db v.out.ascii.db] is a shell script for exporting vector point data coordinates and selected attribute columns to either a file or to the console.&amp;lt;BR&amp;gt;'''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.fle.czu.cz/~jachym/programs/v.rasterbounds v.rasterbounds] is a shell script for creating polygon-vector file of rasterfile boundaries. The best version of GRASS is 6.1+. If you are using GRASS &amp;lt; 6.1, you  have to be in the same mapset as your raster maps are from.&amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.fle.czu.cz/~jachym/programs/v.3Dtin v.3Dtin] is a shell script for making 3D-vector of the 2D ouput from ''v.delauny''. &amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.clubwebcanada.ca/twiens/v.sample.buffer.tgz v.sample.buffer] is a shell script that samples rasters in buffers of a specified size around features in a specified vector file. Sampling results are added as attributes to the vector file. This script was designed for sampling vegetation indices and DEM derived attributes for bird point counts. Sampling results can be one or more basic statistics such as mean, range, max, etc.&amp;lt;BR&amp;gt;'''Author:''' Trevor Wiens&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.unipg.it/~ivanm/v.variogram.tar.gz v.variogram] is a script that create an omnidirectional experimental semi-variogram. This scripts require R-statistics software installed on your machine.&amp;lt;BR&amp;gt;'''Author:''' Ivan Marchesini, Pierluigi De Rosa&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.unipg.it/~ivanm/v.krige.tar.gz v.krige] is a script that  do a surface interpolation from vector point data by Kriging method.The interpolated value of a cell is determined by using an omnidirectional variogram model fitted starting from model parameter given by user desumed from the experimental semi variogram produced by v.variogram.&amp;lt;BR&amp;gt;'''Author:''' Ivan Marchesini, Pierluigi De Rosa&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://ngeo.de/grassstuff/v.lmeasure v.lmeasure] and [http://ngeo.de/grassstuff/v.revlmeasure v.revlmeasure] are two perl scripts that place equidistant vector points along a given arbitrary vector line starting from the beginning or end of the vector line, respectively. Resulting  vector points are labeled with the distance from origin.&amp;lt;BR&amp;gt;'''Author:''' Mats Schuh&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://david.p.finlayson.googlepages.com/v.swathwidth v.swathwidth] creates a vector map representing the sea bottom coverage of a multibeam (swath) sonar survey.&amp;lt;BR&amp;gt;'''Author:''' David Finlayson&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.biol.uni.wroc.pl/sieczka/udostepnione/grass_scripts/v.flip.tar.gz v.flip] flips the direction of selected vector lines.&amp;lt;BR&amp;gt;'''Author:''' Maciej Sieczka&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://phygeo7.geo.uni-augsburg.de/gis2/scripts/v.digatt v.digatt] (shell script) Interactively assign numeric table attributes to series of vector objects. It is meant to be effective by avoiding to type in the attribute value for all single objects again and again. The user is prompted for typing in an attribute value which is assigned to all objects selected by mouseclick afterwards. Next the display is redrawn after updating the table column. Zooming allows to change the region before the old value can be reused or a new one can be typed in (or copied by mouse from another object) in order to assign it to the next series of objects etc. It is tested not very extensively yet. Therefore better work with a copy of your map and consider using v.digit or d.what.vect -e alternatively. [http://phygeo7.geo.uni-augsburg.de/gis2/scripts/v.digatt.png screenshot]. &amp;lt;BR&amp;gt;'''Author:''' Andreas Philipp&lt;br /&gt;
&lt;br /&gt;
===Raster add-ons===&lt;br /&gt;
&lt;br /&gt;
* [http://www.igc.usp.br/pessoais/guano/downloads/r.roughness r.roughness] is a shell script to calculate the surface roughness of a DEM, using r.surf.area and v.surf.rst.&amp;lt;BR&amp;gt;'''Author:''' Carlos Henrique Grohmann&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.fle.czu.cz/~jachym/programs/grass/r.gauss.tgz r.gauss] is Gaussian and Laplacian of Gaussian filter for GRASS. It is written in C language.&amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.fle.czu.cz/~jachym/programs/grass/r.mlv.tgz r.mlv] is Mean of least variance filter for GRASS. It is an edge-preserving (or even edge-enhacing) filter, which should serve for removing additive noise from images. It is written in C language.&amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.fle.czu.cz/~jachym/programs/grass/r.bilateral.tgz r.bilateral] Bilateral filter is an edge-preserving filter, which combines domain and range filtering. It is written in C language.&amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.fle.czu.cz/~jachym/programs/zc.pl Zero crossing] is a simple Perl script, finds the ,,zero crossings`` from the Laplacian of Gaussian filter (see above). It is really &amp;lt;em&amp;gt;very&amp;lt;/em&amp;gt; simple, the edges don't need to be really on that pixel, where they are detected, no interpolation is performed.&amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
     '''Usage:'''&lt;br /&gt;
     zc.pl -i input -o output |r.mapcalc&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.fle.czu.cz/~jachym/programs/local_max.pl Local maxima] is a Perl script for &amp;lt;code&amp;gt;r.mapcalc&amp;lt;/code&amp;gt;. It detects local maxima of the image.&amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
     '''Usage:'''&lt;br /&gt;
     local_maxima.pl -i input -o output -s matrix_size|r.mapcalc&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/r.out.gmt r.out.gmt] is a GRASS script for exporting a GRASS raster map into a [[http://www.soest.hawaii.edu/gmt/ GMT]] grid file. It also creates a GMT color table from the data and can generate some GMT commands for plotting a postscript file. (code is experimental, but functional)&amp;lt;BR&amp;gt;see  also http://169.237.35.250/~dylan/grass_user_group/#GMT_and_GRASS-overview&amp;lt;BR&amp;gt;'''Authors:''' Hamish Bowman, Dylan Beaudette&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/r.pack r.pack] and [http://bambi.otago.ac.nz/hamish/grass/r.unpack r.unpack] are two GRASS scripts for transfering raster maps to another computer as a single file.&amp;lt;BR&amp;gt;'''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/dominant_dir.m dominant_dir.m] and [http://bambi.otago.ac.nz/hamish/grass/calc_terraflow_dir.m calc_terraflow_dir.m] are two Matlab scripts for determining the dominant flow direction from a r.terraflow MFD map and converting into a GRASS aspect map for use with d.rast.arrow, etc.&amp;lt;BR&amp;gt;'''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www-pool.math.tu-berlin.de/~soeren/grass/modules/ r.in.onearth] for download and import satellite images direct from the NASA onearth WMS server into GRASS.&amp;lt;BR&amp;gt;'''Author:''' Soeren Gebbert&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.shockfamily.net/cedric/grass/r.tileset r.tileset] generates a list of tiles and sizes in a source projection that cover the region in the current database with appropriate resolution. The size of individual tiles can be constrained. Only tiles intersecting the current region are returned. These tilings are appropriate for requesting data from another projection to meet the specifications of the current region. For example, it could be used to generate tile requests to a latitude / longitude WMS server like this &amp;lt;code&amp;gt;r.tileset -w sourceproj=&amp;quot;+init=epsg:4326&amp;quot;&amp;lt;/code&amp;gt;.&amp;lt;BR&amp;gt;'''Author:''' Cedric Shock&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [ftp://gsca.nrcan.gc.ca/outgoing/Patton/Grass/r.csr.tar.gz r.csr] integrates several Grass programs to produce colored, shaded-relief rasters in one step. Accepts single or multiple elevation/bathymetry maps as input; optionally will fill data holidays with 3x3 median filter, multiple times, if required; can apply color maps from a) input raster, b) another raster in MAPSET, or c) from a rules file; otherwise, rainbow colorbar is applied. Output colored, shaded-relief rasters can optionally be exported to tiff format and archived using tar with gzip/bzip2 compression if appropriate flags are given. Shading parameters can be modified, though useful defaults are given. (Right-click and choose 'Save As')&amp;lt;BR&amp;gt;'''Author:''' Eric Patton&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [ftp://gsca.nrcan.gc.ca/outgoing/Patton/Grass/r.fragment.tar.gz r.fragment] fragments a raster into a user-defined set of smaller tiles according to an input number of rows and columns. Optionally, a null value threshold can be set to filter out candidate tiles that would have a large percentage of null cells. (Right-click and choose 'Save As')&amp;lt;BR&amp;gt;'''Author:''' Eric Patton&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://david.p.finlayson.googlepages.com/r.eucdist r.eucdist] creates a raster map estimating the euclidean distance from known cells.&amp;lt;BR&amp;gt;'''Author:''' David Finlayson&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://david.p.finlayson.googlepages.com/r.smoothpatch r.smoothpatch] creates a composite of two rasters using a distance-weighted average across the transition to smooth the edges.&amp;lt;BR&amp;gt;'''Author:''' David Finlayson&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.faunalia.it/download/r_li/ r.li] is meant to be a more flexible and faster replacement of the old r.le. Currently under development.&amp;lt;BR&amp;gt;'''Authors:''' Claudio Porta, Davide Spano, Serena Pallecchi, [http://www.faunalia.it Faunalia]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.biol.uni.wroc.pl/sieczka/udostepnione/grass_scripts/r.surf.nnbathy.tar.gz r.surf.nnbathy] interpolates surface from rasterized input using [http://www.marine.csiro.au/~sakov/ nn] natural neighbor intepolation library.&amp;lt;BR&amp;gt;'''Author:''' Maciej Sieczka&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://www.star.ait.ac.th/~yann/6s/i.atcorr.1.3.1a.tar.gz i.atcorr] Atmospheric Correction using Christo Zietsman's implementation of 6s code in C/C++. The Old Page was rescued by Christo recently and copied [http://www.star.ait.ac.th/~yann/6s/ here]. Compiled in CVS but not tested. &amp;lt;BR&amp;gt;'''Author:''' Christo Zietsman&lt;br /&gt;
&lt;br /&gt;
===General add-ons===&lt;br /&gt;
&lt;br /&gt;
* [http://www.gdf-hannover.de/dassau/g.laptop/g.laptop.sh g.laptop.sh] is an interactive shell script to extract raster and vector data from current Location into a new one. Data can be copied or extracted in current or original resolution and region extend. This script was written to extract smaller parts of a GRASS location to be able to present them on a laptop without the necessity to transfer huge data. Maps do not have to be in the same mapset.&amp;lt;BR&amp;gt;'''Author:''' Otto Dassau &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* '''''Readline completion''''' for GRASS commands under the bash shell: [http://www.sorokine.info/grass-complete/ grass-complete] won't clutter the environment but needs to be installed; [http://dcalvelo.free.fr/grass/grass_rlcompleter.sh grass_rlcompleter.sh] needs almost no installation but will pollute the environment. Grass-Complete currently requires Bash version 2.05 for proper install.&amp;lt;BR&amp;gt;'''Author:''' Alexandre Sorokine (grass-complete), Daniel Calvelo (grass_rlcompleter.sh)&lt;br /&gt;
&lt;br /&gt;
=== Display add-ons ===&lt;br /&gt;
&lt;br /&gt;
==== [[IconSymbols]] ====&lt;br /&gt;
* [[IconSymbols|Symbols]] which can be used with ''d.vect, d.graph'', and ''ps.map''.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/d.frame.quarter d.frame.quarter] is a shell script that will split the display into four quadrants using ''d.frame''. Individual frames are named ''uno, dos, tres, cuatro'', and ''full_screen''.&amp;lt;BR&amp;gt;'''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [ftp://gsca.nrcan.gc.ca/outgoing/Patton/Grass/d.hyperlink.tar.gz d.hyperlink] is an interactive shell script that allows the viewing of hyperlinked images from a vector's attribute table in an external image viewer. Queries can be made via SQL statements or interactive mouse-clicking. The attribute table must be pre-populated with a column containing the image to link the vector to; the user also specifies the image folder in the current MAPSET where the images are located. The script currently supports gimp, Eye of Gnome, gthumb, gpdf, and Inkscape image viewers.&amp;lt;BR&amp;gt;'''Author: '''Eric Patton&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/d.stations d.stations] is a shell script that quickly displays vector points (or sites for GRASS 5.4 and below).&amp;lt;BR&amp;gt;'''Author:''' Hamish Bowman &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://bambi.otago.ac.nz/hamish/grass/d.varea d.varea] is a shell script that quickly displays vector areas.&amp;lt;BR&amp;gt;'''Author:''' Hamish Bowman&lt;br /&gt;
&lt;br /&gt;
===Postscript add-ons===&lt;br /&gt;
&lt;br /&gt;
* [http://les-ejk.cz/programs/grass/ps.atlas ps.atlas] is a shell script that makes more maps on current region according to input *.psmap file. General map can be stored as vector file. The resulting *.eps maps can be automatically converted to *.pdf files.&amp;lt;BR&amp;gt;'''Author:''' Jachym Cepicky&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [[ps.map scripts|ps.map samples/templates]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== [[AreaFillPatterns]] ====&lt;br /&gt;
* Hatches for ps.map's vareas&lt;br /&gt;
&lt;br /&gt;
===GRASS and UMN Mapserver===&lt;br /&gt;
&lt;br /&gt;
* [http://www.mail-archive.com/mapserver-users@lists.umn.edu/msg00086.html See interesting posting]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Community]]&lt;br /&gt;
[[Category:Development]]&lt;br /&gt;
[[Category:Documentation]]&lt;br /&gt;
[[Category:Installation]]&lt;/div&gt;</summary>
		<author><name>⚠️EricPatton</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=Compile_and_Install&amp;diff=1865</id>
		<title>Compile and Install</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=Compile_and_Install&amp;diff=1865"/>
		<updated>2006-06-16T11:53:14Z</updated>

		<summary type="html">&lt;p&gt;⚠️EricPatton: /* Generic Compilation and installation procedure */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== How to do compilation and installation of GRASS 6? ==&lt;br /&gt;
&lt;br /&gt;
Here we explain the procedure to compile GRASS from CVS, but it also applies to official GRASS 6 releases.&lt;br /&gt;
&lt;br /&gt;
''For installation of precompiled binary packages, see the main [[Installation Guide]].''&lt;br /&gt;
&lt;br /&gt;
For detailed information on compilation, please see the [http://grass.itc.it/grass61/source/INSTALL INSTALL] file in the source code.&lt;br /&gt;
&lt;br /&gt;
=== Prerequisites ===&lt;br /&gt;
&lt;br /&gt;
GRASS needs at least two extra libraries:&lt;br /&gt;
&lt;br /&gt;
* [http://proj.maptools.org PROJ4] for management of projections&lt;br /&gt;
* [http://www.gdal.org GDAL/OGR] for reading and writing various GIS data formats (interoperability)&lt;br /&gt;
&lt;br /&gt;
You have to install these two libraries '''first'''.&lt;br /&gt;
&lt;br /&gt;
Other libraries needed to run GRASS are listed here: [http://grass.itc.it/grass61/source/REQUIREMENTS.html REQUIREMENTS]. To compile, you will also need the respective &amp;quot;devel&amp;quot; packages.&lt;br /&gt;
&lt;br /&gt;
=== Generic Compilation and installation procedure ===&lt;br /&gt;
&lt;br /&gt;
* checkout the grass6 module from cvs (read http://grass.itc.it/faq/cvs_howto.html grass CVS howto instructions)&lt;br /&gt;
* It is wise that compilation processes are carried out as a normal user: If you want to get the source code in a place where  you do not have write permissions (e.g. in /usr/local/src/cvs) just follow this:&lt;br /&gt;
      cd /usr/local/src/cvs &lt;br /&gt;
      su -c 'mkdir grass6'&lt;br /&gt;
      su -c 'chown yourlogin:yourgroup grass6'&lt;br /&gt;
* do a checkout (co) of the repository&lt;br /&gt;
      cvs -z3 co grass6&lt;br /&gt;
* in the grass6 directory, you will find the precious INSTALL file, open it with your favourite pager/editor and read it carefully!&lt;br /&gt;
* run configure with parameters to adapt the compile process to your own system. To see what options can be passed to it, run configure --help. The minimum set of configure parameters is  (refers to GRASS 6 from CVS, not to 6.x release):&lt;br /&gt;
      ./configure ### It may (!) look like this:&lt;br /&gt;
      ./configure \&lt;br /&gt;
          --with-cxx \&lt;br /&gt;
          --with-sqlite \&lt;br /&gt;
          --with-postgres-libs=/usr/include/pgsql/libpq \&lt;br /&gt;
          --with-postgres-includes=/usr/include/pgsql \&lt;br /&gt;
          --with-freetype \&lt;br /&gt;
          --with-freetype-includes=/usr/include/freetype2 \&lt;br /&gt;
          --with-motif \&lt;br /&gt;
          --with-glw \&lt;br /&gt;
          --with-proj-share=/usr/share/proj&lt;br /&gt;
&lt;br /&gt;
You may have to explicitly state the path for certain packages (i.e., gdal). The Unix 'locate' command will come in handy for finding the path of the package you need (you may have to run locate as root ex: sudo locate gdal-config).&lt;br /&gt;
&lt;br /&gt;
Please note that the paths mentioned may widely vary due to the distribution used. At the end of configuration process you should get report not much different from this:&lt;br /&gt;
&lt;br /&gt;
GRASS is now configured for:  i686-pc-linux-gnu&lt;br /&gt;
 &lt;br /&gt;
 Source directory:            /usr/src/grass6&lt;br /&gt;
 Build directory:             /usr/src/grass6&lt;br /&gt;
 Installation directory:      /usr/local/grass-6.1.cvs&lt;br /&gt;
 Startup script in directory: ${exec_prefix}/bin&lt;br /&gt;
 C compiler:                  gcc -g -O2 &lt;br /&gt;
 C++ compiler:                c++ -g -O2&lt;br /&gt;
 FORTRAN compiler:            &lt;br /&gt;
 Building shared libraries:   yes&lt;br /&gt;
 64bit support:               no&lt;br /&gt;
 &lt;br /&gt;
  NVIZ:                       yes&lt;br /&gt;
 &lt;br /&gt;
  BLAS support:               no&lt;br /&gt;
  C++ support:                yes&lt;br /&gt;
  DWG support:                no&lt;br /&gt;
  FFMPEG support:             no&lt;br /&gt;
  FFTW support:               yes&lt;br /&gt;
  FreeType support:           yes&lt;br /&gt;
  GDAL support:               yes&lt;br /&gt;
  GLw support:                no&lt;br /&gt;
  JPEG support:               yes&lt;br /&gt;
  LAPACK support:             no&lt;br /&gt;
  Large File Support (LFS):   no&lt;br /&gt;
  Motif support:              no&lt;br /&gt;
  MySQL support:              no&lt;br /&gt;
  NLS support:                no&lt;br /&gt;
  ODBC support:               no&lt;br /&gt;
  OGR support:                yes&lt;br /&gt;
  OpenGL(R) support:          yes&lt;br /&gt;
  PNG support:                yes&lt;br /&gt;
  PostgreSQL support:         yes&lt;br /&gt;
  Readline support:           no&lt;br /&gt;
  SQLite support:             no&lt;br /&gt;
  Tcl/Tk support:             yes&lt;br /&gt;
  TIFF support:               yes&lt;br /&gt;
  X11 support:                yes&lt;br /&gt;
  &lt;br /&gt;
* Let's compile it (takes a little while...)!&lt;br /&gt;
      make&lt;br /&gt;
* At the end, you should get report not much different from this:&lt;br /&gt;
 ----------------------------------------------------------------------&lt;br /&gt;
 Following modules are missing the 'description.html' file in src code:&lt;br /&gt;
 ----------------------------------------------------------------------&lt;br /&gt;
 GRASS GIS compilation log&lt;br /&gt;
 -------------------------&lt;br /&gt;
 Started compilation: Ne kvě 28 13:18:43 CEST 2006&lt;br /&gt;
 --&lt;br /&gt;
 Errors in:&lt;br /&gt;
 --&lt;br /&gt;
 Finished compilation: Ne kvě 28 13:43:40 CEST 2006&lt;br /&gt;
 (In case of errors please change into the directory with error and run 'make')&lt;br /&gt;
&lt;br /&gt;
* If there is any error, change directory to directory with error and run &amp;quot;make&amp;quot; again. Report occuring bug to grass mailing list&lt;br /&gt;
* Once the installation process is finished, you're ready to install GRASS system wide.&lt;br /&gt;
      su -c 'make install'&lt;br /&gt;
* enjoy GRASS: &lt;br /&gt;
      grass61&lt;br /&gt;
&lt;br /&gt;
=== What else? ===&lt;br /&gt;
&lt;br /&gt;
If you want to use [http://www.qgis.org QGIS], then also compile the GRASS-GDAL/OGR plugin. This is also useful to access your GRASS-data&lt;br /&gt;
from other application using GDAL/OGR like [http://thuban.intevation.de thuban].&lt;br /&gt;
* [[Compile and install GRASS and QGIS with GDAL/OGR Plugin]] (enables QGIS to read GRASS data directly)&lt;br /&gt;
&lt;br /&gt;
=== Platform Specific Notes ===&lt;br /&gt;
==== Ubuntu 6.06 ====&lt;br /&gt;
&lt;br /&gt;
[http://david.p.finlayson.googlepages.com/makegrass.sh makegrass.sh] is script designed to automate most of the download, configuration and compilation of GRASS 6.1.&lt;/div&gt;</summary>
		<author><name>⚠️EricPatton</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=Tips_for_Arc_users&amp;diff=1833</id>
		<title>Tips for Arc users</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=Tips_for_Arc_users&amp;diff=1833"/>
		<updated>2006-06-15T18:12:21Z</updated>

		<summary type="html">&lt;p&gt;⚠️EricPatton: /* Working with your ArcGIS data */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Working with your ArcGIS data ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Importing ArcGIS Data''' &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Grass provides convertors for importing ESRI shapefiles, e00 files, and many other GIS formats as well. The key Grass programs for importing vector formats are [http://grass.itc.it/grass61/manuals/html61_user/v.in.ogr.html v.in.ogr] (for ESRI shapefiles, MapInfo files, SDTS, TIGER, etc.) and [http://grass.itc.it/grass61/manuals/html61_user/v.in.e00.html v.in.e00] for e00 format.&lt;br /&gt;
&lt;br /&gt;
Example 1: Import of Shapefiles into Grass&lt;br /&gt;
&lt;br /&gt;
v.in.ogr dsn=/home/data/navigation_files output=Tracklines layer=Ship_Tracklines&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This is the syntax for v.in.ogr in its most basic form. The ''dsn'' parameter corresponds to the directory path of the vector you are trying to import. You must enter a full path, not a relative path. The ''output'' paramter, aptly enough, is the name of your output Grass vector. The ''layer'' parameter is the name of the input vector, be it shapefile, MapInfo file, or what have you.&lt;/div&gt;</summary>
		<author><name>⚠️EricPatton</name></author>
	</entry>
</feed>