- 1 Geodesy (Projections and Datums)
- 2 How GRASS deals with geodetics
- 3 GIS Data types
- 4 Conversions between data types
- 5 How a GRASS project is organized
- 6 How the Open Source software development model works
- 7 Raster GIS Analysis
Geodesy (Projections and Datums)
- An introduction to Geodesy from NOAA: http://oceanservice.noaa.gov/education/kits/geodesy/welcome.html
- Wikipedia's Geodesy entry: http://en.wikipedia.org/wiki/Geodesy
- Wikipedia's GIS entry: http://en.wikipedia.org/wiki/GIS
- NGA Geodesy and Geophysics publications: http://earth-info.nima.mil/GandG/pubs.html
- An introduction to geodetic datums by Peter Dana: http://www.colorado.edu/geography/gcraft/notes/datum/datum.html
- Map projection concepts by Carlos Furuti: http://www.progonos.com/furuti/MapProj/CartIndex/cartIndex.html
How GRASS deals with geodetics
- modified use of the PROJ.4 library: http://proj.maptools.org
G60:g.proj help page (GRASS 6.0)
G60:g.setproj help page (GRASS 6.0)
G60:r.proj help page (GRASS 6.0)
G60:v.proj help page (GRASS 6.0)
GIS Data types
Data which occurs in a regularly spaced grid. e.g. a satellite image or digital terrain map.
Region settings determine the spatial extent and resolution of the grid. (see G60:g.region)
3D Raster Data
A stack of 2D raster maps.
Data which occurs as a series of coordinates. e.g. a GPS position or coastline map. May be a point, line, area, etc in either 2D or 3D space.
Generally independent of region settings.
Pixelated photographic or satellite images, often imported from a
[GeoTIFF] or PNG image file.
As far as the GIS is concerned this is just another raster map, but there are several modules specially tailored for rectification and processing common imagery types. e.g. ortho-photos or multi-channel LANDSAT data.
Old versions of GRASS (5 and earlier) treated point data separate to line and polygon data. GRASS 6 classes all vector data features the same. Convert old sites file data into GRASS 6 vector format with the G60:v.in.sites or G60:v.in.sites.all modules.
Conversions between data types
The following table is intended to catalog transformations from one type of data to another:
|From \ To||Raster||3D Raster||Vector||Imagery||Site|
|Raster||r.mapcalc||v.sample, r.volume, r.to.vect||X|
|Vector||v.to.rast, v.surf.rst, v.surf.idw||v.vol.rst, v.vol.idw||X|
How a GRASS project is organized
GRASS data is stored in a three level structure, the database, location and mapset. These can be found in a series of nested directories on the user's computer. All three must exist and are set at GRASS startup time.
The directory in which all GIS data is to be stored.
An area, project ID, or other grouping of mapsets, all with the same projection settings.
e.g. world_lat_lon, utm_zone_59, or west_coast
Conceptually may either be split up to refer to different users (each has own mapset to work in), subarea (shire), etc. as needed. There is always a PERMANENT mapset which is readable from all other mapsets within the same location. Access maps in other mapsets with the "@" symbol or the g.mapsets command.
How the Open Source software development model works
GRASS differs from many other GIS software used in the professional world in that it is developed and distributed by users for users; mostly on a volunteer basis, in the open, and is given away for free.
Emphasis is placed on interoperability and unlimited access to data as well as software flexibility and evolution rate (both added features and bug minimization).
Free can have many meanings, as the links below illustrate, and within a project there is often a spectrum of philosophies and goals amongst developers. But it works - Free Software has revolutionized many sectors of the computing world over the last few years and continues to do so today.
- Philosophy of the Free Software Movement: http://www.gnu.org/philosophy/philosophy.html
- The Open Source Initiative has a good explanation: http://www.opensource.org
- The Free Software Foundation: http://www.fsf.org
- The GNU General Public License: http://www.gnu.org/copyleft/gpl.html
Raster GIS Analysis
Simple Raster Math
Sometimes when analyzing the relationship between two or more raster data sets, a relatively simple mathematical approach is best. One example using the r.mapcalc tool would be to look at changes between two raster data sets. By subtracting the values in these two data sets you can assume that resulting cells with a positive value have a possitive change and those with a negative value have negative change. If the cell values have a zero value then there would be no change.
GRASS comes bundled with the G61:r.mapcalc tool as well as the G61:d.m GUI interface for the tool accessable using the r.mapcalculator command. This GUI allows the user to easily assign raster sets to the variables used in the formulas and easily create mathematical strings that will result in a new raster data set containing the results.