<?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%8FCavallini</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%8FCavallini"/>
	<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/wiki/Special:Contributions/%E2%9A%A0%EF%B8%8FCavallini"/>
	<updated>2026-05-26T14:49:21Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.41.0</generator>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=GRASS_and_MapServer&amp;diff=4193</id>
		<title>GRASS and MapServer</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=GRASS_and_MapServer&amp;diff=4193"/>
		<updated>2007-05-18T12:43:10Z</updated>

		<summary type="html">&lt;p&gt;⚠️Cavallini: /* Vector Maps */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==GRASS maps from mapfiles==&lt;br /&gt;
&lt;br /&gt;
MapServer needs a mapfile containing the information, how to create the maps. Examples of these can be found, so here you'll find GRASS specific information.&lt;br /&gt;
&lt;br /&gt;
==Raster Maps==&lt;br /&gt;
&lt;br /&gt;
A shor example of a layer definition to access a GRASS raster:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
LAYER&lt;br /&gt;
  NAME &amp;quot;Example&amp;quot;&lt;br /&gt;
  TYPE RASTER&lt;br /&gt;
  STATUS ON&lt;br /&gt;
  DATA &amp;quot;/path/to/grassdb/location/mapset/cellhd/example&amp;quot;&lt;br /&gt;
  CLASS NAME &amp;quot;Example&amp;quot; # You need to have a class definition in the layer&lt;br /&gt;
  END&lt;br /&gt;
END&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Notes:&lt;br /&gt;
&lt;br /&gt;
* The rasters are limited to values form 0 to 255, the values over this are interpreted as 255. Rescale (&amp;lt;code&amp;gt;r.rescale&amp;lt;/code&amp;gt;) your maps when necessary.&lt;br /&gt;
* You really need to have a CLASS in your layer, otherwise no data will be shown. An empty class is quite fine to show the whole map.&lt;br /&gt;
&lt;br /&gt;
==Vector Maps==&lt;br /&gt;
&lt;br /&gt;
A short example of a layer definition to access a GRASS vector:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
LAYER&lt;br /&gt;
  NAME &amp;quot;Example&amp;quot;&lt;br /&gt;
  TYPE LINE&lt;br /&gt;
  STATUS ON&lt;br /&gt;
  CONNECTIONTYPE OGR&lt;br /&gt;
  CONNECTION &amp;quot;/path/to/grassdb/mapset/location/vector/example/head&amp;quot;&lt;br /&gt;
  DATA &amp;quot;1&amp;quot; # Layer number&lt;br /&gt;
  CLASS # You need to have a class definition; otherwise nothing is shown on the map&lt;br /&gt;
    NAME &amp;quot;Example&amp;quot;&lt;br /&gt;
    COLOR 155 155 0&lt;br /&gt;
  END&lt;br /&gt;
END&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Notes:&lt;br /&gt;
&lt;br /&gt;
* You need to have GDAL with OGR and GRASS support for this to work. Note, that in this [http://grass.itc.it/start.html example] the maps are first exported to shapefiles. This is no longer necessary, as the maps can be accessed directly with OGR.&lt;br /&gt;
* Usually GRASS layers have no names and the layer number is used in DATA. However, it is possible that they do have names. This can happen for example when importing files with v.in.dxf, as the module keeps the dxf-file layer names and stores them into the GRASS vector. The layer names, if such there are, can be found in &amp;lt;tt&amp;gt;/path/to/grassdb/mapset/location/vector/vectorname/dbln&amp;lt;/tt&amp;gt;, or with &amp;lt;code&amp;gt;ogrinfo -ro /path/to/grassdb/mapset/location/vector/vectorname/dbln&amp;lt;/code&amp;gt;. Why this is so important is because if there are layer names defined, these layers cannot be accessed through the layer number with OGR. They ''have'' to be accessed through the layer name.&lt;br /&gt;
&lt;br /&gt;
==Examples and useful links==&lt;br /&gt;
&lt;br /&gt;
* [http://grass.itc.it/start.html Example] of GRASS with MapServer.&lt;br /&gt;
* [http://mapserver.gis.umn.edu UMN Mapserver homepage]&lt;/div&gt;</summary>
		<author><name>⚠️Cavallini</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=GRASS_SoC_Ideas_2007&amp;diff=3911</id>
		<title>GRASS SoC Ideas 2007</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=GRASS_SoC_Ideas_2007&amp;diff=3911"/>
		<updated>2007-03-13T06:48:17Z</updated>

		<summary type="html">&lt;p&gt;⚠️Cavallini: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;GRASS related ideas for the [http://wiki.osgeo.org/index.php/Google_Summer_of_Code Google Summer of Code] 2007:&lt;br /&gt;
&lt;br /&gt;
==Timeline / Requirements for GRASS project==&lt;br /&gt;
&lt;br /&gt;
* Monday March 12th Deadline for OSGeo submission as an organization&lt;br /&gt;
* We must list of potential mentors for GRASS work&lt;br /&gt;
&lt;br /&gt;
==Improved Line of Sight Analysis in GRASS==&lt;br /&gt;
&lt;br /&gt;
Line of sight determination is a very important analysis to have available in a GIS. The GRASS module that currently performs this function, r.los, has a number of limitations, including being very slow to run and unable to handle large high-resolution datasets. The task: write a new r.los module based on the paper 'A Fast Algorithm for Approximate Viewshed Computation' published in 'Photogrammetric Engineering &amp;amp; Remote Sensing' July 2003:&lt;br /&gt;
http://www.asprs.org/publications/pers/2003journal/july/2003_jul_767-774.pdf&lt;br /&gt;
Incorporate features of r.cva (http://www.ucl.ac.uk/~tcrnmar/GIS/r.cva.html), which cannot currently be incorporated in GRASS for licensing reasons, and extend with other functionality as appropriate.&lt;br /&gt;
&lt;br /&gt;
The work will involve familiarisation with the GRASS raster library for reading and writing maps, the GRASS vector library for reading analysis location sites. It is expected that the GRASS directed graph library will also be useful for implementing many features of the algorithm (specifically, determining the crossing points and distances between the cells).&lt;br /&gt;
&lt;br /&gt;
Some hints on what's involved in GRASS programming are available here: http://freegis.org/cgi-bin/viewcvs.cgi/*checkout*/grass6/SUBMITTING&lt;br /&gt;
&lt;br /&gt;
; Potential Mentor: Paul Kelly&lt;br /&gt;
&lt;br /&gt;
==A new module which would do line generalization with one of these algorithms==&lt;br /&gt;
* Douglas-Peuker algorithm&lt;br /&gt;
* Reumann-Witkam algorithm&lt;br /&gt;
* Lang simplification algorithm&lt;br /&gt;
* Cromley's Hierarchical algorithm&lt;br /&gt;
* Boyle's forward-looking smoothing algorithm&lt;br /&gt;
The most famous of these is the Douglas-Peuker algorithm.&lt;br /&gt;
&lt;br /&gt;
This work will involve the use of the vector library to read the vector maps to be generalized and writing the new as a new vector map.&lt;br /&gt;
&lt;br /&gt;
; Potential Mentor: Wolf Bergenheim&lt;br /&gt;
&lt;br /&gt;
==A new simulation/optimization algorithm for least cost path==&lt;br /&gt;
*A new module which would calculate the shortest path from a starting point to a destination. It would use dijkstra's algorithm do find the shortest path in a weighted network. In other words it would treat a cost surface (generated by r.cost) as a network and then calculate the shortest path. This differs from r.drain in that r.drain is a local function, greedy algorithm, whereas this a focal algorithm, that is it takes not only it's immediate location into account, and finds a global shortest path.&lt;br /&gt;
&lt;br /&gt;
This will involve reading and writing raster maps.&lt;br /&gt;
&lt;br /&gt;
; Potential Mentor: Wolf Bergenheim&lt;br /&gt;
&lt;br /&gt;
==Shortest path in free (vector) space (avoiding obstacles)==&lt;br /&gt;
This module would take as input a vector map with polygons. These polygons would be treated as obstacles. It would also take a starting and end point as input. It would output a vector map containing the shortest path in free space (this assumes an equal cost surface). There are 2 different ways to do this calculation:&lt;br /&gt;
* by building a &amp;quot;road network&amp;quot; with the help of building trapezoids from each corner point of the obstacles.&lt;br /&gt;
OR PREFERABLY&lt;br /&gt;
* by building a visibility graph and converting it into a weighted network and running Dijkstra's shortest path on it.&lt;br /&gt;
&lt;br /&gt;
This project will be vector and will also involve the directed graph library when calculating the shortest path.&lt;br /&gt;
&lt;br /&gt;
; Potential Mentor: Wolf Bergenheim&lt;br /&gt;
&lt;br /&gt;
==Further work on r.li==&lt;br /&gt;
The r.li module recently entered official GRASS code base. It is meant as a faster and more manageable replacement for r.le for the analysis of landscape ecology and composition. To replace it fully, we need:&lt;br /&gt;
* implementation of other indices&lt;br /&gt;
* remove the dependency on TclTk, so as to prepare it for the coming python GUI&lt;br /&gt;
* further testing and bugfixing&lt;br /&gt;
&lt;br /&gt;
; Potential Mentor: Paolo Cavallini&lt;br /&gt;
&lt;br /&gt;
== Other ideas ==&lt;br /&gt;
* better implement PostGIS support (I do not think this is very useful --[[User:Cavallini|Cavallini]] 07:48, 13 March 2007 (CET))&lt;br /&gt;
* integrate GDAL as part of GRASS raster library: [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; proposal] (is this somewhat similar to a &amp;quot;r.external&amp;quot; equivalent of v.external? --[[User:Cavallini|Cavallini]] 07:48, 13 March 2007 (CET))&lt;br /&gt;
* integrate OGR as part of GRASS vector library&lt;br /&gt;
:''please expand, I don't understand what you mean'' -HB Me neither --[[User:Cavallini|Cavallini]] 07:48, 13 March 2007 (CET)&lt;br /&gt;
&lt;br /&gt;
== Potential Mentors ==&lt;br /&gt;
&lt;br /&gt;
* Paul Kelly (for line of sight project)&lt;br /&gt;
* Wolf Bergenheim (for the line generalization / least cost projects)&lt;br /&gt;
* Paolo Cavallini (for r.li project)&lt;br /&gt;
&lt;br /&gt;
== See also ==&lt;br /&gt;
&lt;br /&gt;
* [http://wiki.osgeo.org/index.php/Google_Summer_of_Code OSGeo involvement Google Summer of Code]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Development]]&lt;/div&gt;</summary>
		<author><name>⚠️Cavallini</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=GRASS_SoC_Ideas_2007&amp;diff=3910</id>
		<title>GRASS SoC Ideas 2007</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=GRASS_SoC_Ideas_2007&amp;diff=3910"/>
		<updated>2007-03-13T06:37:14Z</updated>

		<summary type="html">&lt;p&gt;⚠️Cavallini: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;GRASS related ideas for the [http://wiki.osgeo.org/index.php/Google_Summer_of_Code Google Summer of Code] 2007:&lt;br /&gt;
&lt;br /&gt;
==Timeline / Requirements for GRASS project==&lt;br /&gt;
&lt;br /&gt;
* Monday March 12th Deadline for OSGeo submission as an organization&lt;br /&gt;
* We must list of potential mentors for GRASS work&lt;br /&gt;
&lt;br /&gt;
==Improved Line of Sight Analysis in GRASS==&lt;br /&gt;
&lt;br /&gt;
Line of sight determination is a very important analysis to have available in a GIS. The GRASS module that currently performs this function, r.los, has a number of limitations, including being very slow to run and unable to handle large high-resolution datasets. The task: write a new r.los module based on the paper 'A Fast Algorithm for Approximate Viewshed Computation' published in 'Photogrammetric Engineering &amp;amp; Remote Sensing' July 2003:&lt;br /&gt;
http://www.asprs.org/publications/pers/2003journal/july/2003_jul_767-774.pdf&lt;br /&gt;
Incorporate features of r.cva (http://www.ucl.ac.uk/~tcrnmar/GIS/r.cva.html), which cannot currently be incorporated in GRASS for licensing reasons, and extend with other functionality as appropriate.&lt;br /&gt;
&lt;br /&gt;
The work will involve familiarisation with the GRASS raster library for reading and writing maps, the GRASS vector library for reading analysis location sites. It is expected that the GRASS directed graph library will also be useful for implementing many features of the algorithm (specifically, determining the crossing points and distances between the cells).&lt;br /&gt;
&lt;br /&gt;
Some hints on what's involved in GRASS programming are available here: http://freegis.org/cgi-bin/viewcvs.cgi/*checkout*/grass6/SUBMITTING&lt;br /&gt;
&lt;br /&gt;
; Potential Mentor: Paul Kelly&lt;br /&gt;
&lt;br /&gt;
==A new module which would do line generalization with one of these algorithms==&lt;br /&gt;
* Douglas-Peuker algorithm&lt;br /&gt;
* Reumann-Witkam algorithm&lt;br /&gt;
* Lang simplification algorithm&lt;br /&gt;
* Cromley's Hierarchical algorithm&lt;br /&gt;
* Boyle's forward-looking smoothing algorithm&lt;br /&gt;
The most famous of these is the Douglas-Peuker algorithm.&lt;br /&gt;
&lt;br /&gt;
This work will involve the use of the vector library to read the vector maps to be generalized and writing the new as a new vector map.&lt;br /&gt;
&lt;br /&gt;
; Potential Mentor: Wolf Bergenheim&lt;br /&gt;
&lt;br /&gt;
==A new simulation/optimization algorithm for least cost path==&lt;br /&gt;
*A new module which would calculate the shortest path from a starting point to a destination. It would use dijkstra's algorithm do find the shortest path in a weighted network. In other words it would treat a cost surface (generated by r.cost) as a network and then calculate the shortest path. This differs from r.drain in that r.drain is a local function, greedy algorithm, whereas this a focal algorithm, that is it takes not only it's immediate location into account, and finds a global shortest path.&lt;br /&gt;
&lt;br /&gt;
This will involve reading and writing raster maps.&lt;br /&gt;
&lt;br /&gt;
; Potential Mentor: Wolf Bergenheim&lt;br /&gt;
&lt;br /&gt;
==Shortest path in free (vector) space (avoiding obstacles)==&lt;br /&gt;
This module would take as input a vector map with polygons. These polygons would be treated as obstacles. It would also take a starting and end point as input. It would output a vector map containing the shortest path in free space (this assumes an equal cost surface). There are 2 different ways to do this calculation:&lt;br /&gt;
* by building a &amp;quot;road network&amp;quot; with the help of building trapezoids from each corner point of the obstacles.&lt;br /&gt;
OR PREFERABLY&lt;br /&gt;
* by building a visibility graph and converting it into a weighted network and running Dijkstra's shortest path on it.&lt;br /&gt;
&lt;br /&gt;
This project will be vector and will also involve the directed graph library when calculating the shortest path.&lt;br /&gt;
&lt;br /&gt;
; Potential Mentor: Wolf Bergenheim&lt;br /&gt;
&lt;br /&gt;
== Other ideas ==&lt;br /&gt;
* carry on the work on r.li --[[User:Cavallini|Cavallini]] 14:37, 27 February 2007 (CET)&lt;br /&gt;
* better implement PostGIS support&lt;br /&gt;
* integrate GDAL as part of GRASS raster library: [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; proposal]&lt;br /&gt;
* integrate OGR as part of GRASS vector library&lt;br /&gt;
:''please expand, I don't understand what you mean'' -HB&lt;br /&gt;
&lt;br /&gt;
== Potential Mentors ==&lt;br /&gt;
&lt;br /&gt;
* Paul Kelly (for line of sight project)&lt;br /&gt;
* Wolf Bergenheim (for the line generalization / least cost projects)&lt;br /&gt;
* Paolo Cavallini (for r.li project)&lt;br /&gt;
&lt;br /&gt;
== See also ==&lt;br /&gt;
&lt;br /&gt;
* [http://wiki.osgeo.org/index.php/Google_Summer_of_Code OSGeo involvement Google Summer of Code]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Development]]&lt;/div&gt;</summary>
		<author><name>⚠️Cavallini</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=GRASS_SoC_Ideas_2007&amp;diff=3821</id>
		<title>GRASS SoC Ideas 2007</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=GRASS_SoC_Ideas_2007&amp;diff=3821"/>
		<updated>2007-02-27T13:37:34Z</updated>

		<summary type="html">&lt;p&gt;⚠️Cavallini: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;GRASS related ideas for the [http://wiki.osgeo.org/index.php/Google_Summer_of_Code Google Summer of Code] 2007:&lt;br /&gt;
&lt;br /&gt;
[[Category:Development]]&lt;br /&gt;
* carry on the work on r.li --[[User:Cavallini|Cavallini]] 14:37, 27 February 2007 (CET)&lt;/div&gt;</summary>
		<author><name>⚠️Cavallini</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=GRASS_SoC_Ideas_2007&amp;diff=3820</id>
		<title>GRASS SoC Ideas 2007</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=GRASS_SoC_Ideas_2007&amp;diff=3820"/>
		<updated>2007-02-27T13:37:07Z</updated>

		<summary type="html">&lt;p&gt;⚠️Cavallini: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;GRASS related ideas for the [http://wiki.osgeo.org/index.php/Google_Summer_of_Code Google Summer of Code] 2007:&lt;br /&gt;
&lt;br /&gt;
[[Category:Development]]&lt;br /&gt;
 * carry on the work on r.li --[[User:Cavallini|Cavallini]] 14:37, 27 February 2007 (CET)&lt;/div&gt;</summary>
		<author><name>⚠️Cavallini</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=AddOns&amp;diff=3011</id>
		<title>AddOns</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=AddOns&amp;diff=3011"/>
		<updated>2006-11-19T07:04:25Z</updated>

		<summary type="html">&lt;p&gt;⚠️Cavallini: /* 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;
'''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>⚠️Cavallini</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=AddOns&amp;diff=2965</id>
		<title>AddOns</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=AddOns&amp;diff=2965"/>
		<updated>2006-11-06T15:50:57Z</updated>

		<summary type="html">&lt;p&gt;⚠️Cavallini: /* 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.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 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. Accepts DCELL only (for now). &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. &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;
&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>⚠️Cavallini</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=GRASS_and_MapServer&amp;diff=2963</id>
		<title>GRASS and MapServer</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=GRASS_and_MapServer&amp;diff=2963"/>
		<updated>2006-11-06T07:03:48Z</updated>

		<summary type="html">&lt;p&gt;⚠️Cavallini: /* Vector Maps */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==GRASS maps from mapfiles==&lt;br /&gt;
&lt;br /&gt;
MapServer needs a mapfile containing the information, how to create the maps. Examples of these can be found, so here you'll find GRASS specific information.&lt;br /&gt;
&lt;br /&gt;
==Raster Maps==&lt;br /&gt;
&lt;br /&gt;
A shor example of a layer definition to access a GRASS raster:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
LAYER&lt;br /&gt;
  NAME &amp;quot;Example&amp;quot;&lt;br /&gt;
  TYPE RASTER&lt;br /&gt;
  STATUS ON&lt;br /&gt;
  DATA &amp;quot;/path/to/grassdb/location/mapset/cellhd/example&amp;quot;&lt;br /&gt;
  CLASS NAME &amp;quot;Example&amp;quot; # You need to have a class definition in the layer&lt;br /&gt;
  END&lt;br /&gt;
END&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Notes:&lt;br /&gt;
&lt;br /&gt;
* The rasters are limited to values form 0 to 255, the values over this are interpreted as 255. Rescale (&amp;lt;code&amp;gt;r.rescale&amp;lt;/code&amp;gt;) your maps when necessary.&lt;br /&gt;
* You really need to have a CLASS in your layer, otherwise no data will be shown. An empty class is quite fine to show the whole map.&lt;br /&gt;
&lt;br /&gt;
==Vector Maps==&lt;br /&gt;
&lt;br /&gt;
A short example of a layer definition to access a GRASS vector:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
LAYER&lt;br /&gt;
  NAME &amp;quot;Example&amp;quot;&lt;br /&gt;
  TYPE LINE&lt;br /&gt;
  STATUS ON&lt;br /&gt;
  CONNECTIONTYPE OGR&lt;br /&gt;
  CONNECTION &amp;quot;/path/to/grassdb/mapset/location/vector/example/head&amp;quot;&lt;br /&gt;
  DATA &amp;quot;1&amp;quot; # Layer number&lt;br /&gt;
  CLASS # You need to have a class definition; otherwise nothing is shown on the map&lt;br /&gt;
    NAME &amp;quot;Example&amp;quot;&lt;br /&gt;
    COLOR 155 155 0&lt;br /&gt;
  END&lt;br /&gt;
END&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Notes:&lt;br /&gt;
&lt;br /&gt;
* You need to have GDAL with OGR and GRASS support for this to work. Note, that in this [http://grass.itc.it/start.html example] the maps are first exported to shapefiles. This is no longer necessary, as the maps can be accessed directly with OGR.&lt;br /&gt;
* Usually GRASS layers have no names and the layer number is used in DATA. However, it is possible that they do have names. This can happen for example when importing files with v.in.dxf, as the module keeps the dxf-file layer names and stores them into the GRASS vector. The layer names, if such there are, can be found in &amp;lt;tt&amp;gt;/path/to/grassdb/mapset/location/vector/vectorname/dbln&amp;lt;/tt&amp;gt;, or with &amp;lt;code&amp;gt;ogrinfo -ro /path/to/grassdb/mapset/location/vector/vectorname/dbln&amp;lt;/code&amp;gt;. Why this is so important is because if there are layer names defined, these layers cannot be accessed through the layer number with OGR. They ''have'' to be accessed through the layer name.&lt;br /&gt;
* we have trouble using data associated with vectors: http://mapserver.gis.umn.edu/bugs/show_bug.cgi?id=1839 ; if someone succeed in this please let us know (--[[User:Cavallini|Cavallini]] 08:03, 6 November 2006 (CET) cavallini@faunalia.it)&lt;br /&gt;
&lt;br /&gt;
==Examples and useful links==&lt;br /&gt;
&lt;br /&gt;
* [http://grass.itc.it/start.html Example] of GRASS with MapServer.&lt;br /&gt;
* [http://mapserver.gis.umn.edu UMN Mapserver homepage]&lt;/div&gt;</summary>
		<author><name>⚠️Cavallini</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=AddOns&amp;diff=2196</id>
		<title>AddOns</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=AddOns&amp;diff=2196"/>
		<updated>2006-07-27T16:34:06Z</updated>

		<summary type="html">&lt;p&gt;⚠️Cavallini: /* 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 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://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.&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://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;
&lt;br /&gt;
* [http://k153-85.fsv.cvut.cz/cgi-bin/viewcvs.cgi/grass6/vector/v.in.gama/ v.in.gama] convert [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.&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 (help welcome).&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;
[http://www.faunalia.com/cgi-bin/mailman/listinfo/r.li Mailing list]&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://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;
=== Imagery add-ons ===&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;
&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>⚠️Cavallini</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=AddOns&amp;diff=2195</id>
		<title>AddOns</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=AddOns&amp;diff=2195"/>
		<updated>2006-07-27T16:26:03Z</updated>

		<summary type="html">&lt;p&gt;⚠️Cavallini: &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 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://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.&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://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;
&lt;br /&gt;
* [http://k153-85.fsv.cvut.cz/cgi-bin/viewcvs.cgi/grass6/vector/v.in.gama/ v.in.gama] convert [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.&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]. A wiki page [http://www.faunalia.com/mediawiki/index.php/R_li here]&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;
=== Imagery add-ons ===&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;
&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>⚠️Cavallini</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=AddOns&amp;diff=1812</id>
		<title>AddOns</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=AddOns&amp;diff=1812"/>
		<updated>2006-06-15T11:09:08Z</updated>

		<summary type="html">&lt;p&gt;⚠️Cavallini: /* 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;
&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/vector/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/vector/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;
===Raster add-ons===&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;'''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.&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.&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 eucledian 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;
===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.&amp;lt;BR&amp;gt;'''Author:''' Alexandre Sorokine (grass-complete), Daniel Calvelo (grass_rlcompleter.sh)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Display add-ons ===&lt;br /&gt;
&lt;br /&gt;
==== [[IconSymbols]] ====&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* '''''d.out.gpsdrive''''' - moved into GRASS CVS.&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;
&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;
===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 samples/templates: are people willing to include these here? [[ps.map scripts]]&lt;br /&gt;
&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;/div&gt;</summary>
		<author><name>⚠️Cavallini</name></author>
	</entry>
	<entry>
		<id>https://grasswiki.osgeo.org/w/index.php?title=AddOns&amp;diff=1811</id>
		<title>AddOns</title>
		<link rel="alternate" type="text/html" href="https://grasswiki.osgeo.org/w/index.php?title=AddOns&amp;diff=1811"/>
		<updated>2006-06-15T11:08:35Z</updated>

		<summary type="html">&lt;p&gt;⚠️Cavallini: &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;
&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/vector/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/vector/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;
===Raster add-ons===&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;'''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.&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.&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 eucledian 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;
* [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;
===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.&amp;lt;BR&amp;gt;'''Author:''' Alexandre Sorokine (grass-complete), Daniel Calvelo (grass_rlcompleter.sh)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Display add-ons ===&lt;br /&gt;
&lt;br /&gt;
==== [[IconSymbols]] ====&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* '''''d.out.gpsdrive''''' - moved into GRASS CVS.&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;
&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;
===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 samples/templates: are people willing to include these here? [[ps.map scripts]]&lt;br /&gt;
&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;/div&gt;</summary>
		<author><name>⚠️Cavallini</name></author>
	</entry>
</feed>