GRASS Usage for Virtual Planetary Exploration

Installation: Kurt Schwehr

Documenation: Daniel Delgado and Kurt Schwehr

 
 1.1 What is GRASS?                                            1
 
 1.2 Usage for the VPE Laboratory                              1
 
 1.3 Tutorial                                                  4
  1.3.1 Logging on to the computer                             4
  1.3.2 Starting up GRASS                                      4
  1.3.3 Creating a GRASS Database for use with the Mars data   5
  1.3.4 Accessing Mars Data from the CD-ROM                    7
  1.3.5 Creating the GRASS header Support Files                9
  1.3.6 Registration using Kilauea Data                       11
    1.3.6.1 Specifiying the Location and Mapset               12
    1.3.6.2 Customizing the Database Environment and Selecting
    the Graphic Output Device                                 14
    1.3.6.3 Obtaining a Grey Scale                            14
    1.3.6.4 Grouping the first Raster Image                   16
    1.3.6.5 Targeting the First Image                         17
    1.3.6.6 Using `i.points' on the First Image               18
    1.3.6.7 Rectifying The First Image                        19
    1.3.6.8 Grouping the Three Other Images                   20
    1.3.6.9 Targeting The Three Images                        21
    1.3.6.10 Using Points on the Three Images group to prepare
    to Register with the First                                21
    1.3.6.11 Rectifying the First Image Group to the Three Image
    Group                                                     24
  1.3.7 Visualization of the Kilueau Mapset                   25
 
 1.4 Resources                                                33
  1.4.1 Software                                              33
  1.4.2 Databases                                             33
  1.4.3 Tutorials                                             34
  1.4.4 Newsgroups                                            34
  1.4.5 Programming notes                                     35
  1.4.6 GIS Mailing Lists                                     35
  1.4.7 GRASS Mailing list                                    35
  1.4.8 Useful Information obtained from the Mailing List
  Archive:                                                    39
    1.4.8.1 Compiling Grass on IRIX 5:                        39
    1.4.8.2 Mars Data                                         41
    1.4.8.3 Searching through the grassu-list archives        41
    1.4.8.4 Histograms                                        42
    1.4.8.5 Color display in GRASS explained                  42
    1.4.8.6 Running GRASS programs without starting grass     43
    1.4.8.7 Sample usage of r.mapcalc                         43
    1.4.8.8 Autocad DXF files                                 44
    1.4.8.9 Databases and GRASS                               44
    1.4.8.10 New r.in.hdf Command                             45
 
 1.5 Appendix                                                 46
  1.5.1 Stanford Workshop GRASS Tutorial                     ---
  1.5.2 C Code Written During Installation                   ---
  1.5.3 Installation Size                                    ---
  1.5.4 VOLINFO.TXT Mars CDROM                               ---

Style Guide

Word for Windows 6.0

This section does not currently apply.

This document uses 12 point Times New Roman Font.
GRASS output uses a Courier 9 point font
User input is a Courier 9 point font that is bold and italicized
GRASS or UNIX command line input uses a Geneva 9 point font
that is bold and italicized

What is GRASS?

GRASS stands for Geographic Resources Analysis Support System, and is a widely used software package allowing one to manipulate geographical information. Software like GRASS is known as a Geographical Information System (GIS). GRASS is released free of charge by the US. Army Corp. of Engineers (The FTP site for obtaining it is in Section 1.4: Resources)

The internet posts a monthly NetNews article in net.answers called the 'GIS FAQ' that answers Frequently Asked Questions about GIS systems. Two definitions cited are:

A GIS is ...

An information system that is designed to work with data referenced by spatial or geographic coordinates. In other words, a GIS is both a database system with specific capabilities for spatially-referenced data, as well as a set of operations for working [analysis] with the data. (Star and Estes, 1990)

... simultaneously the telescope, the microscope, the computer, and the Xerox machine of regional analysis and synthesis of spatial data (Abler, 1988).

A typical use for GRASS would be the creation of a map suitable for urban development. The map might be required to show vegetation, all areas that are currently range land, plus any slopes equal to or less then 15 degrees. For this application, the GRASS database would contain several types of data; such as Digital Elevation Models (DEMs) with x,y,z information, raster pictures (perhaps from LandSat photos), road locations, and vegetation densities.

With GRASS you can display these types of data easily and in relation to each other (only several display commands are needed). You can overlay the raster pictures on the DEM data, and include road and vegetation information. You can then zoom in on areas of interest, and using the database functions of GRASS, do queries for additional information.

The VPE GRASS installation contains a sample database (spearfish, located in Montana), that can be used to create a map of this type. A tutorial (Section 1.5.1 Stanford Workshop Grass Tutorial) is included that shows the procedures for this process.


[Beginning] [Next]

Section 2

Usage for the VPE Laboratory

GRASS comes with tools used to import 'raw' raster scan pictures, DEMs, and categorical data. These tools allow for the building of new databases. GRASS can then be used to create a planetary database, such as of Mars and Earth.

In Section 1.3: Tutorial, you will be shown the steps needed to obtain data on Mars from a CD-ROM, and, using this data, create a GRASS database. You will also be shown the process of registration using data from Mt. Kilauea, a volcano in Hawaii (also from a CD-ROM.)

Registration is the process of combining spatial information that corresponds to each other on different datasets.:

In many image processing applications it is necessary to form a pixel-by-pixel comparison of two images of the same object field obtained from different sensors, or of two images of an object field taken from the same sensor at different times. To form this comparison it is necessary spatially to register the images and thereby correct for relative translational shifts magnification differences and rotational shifts, as well as geometrical and intensity distortions of each image ( W. Pratt, Digital Image Processing, 1978 )
Registration is a key advantage of using GRASS.

GRASS is ideal for the displaying and processing (e.g. sizing) of raster images (Figure 1: kildem.1.gif).

It also allows for the overlaying of images into one congruent orientation (Figure 2: img.pts.4.sml.gif):

Using an elevation map of the site (such as DEM data - Figure 3: SG3d.1.gif), one can create a 3d map representation that corresponds to the raster image.


[Prev] [Next]

Section 3 (1-5)

Tutorial

This section is a tutorial for the following:

Before starting, you will first need an account on a machine with network accessibility to GRASS. machine name , machine name , and machine name have GRASS access (all 3 have visible binary executables). machine name in addition has documentation (see Resources: Documentation.) The System Administrator is name ( phone ). After obtaining permission from the Boss (the person who controls all the equipment), one can contact him/her for an account.

Space on machine name is limited, so accessing the GRASS system from another machine is advised (please see Section 1.5.3: Installation Size) for the size of the GRASS installation. The lab facilities have several SGI machines available ( machine names .)

The tutorial assumes that access is from the SGI machine called machine names . If you are not familiar with the SGI windowing environment, you should learn the SGI operating systems before attempting this tutorial. Alternatively, NASA has a site license for MACx, which lets you use GRASS on a Mac connected to the Local Applenet (Currently, this option is being developed - so we do not yet have complete instructions for this method.) This access is noticibly slower than from a SGI machine.

1.3.1 Logging on to the computer

At a SGI console, log on using your Login and Password. Please take notice of the message telling you of the Schedule. Make sure you are not interfering with any on- going experiment or demonstration.

Make grass accessible to your account by typing:

   set path=($path ~schwehr/grass  ~schwehr/bin) 
You may want to include this in your ".tcshrc" or your ".csrhrc"

1.3.2 - Starting up GRASS

Start up grass by typing:

   grass4.1

You will see a pre-filled form:

  
  GRASS     4.1
  
  LOCATION: This is the name of an available geographic
  location.
  MAPSET:   Every GRASS session runs under the name of a
  MAPSET.
  
  Associated with each MAPSET is a rectangular COORDINATE
  REGION and a list
  of any new maps created.
  
  DATABASE: This is the UNIX directory containing the
  geographic databases The REGION defaults to the entire area
  of the chosen LOCATION.
  
  You may change it later with the command: g.region
  
  - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  - - - - - -
  LOCATION:   spearfish_____(enter list for a list of
  locations)
  
  MAPSET:     schwehr_______(or mapsets within a location)
  
  DATABASE:
  /home/schwehr/grass/data__________________________
       AFTER COMPLETING ALL ANSWERS, HIT <ESC> TO CONTINUE

If you are accessing machine name via a remote login or telnet, you must set up a graphics window accessible to GRASS on your console; i.e.

   setenv DISPLAY mymachine.arc.nasa.gov:0
Otherwise, one can use a display on the machine console:
   
   GRASS  4.1 > setenv DISPLAY machine.arc.nasa.gov:0

To see what DISPLAY is set at use the UNIX command "printenv". Note that one can use the UNIX commands at the GRASS prompt. GRASS is a variation of a cshell with access from the command line. This gives you the ability to create GRASS scripts just as one is able to create shell scripts.

Creating a GRASS Database for use with the Mars data

Enter Grass and change the initial form as follows:

Change the Location to 'mars.tutor.xy':

Change the Mapset to your last name. In this tutorial, the name will be 'schwehr,' however you will see your name in the output because this step changes the name.

Continue by typing in the <ESC>. If the location already exists, you will enter GRASS, otherwise your next screen will be:

  
  LOCATION <mars.tutor.xy> - doesn't exist
  Available locations:
  ----------------------
  den.utm.z12                mars.in.xy
  denver.aea                 spearfish
  ----------------------
  Would you like to create location <mars.tutor.xy> ? (y/n) y
  
  To create a new LOCATION, you will need the following
  information:
  1. The coordinate system for the database
                      x,y (for imagery and other unreferenced data)
                      UTM
                      State Plane
                      Latitude-Longitude
                      other projection
  2. The zone for the database
                 (except for x,y and Latitude-Longitude databases)
  3. The coordinates of the area to become the default region
       and the grid resolution of this region
  4. A short, one-line description or title for the location
  
  Do you have all this information for location
  <mars.tutor.xy> ? (y/n) y
  
  Please specify the coordinate system for location
  <mars.tutor.xy>
            0 x,y
            1 UTM
            2 State Plane
            3 Latitude-Longitude
       99 Other
  RETURN to cancel
  >    0
  x,y coordinate system? (y/n) [y]
  
  Please enter a one line description for location
  <mars.tutor.targ>
  >    Mars Database for the grass   4.1 tutorial
  
  =====================================================
  Mars Database for the grass 4.1 tutorial
  =====================================================
  ok? (y/n) [y]
  
  
                                DEFINE THE DEFAULT REGION
  
                               ====== DEFAULT REGION =======
                              | NORTH EDGE:2000_______     |
                     WEST EDGE|                            |EAST EDGE
                   0__________|                            |2000_______
                              | SOUTH EDGE:0__________     |
                               ============================
  
          PROJECTION: 0 (x,y)                        ZONE: 0
  
                           GRID RESOLUTION
                              East-West:     1_________
                            North-South:     1_________
  
  
         AFTER COMPLETING ALL ANSWERS, HIT <ESC> TO CONTINUE
                            (OR <Ctrl-C> TO CANCEL)
  
       projection:   0 (x,y)
       zone:                 0
       north:               2000
       south:               0
       east:                2000
       west:                0
       e-w res:             1
       n-s res:             1
  
       total rows:             2000
       total cols:             2000
       total cells:       4,000,000
  
  Do you accept this region? (y/n) [y] > y
  
  LOCATION <mars.tutor.xy> created!
  Hit RETURN -->
  
  GRASS     4.1
  
  LOCATION: This is the name of an available geographic
  location.
  MAPSET:   Every GRASS session runs under the name of a
  MAPSET.
  
  Associated with each MAPSET is a rectangular COORDINATE
  REGION and a list
  of any new maps created.
  
  DATABASE: This is the unix directory containing the
  geographic databases The REGION defaults to the entire area
  of the chosen LOCATION.
  
  You may change it later with the command: g.region
  
  - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  - - - - - -
  LOCATION:   mars.tutor.xy__(enter list for a list of
  locations)
  
  MAPSET:     schwehr_______(or mapsets within a location)
  
  DATABASE:
  /home/schwehr/grass/data__________________________
       AFTER COMPLETING ALL ANSWERS, HIT <ESC> TO CONTINUE
  
  
  Welcome to GRASS 4.1 (Spring 1993) Update package 4
  Geographical Resources Analysis Support Systems (GRASS) is
  a Trademark of U.S. Army Construction Engineering Research
  Laboratories (USACERL)
  New releases of GRASS are coordinated and produced by the
  Office of GRASS Integration (OGI) located at USACERL, and
  incorporate software contributions from numerous sources
  
  This version running thru the C Shell (/bin/csh)
  Help is available with the command: g.help
  
  When ready to quit enter:             exit
  
  Mapset <schwehr> in Location <mars.tutor.xy> GRASS 4.1 >
  exit
  Mapset <schwehr> in Location <mars.tutor.xy> GRASS 4.1 >
  GRASS SESSION WRAPUP
  You have just finished working on mapset: <schwehr>
  There are no RASTER maps in this mapset
  There are no VECTOR maps in this mapset
  There are no SITES maps in this mapset
  Shall the mapset <schwehr> be saved? y/n [y]
  
       GOOD BYE from GRASS

Accessing Mars Data from the CD-ROM

The VPE facilities has an assortment of planetary data on CD- ROM; including Mars. The CD-ROM needed for this tutorial is:
  
  MARS: GLOBAL TOPOGRAPHY; VOLUME7
  Mission To Mars: Digital Topographic Map, prepared by
  USGS fo NASA 1993

This tutorial assumes that the CD-ROM is loaded on the computer which is running GRASS. Please ask the System Adminitrator to place the CD-ROM on the machine. Once accessible, go to the LOCATION directory:

   
   GRASS 4.1 > cd ~schwehr/grass/data/mars.tutor.xy Mapset>
If you do a listing you should see your name as the directory for your mapset:
  
   GRASS 4.1 > ls
  
  PERMANENT
   schwehr

Go to the Mapset directory. Here we will create a subdirectory called 'cell' where we will place the CD-ROM data of interest. For this example we will use the dataset called: tg15n067. The nomenclature is that of the Mars CD- ROM system where each image file has a unique name constructed according to the type of image file, resolution and its central latitude and longitude (See Section 1.5.4: Appendix: VOLINFO.TXT).

  
   GRASS 4.1 > cd schwehr
   GRASS 4.1 > mkdir cell
   GRASS 4.1 > cd cell
   GRASS 4.1 > cp /CDROM/tng15nxxx/tg15n067.img
The data comes with an ascii header file that must be removed in order to make it GRASS accessible. See Section 1.5.4 Appendix: VOLINFO.TXT) for a description of all the records of the header. You can see the header by using a unix listing command like 'more' or 'head :'
  
   GRASS 4.1 > more tg15n067.img
  
  CCSD3ZF0000100000001NJPL3IF0PDS200000001 = SFDU_LABEL
  
  /*          FILE FORMAT AND LENGTH */
  RECORD_TYPE    = FIXED_LENGTH
  RECORD_BYTES   = 1912
  FILE_RECORDS   = 962
  LABEL_RECORDS  = 2
  
  /*          POINTERS TO START RECORDS OF OBJECTS IN FILE */
  ^IMAGE               = 3
  
  /*          IMAGE DESCRIPTION */
  DATA_SET_ID    = "VO1/VO2-M-VIS-5-DTM-V1.0"
  SPACECRAFT_NAME     = {VIKING_ORBITER_1, VIKING_ORBITER_2}
  TARGET_NAME    = MARS
  IMAGE_ID  = TG15N067
  INSTRUMENT_NAME     = {VISUAL_IMAGING_SUBSYSTEM_CAMERA_A,
  VISUAL_IMAGING_SUBSYSTEM_CAMERA_B} NOTE = "DIGITAL TERRAIN
  MODEL, 1/64-DEGREE PER PIXEL"
  
  /*          DESCRIPTION OF OBJECTS CONTAINED IN FILE */
  OBJECT    = IMAGE
  LINES     = 960
  LINE_SAMPLES   = 956
  SAMPLE_TYPE    = VAX_INTEGER
  SAMPLE_BITS    = 16
  CHECKSUM  = 128838457
  MINIMUM   = 2497
  MAXIMUM   = 4749
  
  /*        ELEVATION (METERS) = 2*DN - 6000, NULL DN VALUES = 0 */
  MISSING   = 0
  SCALING_FACTOR = 2
       OFFSET  = -6000END_OBJECT   = IMAGE
To strip the header use the split.pds.image command (Section 1.5.2: C Code Written During Installation):
   GRASS 4.1 > split.pds.image
  
  File to read from:tg15n067.img
  Img Output file:tg15n067
  Text Output file:tg15n067.lbl
  Text Header Size:3824 3824
  characters written 1835520 characters written
In addition to stripping the header, the binary file bye order must be swapped. The Mars DTM files from the USGS Viking CD-ROM lists the data type as 16 bit Vax_integers. IBM and Vaxes have a different byte order than MIPs (SGI) machines in that integers are longer than one byte. The symtom of the wrong byte order is to have unusual and rapidly varying values in small areas on the image. Use the swap.bytes command to change the file for the SGI machine. This program reads in each pair of bytes, swaps them, and writes them out to a different file (Appendix: C-Code):
   GRASS 4.1 > swap.bytes
  
  Swap bytes for a 16bit image file.
  File to read from:tg15n067 Img
  Output file:tg15n067.swap
  917760 characters written
If you do a listing you should see the following files:
   GRASS 4.1 > ls -l
  
  total 10771
  -rw-r--r-- 1 schwehr vpe 1835520   Aug 17  13:42  tg15n067
  -rw-r--r-- 1 schwehr vpe 1839344   Aug 17  13:38  tg15n067.img
  -rw-r--r-- 1 schwehr vpe 3824      Aug 17  13:42  tg15n067.lbl
  -rw-r--r-- 1 schwehr vpe 1835520   Aug 17  13:44  tg15n067.swap
For convenience, one can rename the file:
   GRASS 4.1 > mv tg15n067.swap tg15n067
Creating the GRASS header Support Files GRASS needs some support files called header files. The utility used is `r.support'.
   GRASS 4.1 > r.support
  
  Enter name of raster file for which you will create/modify
  support files
  Enter 'list' for a list of existing raster files
  Enter 'list -f' for a list with titles
  Hit RETURN to cancel request >
GRASS treats any file in a /<location>/<mapset>/cell/ directory as a binary raster image.
  list <list>
  
  ----------------------------------------------
   raster files available in mapset schwehr:
  tg15n067
  tg15n067.img
  tg15n067.lbl
  ----------------------------------------------
  
  Enter name of raster file for which you will create/modify
  support files
  Enter 'list' for a list of existing raster files
  Enter 'list -f' for a list with titles
  Hit RETURN to cancel request
  > tg15n067
  <tg15n067>
Since we are creating the header file, GRASS will indicate this and then allow us to create it. The input values are obtained from the header file of the raw data:
  LINES     = 960
  LINE_SAMPLES   = 956
  SAMPLE_TYPE    = VAX_INTEGER
  SAMPLE_BITS    = 16
One obtains the number of bytes per cell by dividing the SAMPLE_BITS by 8 (resulting in 2). The values are used as follows:
  WARNING: Can't open header file for [tg15n067 in schwehr]
  Edit the header for [tg15n067]? (y/n) [y] y
  Edit header for [tg15n067] cellhd
  compression: 0 3.0 compression not indicated
  pre 3.0 compression not indicated
  hit RETURN to continue -->
  
  Please enter the following information for [tg15n067]
  
  960__     Number of rows
  956__     Number of cols
  2____     Number of bytes per cell
  rows * cols * bytes per cell must be same as file size
  (1835520)
  If you need help figuring them out, just hit ESC
  AFTER COMPLETING ALL ANSWERS, HIT <ESC> TO CONTINUE (OR
  <Ctrl-C> TO CANCEL)
If you input the incorrect information, GRASS will attempt to assist you. For example suppose that you entered 957 instead of 956. Your ouput will show
  The product of the rows(960), cols(957) and bytes per
  cell(2) does not equal the file size (1835520)
  
  The following combinations will produce the correct file
  size
  
  2 bytes per cell
   1 * 917760   2 * 458880   3 * 305920   4 * 229440
   5 * 183552   6 * 152960   8 * 114720  10 * 91776
  12 * 76480   15 * 61184   16 * 57360   20 * 45888
  24 * 38240   30 * 30592   32 * 28680   40 * 22944
  48 * 19120   60 * 15296   64 * 14340   80 * 11472
  96 * 9560   120 * 7648   128 * 7170   160 * 5736
 192 * 4780   239 * 3840   240 * 3824   256 * 3585
 320 * 2868   384 * 2390   478 * 1920   480 * 1912
 640 * 1434   717 * 1280   768 * 1195   956 * 960
  hit RETURN to continue -->

Figure 5: tg15n067.first.gif.


[Prev] [Next]

Section 3 - part 6

Registration using Kilauea Data

The tutorial in the Appendix contains examples of registration (Section 1.5.1: Stanford Workshop Grass Tutorial). This example uses sample data from a CD-ROM containing data of the Kilauea Volcano in Hawaii. Registration is a multi-step proccess, involving creating a Group (a collection of images) and a Target Database, followed by the selection of control points; i.e. points that are congruent on the different images, and finally the registration of the images together using the control points.

This example is a fairly detailed one that shows how to register one raster image (kildem) to a set of three (skil12n2.img, skil12n4.img, skil12n7.img). In the process, we will modify the kildem image by creating a grey scale for it. We will then create a group for the kildem data (kildem.grp), target it, and rectify it. Following this, the set of three images will also be grouped and targeted (producing image.grp), followed by the rectification to the first image.

Througout the process, note that the `i.point' procedure is used to obtain the reference points used to register the images together. Note also that one has to `group' the kildem image, even though it is a group of one. GRASS considers this neccessary so as to allow one to target the image to it (since GRASS targets a `group').

Specifiying the Location and Mapset

First, one must specify a Location and a Mapset:
  
  GRASS     4.1
  LOCATION: This is the name of an available geographic
  location.
  MAPSET:   Every GRASS session runs under the name of a
  MAPSET.  Associated with each MAPSET is a rectangular
  COORDINATE REGION and a list of any new maps created.
  DATABASE: This is the unix directory containing the
  geographic databases The REGION defaults to the entire area
  of the chosen LOCATION.
  
  You may change it later with the command: g.region
  - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  - - - - - -
  LOCATION:   kil.tutor.targ_(enter list for a list of
  locations)
  MAPSET:     schwehr_____(or mapsets within a location)
  DATABASE:
  /home/schwehr/grass/data__________________________
                      AFTER COMPLETING ALL ANSWERS, HIT <ESC>
  TO CONTINUE
                                (OR <Ctrl-C> TO CANCEL)
Please input 'kil.tutor.targ' as the Location and your name as the Mapset:
  
  LOCATION <kil.tutor.targ> - doesn't exist
  Available locations:
  ----------------------
  den.utm.z12    kil.sample.xy  kill.dan.xy    spearfish.tar.Z
  denver.aea.2   kil.sample.xy.tar   mars.in.xy     text.files
  denver.in.1    kil.tutor.xy        mars.tutor.xy
  denver.ll      spearfish
  ----------------------
  Would you like to create location <kil.tutor.targ> ? (y/n)  y
  
  To create a new LOCATION, you will need the following information:
  1. The coordinate system for the database
                      x,y (for imagery and other unreferenced data)
                      UTM
                      State Plane
                      Latitude-Longitude
                      other projection
  2. The zone for the database
           (except for x,y and Latitude-Longitude databases)
  3. The coordinates of the area to become the default region
       and the grid resolution of this region
  4. A short, one-line description or title for the location
  
  Do you have all this information for location <kil.tutor.targ> ? (y/n) y
  
  Please specify the coordinate system for location <kil.tutor.targ>
            0 x,y
            1 UTM
            2 State Plane
            3 Latitude-Longitude
       99 Other
  RETURN to cancel
  >    0
  x,y coordinate system? (y/n) [y]
  
  Please enter a one line description for location <kil.tutor.targ>
  
  > Tutorial location for Kilauea - target for registering files - xy coords
  
  =====================================================
  Tutorial location for Kilauea - target for registering
  files - xy coords
  =====================================================
  ok? (y/n) [y]
  
                                  DEFINE THE DEFAULT REGION
  
                               ====== DEFAULT REGION ========
                              | NORTH EDGE:400________      |
                     WEST EDGE|                             |EAST EDGE
                   0__________|                             |400_______
                              | SOUTH EDGE:0__________      |
                                ============================
  
          PROJECTION: 0 (x,y)                        ZONE: 0
  
                           GRID RESOLUTION
                             East-West:     1_________
                           North-South:     1_________
  
  
         AFTER COMPLETING ALL ANSWERS, HIT <ESC> TO CONTINUE
                            (OR <Ctrl-C> TO CANCEL)
  
       projection:    0 (x,y)
       zone:          0
       north:         400
       south:         0
       east:          400
       west:          0
       e-w res:       1
       n-s res:       1
       total rows:              400
       total cols:              400
       total cells:         160,000
  Do you accept this region? (y/n) [y] >
  LOCATION <kil.tutor.targ> created!
After specifiying the Location and Mapset, be sure to save it when exiting:
  
  When ready to quit enter:             exit
  
   GRASS 4.1 > exit
  
  GRASS SESSION WRAPUP
  You have just finished working on mapset: <schwehr>
  There are no RASTER maps in this mapset
  There are no VECTOR maps in this mapset
  There are no SITES maps in this mapset
  
  Shall the mapset <schwehr> be saved? y/n [y]
Enter GRASS again and specify the Location kil.tutor.targ and your Mapset ('schwehr' in this tutorial). By using a 'g' command (i.e. general, one can list the raster files available):
  
   GRASS 4.1 > g.list rast
   
   ---------------------------------------------
  raster files available in mapset PERMANENT:
  kildem    skil12n2.img  skil12n4.img  skil12n7.img
  ----------------------------------------------
Customizing the Database Environment and Selecting the Graphic Output Device One can now customize the database environment and select the graphics output device. Use of the `g.gisenv ` command displays the specified variable as part of the prompt if desired:
  
   GRASS            4.1 > g.gisenv
   
  GISDBASE=/home/schwehr/grass/data
  LOCATION_NAME=kil.tutor.targ MAPSET=schwehr
  
   GRASS  4.1 > setenv DISPLAY console:0
   GRASS  4.1 > d.mon start=iris
   
  Graphics driver [iris] started
  
   GRASS  4.1 > d.frame -e
Obtaining a Grey Scale

Obtain a grey scale with the following commands:

  
   GRASS  4.1 > g.region rast=kildem
   GRASS  4.1 > d.rast kildem
   GRASS  4.1 > i.grey.scale

  which layer needs a grey scale?
  Enter 'list' for a list of existing raster files Enter
  'list -f' for a list with titles
  Hit RETURN to cancel request
  > list
  <list>
  
  ---------------------------------------------
  raster files available in mapset PERMANENT:
  kildem    skil12n2.img   skil12n4.img   skil12n7.img
  ----------------------------------------------
  
  which layer needs a grey scale?
  Enter 'list' for a list of existing raster files
  Enter 'list -f' for a list with titles
  Hit RETURN to cancel request
  > kildem
  <kildem>
  Reading kildem ...
  [kildem in PERMANENT] now has a grey scale color table
  which layer needs a grey scale?
  Enter 'list' for a list of existing raster files
  Enter 'list -f' for a list with titles
  Hit RETURN to cancel request
  >
Display the output:
 
   GRASS  4.1 > d.rast kildem
The grey scale file is an ascii text that is can be edited using any text editor such as vi or emacs. The format is of an altitude, followed by the grey scale range to code for that altitude level:
   
   GRASS  4.1 > cd
 ~schwehr/grass/data/kil.tutor.targ/schwehr/colr2/PERMANENT
   GRASS  4.1 > cat kildem
   
  % 1 6363
  0:0
  1:0 15:0
  16:1 28:1
  29:2 37:2
  38:3 47:3
  48:4 53:4
  54:5 62:5
  63:6 69:6
       ...
       etc ...
To get familiar with the data, one can use the d.what.rast command. This will let you use your mouse to select a point and obtain information on that point: Using this, one can select different altitudes ranges and modify the grey scale.
   
   GRASS 4.1 > d.what.rast
   
  Buttons
   Left:  what's here
   Right: quit
  221.5(E) 935.5(N)
  kildem in PERMANENT (4496)
  212.5(E) 762.5(N)
  kildem in PERMANENT (3618)
  469.5(E) 691.5(N)
  kildem in PERMANENT (3547)
  558.5(E) 629.5(N)
  kildem in PERMANENT (3250)
  724.5(E) 598.5(N)
  kildem in PERMANENT (2505)
  Buttons
   Left:  what's here
   Right: quit
  
  GRASS 4.1 > ls -l
  total 9
  -rw-r--r--   1 schwehr  vpe         4292 Aug 18 17:07
  kildem
Using this technique, the grey scale can be changed to what one desires (after using the `d.what.rast' command to obtain the values one wants). For this example the kildem grey scale was changed to the following:
   
   GRASS  4.1 > more kildem

  % 1 6363
  0:0 2505:255
  2506:255:255:255 3250:0:255:0
  3251:0:255:0 3547:255:0:0
  3548:255:0:0 3618:0:255:0
  3619:0:255:0 4045:255:0:255
  4046:255:0:255 4496:255:0:0
This is not the best color scale. Try your own, and you will probably get better results.

One can use the 'zoom' command to change the current region:

   
   GRASS  4.1 > d.rast kildem
   GRASS  4.1 > d.zoom
   
  Buttons:
  Left:   Establish a corner
  Middle: Check coordinates
  Right:  Accept region
  north: 889  south: 888  east: 512  west: 511
  north: 889  south: 654  east: 512  west: 265
  This region now saved as current region.
  Note: run 'd.erase' for the new region to affect the
  graphics.
See Figure 1: kildem.1.gif for a sample of the display output. Since the display is using an iris monitor, it needs to be cleared using the d.frame -e command.
   > GRASS4.1 > d.frame -e
   > GRASS4.1 > d.rast kildem
Grouping the first Raster Image Grass can be used on multiples of images. This is facilitated by the use of a 'group'; i.e. sets of images that are coprocessed. Creating a group is required for this registration:
   
   > GRASS4.1 > i.group
   
  This program edits imagery groups. You may add data layers
  to, or remove data layers from an imagery group. You may
  also create new groups
  Please enter the group to be created/modified
  GROUP:    kildem.grp__________   (list will show available
  groups)
                                  AFTER COMPLETING ALL
  ANSWERS, HIT <ESC> TO CONTINUE
                      (OR <Ctrl-C> TO CANCEL)
  
  kildem.grp - does not exist, do you wish to create a new
  group? (y/n) [n] y
  
  LOCATION: kil.tutor.targ      GROUP: kildem.grp   MAPSET:
  schwehr
  Please mark an 'x' by the files to be added in group
  [kildem.grp]
  MAPSET: PERMANENT
  _x kildem
  __ skil12n2.img
  __ skil12n4.img
  __ skil12n7.img
  
                 AFTER COMPLETING ALL ANSWERS, HIT <ESC> TO
  CONTINUE
                      (OR <Ctrl-C> TO CANCEL)
  
  Group [kildem.grp] references the following raster file
  
  -----------------------
  kildem in PERMANENT
  -----------------------
  Look ok? (y/n) y
  Group [kildem.grp] created!
  LOCATION: kil.tutor.targ       GROUP: kildem.grp
  MAPSET: schwehr
            1.   Select a different group
            2.   Edit group title
            3.   Include new raster files in the group
                 or remove raster files from the group
            4.   Assign colors to the group
            5.   Create a new subgroup within the group
       RETURN    exit
Targeting the First Image After creating the group, one must target it to the database one wants to use:
   GRASS 4.1 > i.target
   
  This program targets an imagery group to a GRASS database
  Enter group that needs a target
  Enter 'list' for a list of existing imagery groups Enter
  'list -f' for a verbose listing
  Hit RETURN to cancel request
  > list
  
  <list>
  Available groups
  ---------------------------------
  kildem.grp
  ---------------------------------
  hit RETURN to continue -->
  
  Enter group that needs a target
  Enter 'list' for a list of existing imagery groups
  Enter 'list -f' for a verbose listing
  Hit RETURN to cancel request
  > kildem.grp
  
  <kildem.grp>
  Please select the target LOCATION and MAPSET for group
  <kildem.grp>
  CURRENT LOCATION: kil.tutor.targ
  CURRENT MAPSET:   schwehr
  TARGET LOCATION:  ____________________
  TARGET MAPSET:    ____________________
  (enter list for a list of locations or mapsets within a
  location)
  
   AFTER COMPLETING ALL ANSWERS, HIT <ESC> TO CONTINUE
                             (OR <Ctrl-C> TO CANCEL)
Fill this form with 'kil.tutor.targ' as the Location and your name as the Mapset. Using `i.points' on the First Image Finally, one can begin the registration process. 'i.points' will let you locate the points that you will use as markers. It uses a mouse menuing system to let you pick the map points that you believe you have coordinate information on. You can then do an analysis that shows the list of control points and the positioning error. Iteratively, one can do the point selection and analysis to reduce the error ( Figure 6: img.pts.3.sml.gif):
   GRASS 4.1 > i.points
  
  Enter imagery group to be registered
  Enter 'list' for a list of existing imagery groups
  Enter 'list -f' for a verbose listing
  Hit RETURN to cancel request
  > list
  
  <list>
  Available groups
  ---------------------------------
  kildem.grp
  ---------------------------------
  hit RETURN to continue -->
  Enter imagery group to be registered
  Enter 'list' for a list of existing imagery groups
  Enter 'list -f' for a verbose listing
  Hit RETURN to cancel request
  > kildem.grp

Figure 6: img.pts.3.sml.gif:

Rectifying The First Image
  
   GRASS 4.1 > i.rectify
   
  Enter the group containing files to be rectified Enter
  'list' for a list of existing imagery groups Enter 'list -
  f' for a verbose listing
  Hit RETURN to cancel request
  > list
  <list>
  
  Available groups
  ---------------------------------
  kildem.grp
  ---------------------------------
  hit RETURN to continue -->
  
  Enter the group containing files to be rectified Enter
  'list' for a list of existing imagery groups Enter 'list -
  f' for a verbose listing
  Hit RETURN to cancel request
  > kildem.grp
  
  <kildem.grp>
  
  Please select the file(s) you wish to rectify by naming an
  output file
  kildem@schwehr . . . . . . . . . . kildem_________
  
  (enter list by  name to get a list of existing raster
  files)
  AFTER COMPLETING ALL ANSWERS, HIT <ESC> TO CONTINUE
                         (OR <Ctrl-C> TO CANCEL)
  
  Please select one of the following options
   1. Use the current region in the target location
   2. Determine the smallest region which covers the image
  > 1
You will receive mail when i.rectify is complete. The contents of the rectification notice will look similar to the following:
   
   GRASS 4.1 > mail
   
  From schwehr  Thu Aug 18 17:42:25 1994
  Thu, 18 Aug 94 17:42:25 -0700
  From: schwehr (Kurt Schwehr)
  Subject: i.rectify
  Apparently-To: schwehr
  ***********************************************
  Rectify [kildem@PERMANENT] (LOCATION kil.tutor.targ)
  into  [kildem in schwehr] (LOCATION kil.tutor.tar)
  complete
  -----------------------------------------------
   400 rows, 400 cols (160000 cells) completed in 0:06
       1600000.0 cells per minute
  ? d
Grouping the Three Other Images After receiving notification one can continue:
  
   GRASS 4.1 > i.group
   
  LOCATION: kil.tutor.targ.group     MAPSET: schwehr
  This program edits imagery groups. You may add data layers
  to, or remove data layers from an imagery group. You may
  also create new groups
  
  Please enter the group to be created/modified
  
  GROUP:    images.grp__________   (list will show available
  groups)
  
  AFTER COMPLETING ALL ANSWERS, HIT <ESC> TO CONTINUE
                 (OR <Ctrl-C> TO CANCEL)
  
  images.grp - does not exist, do you wish to create a new
  group? (y/n) [n] y
  LOCATION: kil.tutor.targ GROUP: images.grp   MAPSET:
  schwehr
  Please mark an 'x' by the files to be added in group
  [images.grp]
  
  MAPSET: PERMANENT
  __ kildem
  _x  skil12n2.img
  _x  skil12n4.img
  _x  skil12n7.img
  
  AFTER COMPLETING ALL ANSWERS, HIT <ESC> TO CONTINUE
            (OR <Ctrl-C> TO CANCEL)
These images can be grouped together since they have already been registered to each other. Thus the same transform will be used on all three to rectify them together to match the kildem in kil.tutor.targ
  
  Group [images.grp] references the following raster files
  -----------------------
       skil12n2.img in PERMANENT
       skil12n4.img in PERMANENT
       skil12n7.img in PERMANENT
  -----------------------
  Look ok? (y/n) y
  
  Group [images.grp] created!
  LOCATION: kil.tutor.targ       GROUP: images.grp
  MAPSET: schwehr
       1.   Select a different group
       2.   Edit group title
       3.   Include new raster files in the group
            or remove raster files from the group
     4.     Assign colors to the group
       5.   Create a new subgroup within the group
       RETURN    exit
  >
Targeting The Three Images
   
   GRASS 4.1 > i.target
   
  This program targets an imagery group to a GRASS database
  Enter group that needs a target
  
  Enter 'list' for a list of existing imagery groups
  Enter 'list -f' for a verbose listing
  Hit RETURN to cancel request
  > list
  
  <list>
  Available groups
  ---------------------------------
  images.grp  kildem.grp
  ---------------------------------
  hit RETURN to continue -->
  Enter group that needs a target
  Enter 'list' for a list of existing imagery groups
  Enter 'list -f' for a verbose listing
  Hit RETURN to cancel request
  > images.grp
  
  <images.grp>
  Please select the target LOCATION and MAPSET for group
  <images.grp>
  CURRENT LOCATION: kil.tutor.targ
  CURRENT MAPSET:   schwehr
  TARGET LOCATION:  ____________________
  TARGET MAPSET:    ____________________
  
  (enter list for a list of locations or mapsets within a
  location)
  AFTER COMPLETING ALL ANSWERS, HIT <ESC> TO CONTINUE
            (OR <Ctrl-C> TO CANCEL)
  
  group [images.grp] targeted for location [kil.tutor.tar],
  mapset [schwehr]
  Mapset <schwehr> in Location <kil.tutor.targ>
Using Points on the Three Images group to prepare to Register with the First
   GRASS 4.1 > i.points
   
  Enter imagery group to be registered
  Enter 'list' for a list of existing imagery groups
  Enter 'list -f' for a verbose listing
  Hit RETURN to cancel request
  > list
  
  <list>
  Available groups
  ---------------------------------
  images.grp  kildem.grp
  ---------------------------------
  hit RETURN to continue -->
  
  Enter imagery group to be registered
  Enter 'list' for a list of existing imagery groups
  Enter 'list -f' for a verbose listing
  Hit RETURN to cancel request
  > images.grp

Use plot raster to bring up the image hidden on the right (Figure 7: img.pts.1.gif):

The i.point command uses the mouse to select the registration points. The following are some sample mouse point selections (yours may be very different):

  
  |Point 1 marked on image at
  |  East:732.07
  |  North:     496.06|
  |Point located at
  |  East:277.49
  |  North:     242.29
  |Point 2 marked on image at
  |     East:750.19
  |     North:     507.36
  
       ....
  
  |Point 9 marked on image at
  |     East:575.12
  |     North:     706.23
  |Point located at
  |     East:188.86
  |     North:     371.47
  |Point 10 marked on image at
  |     East:686.16
  |     North:     693.27
  |Point located at
  |     East:247.08
  |     North:     363.47
See above (Figure7: img.pts.1.gif). As well as Figure 8: img.pts.2.gif: Rectifying the First Image Group to the Three Image Group
   GRASS 4.1 > i.rectify
   
  Enter the group containing files to be rectified Enter
  'list' for a list of existing imagery groups Enter 'list -
  f' for a verbose listing
  Hit RETURN to cancel request
  > list
  
  <list>
  Available groups
   ---------------------------------
  images.grp  kildem.grp
   ---------------------------------
  hit RETURN to continue -->
  Enter the group containing files to be rectified Enter
  'list' for a list of existing imagery groups Enter 'list -
  f' for a verbose listing
  Hit RETURN to cancel request
  > images.grp
  
  <images.grp>
  Please select the file(s) you wish to rectify by naming an
  output file
  skil12n2.img@PERMANENT . . . . . . . skil12n2______
  skil12n4.img@PERMANENT . . . . . . . skil12n4______
  skil12n7.img@PERMANENT . . . . . . . skil12n7_______
  (enter list by any name to get a list of existing raster
  files)
  
  AFTER COMPLETING ALL ANSWERS, HIT <ESC> TO CONTINUE
                 (OR <Ctrl-C> TO CANCEL)
  
  Please select one of the following options
   1. Use the current region in the target location
   2. Determine the smallest region which covers the image
  > 1
  You will receive mail when i.rectify is complete
  
   GRASS 4.1 > mail
   
  From schwehr  Thu Aug 18 18:03:32 1994
  Date: Thu, 18 Aug 94 18:03:32 -0700
  From: schwehr (Kurt Schwehr)
  Subject: i.rectify
  Apparently-To: schwehr
  ***********************************************
  Rectify [skil12n2.img@PERMANENT] (LOCATION kil.tutor.xy)
  into  [skil12n2 in schwehr] (LOCATION kil.tutor.tar)
  complete -----------------------------------------------
  400 rows, 400 cols (160000 cells) completed in 0:06
   1600000.0 cells per minute
  ***********************************************
  Rectify [skil12n4.img@PERMANENT] (LOCATION kil.tutor.xy)
   into  [skil12n4 in schwehr] (LOCATION kil.tutor.tar)
   complete -----------------------------------------------
  400 rows, 400 cols (160000 cells) completed in 0:06
   1600000.0 cells per minute
  ***********************************************
  Rectify [skil12n7.img@PERMANENT] (LOCATION kil.tutor.xy)
   into  [skil12n7 in schwehr] (LOCATION kil.tutor.tar)
   complete -----------------------------------------------
  400 rows, 400 cols (160000 cells) completed in 0:05
   1920000.0 cells per minute
  ? d

[Prev] [Next]

Section 3 - part 7

Visualization of the Kilueau Mapset

After the registration process, it is possible to explore your mapset with the use of several of the GRASS commands and the SG3d program.
   SGI Irix 7% grass4.1
   
  GRASS 4.1
  
  LOCATION: This is the name of an available geographic location.
  -spearfish is the sample data base for which all tutorials are
  written.
  
  MAPSET:   Every GRASS session runs under the name of a MAPSET.
  Associated with each MAPSET is a rectangular COORDINATE REGION
  and a list
  of any new maps created.
  
  DATABASE: This is the unix directory containing the geographic
  databases The REGION defaults to the entire area of the chosen
  LOCATION.
  
  You may change it later with the command: g.region
  - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  - - - -
  
  LOCATION: kil.tutor.xy__(enter list for a list of locations)
  MAPSET:   schwehr_______(or mapsets within a location)
  DATABASE: /home/schwehr/grass/data__________________________
  AFTER COMPLETING ALL ANSWERS, HIT <ESC> TO CONTINUE
            (OR <Ctrl-C> TO CANCEL)
  
  list
  ________
  Available locations:
  ----------------------
  den.utm.z12    kil.tutor.tar       mars.tutor.xy denver.aea.2
  kil.tutor.xy   spearfish           denver.in.1
  denver.ll      kill.dan.xy         kil.sample.xy.tar.Z
  mars.in.xy
  ----------------------
  Hit RETURN -->
  
  GRASS 4.1
  
  LOCATION: This is the name of an available geographic location.
  -spearfishis the sample data base for which all tutorials are
  written.
  
  MAPSET:   Every GRASS session runs under the name of a MAPSET.
  Associated with each MAPSET is a rectangular COORDINATE REGION
  and a list
  of any new maps created.
  
  DATABASE: This is the unix directory containing the geographic
  databases The REGION defaults to the entire area of the chosen
  LOCATION.
  
  You may change it later with the command: g.region
  - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  - - - -
  LOCATION: kil.tutor.xy_____(enter list for a list of locations)
  MAPSET:   schwehr_______(or mapsets within a location)
  DATABASE: /home/schwehr/grass/data__________________________
  
  AFTER COMPLETING ALL ANSWERS, HIT <ESC> TO CONTINUE
            (OR <Ctrl-C> TO CANCEL)
  
  
  Welcome to GRASS 4.1 (Spring 1993) Update package 4
  Geographical Resources Analysis Support Systems (GRASS) is a
  Trademark of U.S. Army Construction Engineering Research
  Laboratories (USACERL)
  New releases of GRASS are coordinated and produced by the Office
  of GRASS Integration (OGI) located at USACERL, and incorporate
  software contributions from numerous sources
  This version running thru the C Shell (/bin/csh)
  Help is available with the command: g.help
  When ready to quit enter:             exit
  
   GRASS 4.1 > g.list rast
   
  ---------------------------------------------
  raster files available in mapset schwehr: kildem    skil12n2
  skil12n4  skil12n7
  ----------------------------------------------
If the Iris window is already running type:
   
   GRASS  4.1 > d.mon unlock=iris
   GRASS  4.1 > d.mon sel=iris
Otherwise type:
   
   GRASS  4.1 > d.mon start=iris
Continue with :
   
   GRASS  4.1 >
   GRASS  4.1 > d.frame -e
   GRASS  4.1 > slide.show.sh mapset=schwehr
   GRASS  4.1 > slide.show.sh help
   
  Unrecognized option: help
  Options: across=#maps_across down=#_maps_down Defaults:
       across =   4
       down   =   3
   
   GRASS  4.1 > slide.show.sh across=2 down=2 mapset=schwehr
Figure 9: slide.show.gif:

   GRASS  4.1 > setenv DISPLAY machine name:0
   GRASS  4.1 > SG3d
   
  OPTION:   Raster file for Elevation
            key: elevation
  required: YES
  
  Enter the name of an existing Raster file Enter 'list' for a
  list of existing Raster files
  Hit RETURN to cancel request
  > list
  
  <list>
  ---------------------------------------------
  Raster files available in mapset schwehr: kildem    skil12n2
  skil12n4  skil12n7
  ----------------------------------------------
  
  Enter the name of an existing Raster file
  Enter 'list' for a list of existing Raster files Hit RETURN to
  cancel request
  > kildem
  <kildem>
  OPTION:   Raster file(s) for Color (1 or 3 files) key: color
  required: YES
  multiple: YES
  
  Enter the name of an existing Raster file
  Enter 'list' for a list of existing Raster files
  Hit RETURN to cancel request
  > skil12n2
  <skil12n2>
  Enter the name of an existing Raster file
  Enter 'list' for a list of existing Raster files
  Hit RETURN to accept the default
  >
  <>
  OPTION:   Vector overlay file
            key: vector
  required: NO
  
  Enter the name of an existing Vector file
  Enter 'list' for a list of existing Vector files
  Hit RETURN to cancel request
  >
  <>
  
  OPTION:   3D viewing parameters
            key: 3dview
  required: NO
  Enter the name of an existing 3dview file
  Enter 'list' for a list of existing 3dview files
  Hit RETURN to cancel request
  >
  <>
  OPTION:   Sites overlay file
            key: sites
  required: NO
  
  Enter the name of an existing Sites file
  Enter 'list' for a list of existing Sites files
  Hit RETURN to cancel request
  >
  <>
  OPTION:   Raster file for site category color key: scolor
  required: NO
  
  Enter the name of an existing Raster file
  Enter 'list' for a list of existing Raster files
  Hit RETURN to cancel request
  >
  OPTION:   Automatically run script file
            key: script
  required: NO
  enter option >
  FLAG: Set the following flag?
  Enable writing to script files?(y/n) [n]
  FLAG: Set the following flag?
       Use site category as Z value?(y/n) [n] Initial load of
  data:  Loading data:  Done. elevation range: 3165.000000 to
  4097.000000 Done.
  recalculating normals...100
   
   GRASS 4.1 > SG3d

First you will see a wire frame representation of the topography as in Figure3: SG3d.1.gif:

Click on the draw button to see a rendered version that looks like figure10: SG3d.2.gif:

To finish, click on the `quit' button to exit back to GRASS.

Now we'll merge together three image bands. The first will be red, the second green, and the third green. This will give the impression of 'color' from the images.

  
  OPTION:   Raster file for Elevation
       key: elevation
  required: YES
  Enter the name of an existing Raster file
  Enter 'list' for a list of existing Raster files
  Hit RETURN to cancel request
  > list
  
  <list>
  ---------------------------------------------
  Raster files available in mapset schwehr: kildem    skil12n2
  skil12n4  skil12n7
  ----------------------------------------------
  
  Enter the name of an existing Raster file
  Enter 'list' for a list of existing Raster files
  Hit RETURN to cancel request
  > kildem
  <kildem>
  OPTION:   Raster file(s) for Color (1 or 3 files) key: color
  required: YES
  multiple: YES
  Enter the name of an existing Raster file
  Enter 'list' for a list of existing Raster files
   Hit RETURN to cancel request
  > skil12n2
  <skil12n2>
  
  Enter the name of an existing Raster file
  Enter 'list' for a list of existing Raster files
  Hit RETURN to accept the default
  > skil12n4
  <skil12n4>
  
  Enter the name of an existing Raster file
  Enter 'list' for a list of existing Raster files
  Hit RETURN to accept the default
  > skil12n7
  <skil12n7>
  
  Enter the name of an existing Raster file
  Enter 'list' for a list of existing Raster files
  Hit RETURN to accept the default
  >
  <>
  OPTION:   Vector overlay file
       key: vector
  required: NO
  Enter the name of an existing Vector file
  Enter 'list' for a list of existing Vector files
  Hit RETURN to cancel request
  >
  <>
  OPTION:   3D viewing parameters
            key: 3dview
  required: NO
  Enter the name of an existing 3dview file
  Enter 'list' for a list of existing 3dview files
  Hit RETURN to cancel request
  >
  <>
  OPTION:   Sites overlay file
            key: sites
  required: NO
  Enter the name of an existing Sites file
  Enter 'list' for a list of existing Sites files
  Hit RETURN to cancel request
  >
  
  OPTION:   Raster file for site category color key: scolor
  required: NO
  Enter the name of an existing Raster file
  Enter 'list' for a list of existing Raster files
  Hit RETURN to cancel request
  >
  <>
  OPTION:   Automatically run script file
            key: script
  required: NO
  enter option >
  FLAG: Set the following flag?
  Enable writing to script files?(y/n) [n]
  FLAG: Set the following flag?
       Use site category as Z value?(y/n) [n] Initial load of
  data:  Loading data:  Done. elevation range: 3165.000000 to
  4097.000000 Done.

  See 12: SG3d.3.gif:



  recalculating normals...100
  recalculating normals...100 200 300 recalculating normals...100
  recalculating normals...100 200 300 recalculating normals...100
  LEFT MOUSE BUTTON to mark center of scale ESCAPE key to cancel
  <scale set>
  LEFT MOUSE BUTTON to mark center of scale ESCAPE key to cancel
  <scale set>
  LEFT MOUSE BUTTON to mark first letter of label ESCAPE key to
  cancel
  <label set>
  LEFT MOUSE BUTTON to mark first letter of label
  ESCAPE key to cancel
  <label set>
  LEFT MOUSE BUTTON to mark first letter of label ESCAPE key to
  cancel
  <label set>
  LEFT MOUSE BUTTON to mark first letter of label ESCAPE key to
  cancel
  <label set>
  LEFT MOUSE BUTTON to mark first letter of label ESCAPE key to
  cancel
  <label set>
   
   :
   \GRASS 4.1 > exit
   
  GRASS 4.1 >
  
  GRASS SESSION WRAPUP
  You have just finished working on mapset: <schwehr>
  The following RASTER maps belong to it:
   kildem    skil12n2  skil12n4  skil12n7
  There are no VECTOR maps in this mapset
  There are no SITES maps in this mapset
  Shall the mapset <schwehr> be saved? y/n [y]
  Do you wish to selectively remove data files? y/n [n]
  GOOD BYE from GRASS
  SGI Irix 8% exit
  SGI Irix 9% logout
The output: Figure 4: SG3d.final.gif:
[Prev] [Next]

Section 4

Resources

This section has additional resources that one might find helpful.

Software

The GIS source code with installation instructions is available from the FTP site: Grass programs are available from: ftp://pasture.ecn.purdue.edu/pub/mccauley

Databases

A document that catalogs free database systems is available from: (Note: link gone) ftp://idiom.berkeley.ca.us This is also posted on various newsgroups as explained in the following grassu-list announcement (information on the mailing list is provided in Section 1.4.7: GRASS Mailing List):
  Date: Fri, 5 Aug 1994 21:35:07 -0500
  >From: James Darrell McCauley <mccauley@ecn.purdue.edu>
  To: grassu-list@max.cecer.army.mil
  Subject: FYI: free database systems
  
  >         Catalog of Free Database Systems
  >
  > This document attemts to catalog databases that are
  > available without payment and with source.
  >
  > The latest version of the document can be ftp'ed: get
  > pub/free-databases from idiom.berkeley.ca.us.
  >
  > I will post this document about once a month to
  comp.databases,
  > comp.databases.object, comp.answers, and news.answers.  I will
  > also post it to other groups somewhat randomly.
In addition here are some FTP sites with geospatial data: FTP sites:
    IP Number Host Name Description
  1. 130.11.48.107 - ridgisd.er.usgs.gov - USGS GILS (/pub/gils.txt)
  2. 130.11.48.2 - isdres.er.usgs.gov - USGS FGDC, SDTS, NSDI (gdc.documents)
  3. 130.11.51.171 - dis2qvarsa.er.usgs.gov - USGS Land use/cover data
  4. 130.11.51.187 - waisqvarsa.er.usgs.gov - USGS WAIS source
  5. 130.11.52.55 - resdgs1.er.usgs.gov - USGS GIS Lab FTP site
  6. 130.11.52.92 - nmdpow9.er.usgs.gov - USGS NMD Tech Inst Docs (/public)
  7. 130.11.54.41 - eomg.er.usgs.gov - USGS Office of Energy & Marine Geology
  8. 130.11.54.6 - ncrds.er.usgs.gov - USGS Natl Coal Rescources Data System
  9. 130.118.120.28 - garlock.wr.usgs.gov - USGS Seismology & Tectonophysics
  10. 130.118.120.30 - alum.wr.usgs.gov - USGS Fault Mapping Data
  11. 130.118.24.14 - walrus.wr.usgs.gov - USGS Pacific Marine Geology
  12. 131.247.143.100 - wayback.er.usgs.gov - USGS Coastal Center
  13. 136.177.40.102 - sedproc.cr.usgs.gov - USGS Branch of Sedimentary Process
  14. 152.61.192.70 - edcftp.cr.usgs.gov - USGS EDC FTP site
  15. 192.70.225.78 - spectrum.xerox.com - Xerox Selected USGS data (DLG, DEM, GNIS
  16. 136.177.20.9 - neis.cr.usgs.gov - USGS Global Seismology & Geomagnetism
  17. 128.111.105.65 - ncgia.ucsb.edu - NCGIA reports newsletter, bib, ...
  18. 128.128.40.24 - charon.er.usgs.gov - USGS COGS files, OzGIS & pointer data
  19. 136.177.48.5 - greenwood.cr.usgs.gov - USGS Digitial data, Open file reports
  20. 129.229.20.254 - moon.cecer.army.mil - GRASS (/grass)
  21. 131.118.70.11 - midget.towson.edu - IDRISI (/pub/gis)
  22. 148.129.129.10 - info.census.gov - US Bureau of Census
  23. 130.11.51.209 - srv1rvares.er.usgs.gov - USGS Stream Flow Data (/hcdn92)

Tutorials

A tutorial in WordPerfect format and Postcript is available at: ftp://ftp.nps.gov/tutorial.gis/

This document contains a tutorial on various aspects of GRASS (Section 1.3). This document, with the tutorial, is available on non-public NASA machine :

 
	~delgado/tutor/all
In addition, the appendix includes a tutorial originally included with a Stanford workshop on GRASS usage. This document is available on non-public NASA machine :
 ~delgado/tutor/stanford
There are several WWW homepages where you can get information:

Newsgroups

If you want a overview of GIS system, there is a Net News article posted monthly in net.answers called the GIS FAQ that answers Frequently Asked Questions (i.e. a FAQ using internet termininology) about GIS systems.

There is also a newsgroup devoted to GIs systems that frequently mentions GRASS: comp.infowsystems.gis

Programming notes

Capture files were used frequently in the writing of this document: This included a recording of the typing needed to interactively accomplished a desired result. These files, as well as graphic snapshots of various screens and display outputs are availble from non-public NASA machine in the directory:
	 ~schwehr/tutor/ 
This directory contains subdirectories with the capture and graphics snapshots needed for a particular procedure e.g.:

GIS Mailing Lists

Internet lists:
  
  List Name Host Name      Send Message To List
  -------------------------------------------------
  GIS-L          listserv@ubvm.cc.buffalo.edu  GIS-L@ubvm.cc.buffalo.edu
  MAPS-L         listserv@uga.bitnet      MAPS-L@uga.cc.uga.edu
  GOVDOC-L  listserv@psuvm.psu.edu        GOVDOC-L@psuvm.psu.edu
  COASTGIS  listserv@irlearn.ucd.edu.ie
  TGIS-L         listserv@ubvm.cc.buffalo.edu
  UIGIS-L        listserv@ubvm.cc.buffalo.edu
  GEOGRAPH  listserv@finhutc.hut.fi
  IMAGRS-L  listserv@csearn.earn
  INGRAFX        listserv@psuvm.psu.edu
  BIONET         biosci@net.bio.net
  ECOLOG-L  listserv@umdd.umd.edu
  CONSBIO        listserv@uwavm.u.washington.edu
  AQUA-L         listserv@vm.uoguelph.ca
  MARINE-L  listserv@vm.uoguelph.ca
  BEN       ben@cue.bc.ca            (botany/ecology news letter)
  CP        listserv@opus.hpl.hp.com
  NSDI-L         listproc@grouse.umesve.maine.edu NSDI-L@grouse.umesve.maine.edu
GRASS Mailing list
  
  Date: Thu, 1 Sep 1994 06:01:02 -0500
  To: grassp-list@max.cecer.army.mil
  Subject: Intro to the GRASShopper lists [posted once a month]
  
  -------------------------------------------
  
  About the OGI GRASS Mailing Lists
  Office of Grass Integration
  
  [This document is sent out to the GRASS Programmers' Electronic
  Mailing
   List once a month as a reminder and introduction to the list
  manager
   software.]
  
  November 25, 1991
  
  The Office of GRASS Integration has set up a service
that will be of interest especially to those GRASS users
who have access to electronic mail.  We have set up two
e-mail lists to foster communication between GRASS Users
and GRASS Programmers.  The lists work on the principle
of "mail exploding" -- a user mails a note to one
address, and the computer at that address "explodes" the
letter, re-mailing it to everyone who subscribes to the
list.  Replies to the original letter generally go to the
list as well (if there is general interest in the
answer), but can be directed solely to the original
author if desired.  Both lists are also automatically
preserved in an archive, and users may at any time
request a file containing an archive of list messages.
  
  These lists exist to foster communication between
parties interested in the GRASS software; many CERL
employees will participate in the lists, but on an
infrequent and informal basis.  The list will be
maintained and stored on CERL computers; however, CERL
will not officially monitor the content, intent, or
accuracy of any messages that pass through the list. The
point-of-contact for the list is:
  
        grass-lists-owner@moon.cecer.army.mil
  
  The list for GRASS users and friends is called "grassu"
(short for "GRASS users"), while the list for programmers
and system-level users is called "grassp" (short for
"GRASS programmers").  Topics for discussion on the
|grassu-list| may include questions about various GRASS
applications, sources of (or reviews of) third-party
support, and various and sundry other experiences with
GRASS.  |Grassp-list| topics will include discussion of
the algorithms and intricacies of current GRASS programs,
programming hints and ideas for new GRASS applications,
and other prorgrammer-oriented issues.  Note that the
grassp-list is |not| the best (nor even an appropriate)
place to report suspected bugs in GRASS code; the current
<bug.report.sh> program and correspondance with OGI
are the preferred problem-report procedures.
  
  
  Accessing the mailing lists
  
  Each mailing list has two addresses.  The first is the
destination of messages that should be "exploded" out to
all subscribers.  This address takes the form of
  
        grassu-list@moon.cecer.army.mil 
  
  for the user's list, and
  
        grassp-list@moon.cecer.army.mil 
  
  for the programmer's lists.{1}
  
  {footnote1:These, and all other e-mail addresses in
this article, are provided in an "Internet-standard"
format; different host computers might require different
specifications of the address.  The system administrator
at each site should be able to help if the addresses here
do not work as specified.}
  
  The other important address for each list is the
destination of commands to the list-management software
(such as subscribe, unsubscribe, etc.).  They should be
sent to
  
        grassu-request@moon.cecer.army.mil 
         or
        grassp-request@moon.cecer.army.mil 
  
  as appropriate.  Multiple commands may be included in
messages.  Commands may be located in the subject line or
in the body of the letter, but there should be only one
command per line.  Upper- or lower-case letters may be
used for commands, and they may be abbreviated to simply
the first three letters if desired.  All commands are
acknowledged with return e-mail.
  
  Commands that the server will accept are:
  
  HELp
  
       This command mails back a copy of the list's help
file from the archive directory.
  
  PINg
  
       This command "pings" the mailing list, causing a
simple "I'm alive" response to be returned.  This is a
good way to check the list's address, to check if the
list is reachable from your machine, and to check if the
list is up and running.  This command is meant to be an
alternative to mailing a message to the everyone on the
list asking "Is the list working" and so forth.
  
  SUBscribe [name]
  
       This command adds [name] to the mailing list.  The
subscriber's e-mail address is taken from the "From:"
line of the subscription letter, and this address is what
is added to the list.  The [name] parameter is is used to
specify the user's real name.
  
  UNSubscribe
  
       This command removes the user's subscription from
the list.  It relies on the "From:" field of the request
letter.  If this address does not match any name in the
list, the software will notify the sender and the CERL
list-maintainer, who will resolve the problem by hand.
  
  WHO [address]
  
       If no [address] option is given, this command
returns a sorted list of list subscribers.  If [address]
is supplied, the software searches for a user with that
address and returns that user's name.
  
  DIRectory
  
       This command returns the mailing list's archive
directory.  The primary purpose of this is to see which
list-archive files are available.  The list software will
mail back a list of available files.
  
  GET [file]
  
       This command returns the named [file] from the
list's archive directory.  Case and spelling are
important; the name must |exactly| match a file shown by
the "DIR" command.  A message acknowledging the request
will be mailed to the user.
  
       If the file is short, the user will simply receive
a copy of it in mail.  For example, the command "GET LOG"
(capitalization of "LOG" is important) will cause the
list-server to mail back a copy of the most recent
messages to the list (which are always stored in the file
named "LOG").
  
       If the file is very long, the list server software
will <uuencode> the file and split it into several
mail-sized chunks. ("Uuencode" and "uudecode" are common
UNIX programs to encode files for e-mail transport.  The
local computer must have the <uudecode> program in
order to decode these files.  The acknowledgement note
will inform the user how many chunks to expect, and each
chunk will have a subject line that specifies "filename:
part X of Y".
  
  
  Examples of List Usage
  
  To "ping" the list (i.e. check that it is functioning
and reachable from your computer):
  
   Send a mail message to:
  
       grassu-request@moon.cecer.army.mil
  
  In the subject or the message body, type "PING" or
"ping" or "pin" (without the quotes; case is unimportant
and only the first three letters of commands are
significant).  The list server will reply with a brief
"I'm here" message.  To ping the programmer's list,
substitute "grassp" for "grassu" in the address above.
  
  To subscribe to one of the lists:
  
  Send a mail message to either
  
       grassu-request@moon.cecer.army.mil
            or
       grassp-request@moon.cecer.army.mil
  
  with "subscribe [yourname]" in the subject or body.
Replace [yourname] with your real name.  The list will
add the e-mail address that it finds in the "From:" field
of your letter.
  
  
  Summary
  
  These two lists are provided by OGI as a service for
the GRASS community; we hope that they will prove to be
useful resources.  We encourage you to try several
commands to experiment with the lists.  If there are any
questions, feel free to send mail to
 
       grass-lists-owner@moon.cecer.army.mil
  
  or contact the OGI by phone or mail.
  

Useful Information obtained from the Mailing List Archive:

During the VPE GRASS installation, the programmer (Kurt Schwehr) made use of the GRASS mailing list to obtain good information on a variety of topics:
Compiling Grass on IRIX 5:
Compiled versions of GRASS can be found at the location: Notes on compiling it:
  
  Date: Thu, 11 Aug 1994 13:51:12 -0500
  >From: Bill Brown <brown@diego.cecer.army.mil>
  To: grassu-list@max.cecer.army.mil
  Subject: Re: IRIX 5 GRASS
  
  
  Kurt,
  
  I compiled GRASS for IRIX 5.2 a few weeks ago.  Here's my
  compilation
  notes:
  
  ----------------------------------------------------------------
  ----------
  A few compile problems:
  
  To fix the i.points, i.ortho.photo, i.vpoints problem:
  make the function "screen" in the files "mark.c" a non-static
  function.
  (Just delete the keyword "static" where the function is defined)
  These files need to get this fix:
  src/imagery/i.points/mark.c
  src.alpha/imagery/i.ortho.photo/photo.2image/mark.c
  src.alpha/imagery/i.ortho.photo/photo.2target/mark.c
  src.alpha/imagery/i.vpoints/mark.c
  
  To compile xgrass, I needed to use these XCFLAGS:
  XCFLAGS             = -D_NO_PROTO -DXM_1_1_BC -Umips
  
  To compile v.digit, I needed to remove this dependancy from the
  Gmakefile:
  menus.o: menus.i
  
  Everything else compiled OK.
  
  xdigit did not work correctly when run.  To fix I added this
  test in the
  function init_graphics() in the file src/xgrass/xdigit/draw.c :
  (~line 76)
  
      if(XtIsRealized(canvas)){
       /* ...body of function... */
      }
  
  
  ----------------------------------------------------------------
  ----------
  This is the head file I used:
  
  
  CC                  = cc
  ARCH                = sgi5
  
  GISBASE             = /GRASS.bin/4.1/sgi5
  UNIX_BIN            = /usr/local/bin
  
  DEFAULT_DATABASE    = /data/foghorn/4.0
  DEFAULT_LOCATION    = spearfish
  
  COMPILE_FLAGS       = -O -cckr
  LDFLAGS             = -s
  
  XCFLAGS             = -D_NO_PROTO -DXM_1_1_BC -Umips
  XLDFLAGS            = -lPW
  XINCPATH            =
  XMINCPATH           =
  XLIBPATH            =
  XTLIBPATH           = -L/usr/lib
  XMLIBPATH           = -L/usr/lib
  XLIB                = -lX11
  XTLIB               = -lXt
  XMLIB               = -lXm
  XEXTRALIBS          = -lPW
  
  TERMLIB             = -ltermlib
  CURSES              = -lcurses $(TERMLIB)
  MATHLIB             = -lm
  
  #                   LIBRULE = ar ruv $@ $?
  #                   LIBRULE = ar ruv $@ $?; ranlib $@
  #                   LIBRULE = ar ruv $@ $?; ar ts $@
  #                   LIBRULE = ar rc $@ `lorder $(OBJ) | tsort`
  LIBRULE             = ar ruv $@ $?
  
  USE_TERMIO          = -DUSE_TERMIO
  USE_MTIO            = -DUSE_MTIO
  USE_FTIME           =
  DIGITFLAGS          = -DUSE_SETREUID -DUSE_SETEUID -
  DUSE_SETPRIORITY
  VECTLIBFLAGS        =
  GETHOSTNAME         = -DGETHOSTNAME_OK
  
  XDRLIB = -lsun
  
Mars Data
  From: Bill Brown <brown@diego.cecer.army.mil>
  
  > Also, is there a way to let grass georeference stuff on mars
  > or will I have to stick to keeping the data in xy?
  
  I guess it depends somewhat on what it looks like now, but I had
  some Mars data in a lat-long location & it seemed to work OK.
  (see http://www.cecer.army.mil/grass/viz/global.html)
Searching through the grassu-list archives
  
  Newsgroups: info.grass.user
  >From: ront@picea.CNR.ColoState.EDU (Ronald Thomas)
  Subject: Re: Grassu archives searching?
  Date: Fri, 12 Aug 1994 13:09:12 GMT
  Apparently-To: grassu-list@max.cecer.army.mil
  
  >is there any way to search ?through the grassu-list archives at
  >the max.cecer.army.mil site?
  >Many problems haunting a grass novice were probably grilled
  there
  >zillions of times.
  >Cheerio, Ania
  
  Don't know about searching achives on the "moon"; best bet is to
  retrieve
  the achives and search at your own site.  Your comments about
  some
  questions being asked (& answered) over & over are right on.
  
  Here is a script I use to query a copy of the archives that I
  keep:
  ---------------------------------------
  #!/bin/sh
  #This script "grassu94" searches for a 'keyword' in the
  following
  # file:  grassu.92.gz.  If it finds whatever you requested, the
  # script then prints that line or lines out on the terminal.  If
  it doesn't
  # find what you asked for, the script will tell you that it
  can't be found.
  # usage: grassu94 'keyword'
  if test $# -gt 0
  then
    arg="$*"
    gzcat $HOME/mail/grassu.94.gz | grep -i -n "$arg" | more
    es=$?
    if test $es = '0'
    then
      exit 0
    else
      echo "$*" not found in grassu.94 file.
      exit 1
    fi
  else
    echo You have not entered anything to look up.
    exit 2
  fi
  -----------------------
  The following script file can be used to delete a LOT of
  extraneous header
  lines that unfortunately come with the archives -- I estimate
  this reduces
  the size of the achives by 30%.  Of course, UNIX compress of GNU
  gzip
  should be used to keep the 'cleaned' file as small as possible,
  but that's
  a personal decision.
  
  ----------------------
  #clean
  #usage: clean 'file'
  ex $1 << EOF
  :g/^Re/d
  :g/^ id/d
  :g/^  (/d
  :g/^Se/d
  :g/^Appar/d
  :g/^X/d
  :g/^In-Reply/d
  :g/^Status:/d
  :g/^Errors-To/d
  :g/^Pre/d
  :g/^From lists/d
  :g/^Message/d
  :g/^To:/d
  :g/^From grass/d
  :g/^Content/d
  :g/^Organization/d
  :g/^Received/d
  :wq
  EOF
Histograms
  
  Date: Sun, 21 Aug 1994 02:32:29 -0500
  >From: James Darrell McCauley <mccauley@ecn.purdue.edu>
  Subject: histograms
  
  >for a rast-based image on GRASS monitor, after running a GRASS
  d.histogram
  >command, colored pie-scale histogram with category values are
  shown, as
  >general process of GRASS. My question is .....
  >Anyway, anyone help me to printout histogram graphics ?
  
  an alternative for histograms may be to use g.gnuplot:
  
  GRASS 4.1 > r.stats -c sample > sample.dat
  GRASS 4.1 > g.gnuplot
  
  gnuplot> set term postscript
  gnuplot> set out 'sample.ps'
  gnuplot> plot [1:] 'sample.dat' w i
  gnuplot> quit
  
   GRASS 4.1 > lp sample.ps
Color display in GRASS explained
  
  Date: Mon, 22 Aug 1994 14:29:55 -0500
  >From: Bill Brown <brown@diego.cecer.army.mil>
  To: grassu-list@max.cecer.army.mil
  Subject: Re: GRASS colors
  
  
  > From: kilee@CC.UManitoba.CA
  > Date: Mon, 22 Aug 94 13:02:28 CDT
  > To: grassu-list@max.cecer.army.mil
  >
  > Q: In GRASS, just 0-255 integer rast-based color coding image
  is possible,
  
  Using GRASS color files, you can specify values from 0-255 for
  EACH
  of the three (red,green,blue) color components, yielding
  something
  like 16 million possible colors.  Of course, the problem comes
  in
  trying to display your map.  There are severe limitations with
  the
  GRASS X-driver and with 256 color 8-bit monitors.  But even with
  24-bit displays, the GRASS X-driver still limits you to
  something
  like 216 colors.  (I understand that the tcl/tk viewer will let
  you
  use all your available color depth).  But for now, if you have a
  display device capable of more colors, you could use r.out.ppm
  to
  convert the GRASS raster file into a 24-bit ppm image, then
  output
  that.
  
  And just a reminder that if you're running on an SGI with 24-bit
  graphics, don't overlook the IRIS monitor driver, which will
  give
  you 3840 colors.
Running GRASS programs without starting grass
  
  Date: Tue, 23 Aug 1994 13:11:41 +0100
  To: grassu-list@max.cecer.army.mil
  Subject: Re:  problems in interface
  
  >Does anyone knows how to excute GRASS command or scripts
  >in external?
  
  I wrote the following script a couple of years ago to see how
  this
  could be done (we didn't need to in the end).  I'm sure that it
  could
  be a lot prettier but at least it's a starting point !  To find
  out what
  the variables need to be set to on your system, it's easiest to
  start
  grass and type "printenv |more" (assuming you use csh).
  
  The files:
  
  ----------<<  grassrc_test  >>----------
  GISDBASE: /data/grass
  LOCATION_NAME: tyne
  MAPSET: phil
  
  ----------<<  exec_grass  >>----------
  #!/usr/bin/csh
  
  set path= (/user/grass/sun4/bin /user/grass/sun4/scripts
  /user/grass/sun4/garden/bin /user/grass/sun4/alpha/bin
  /usr/local/bin /usr/bin /usr/ucb /etc /usr/etc /usr/lib)
  setenv GISBASE /user/grass/sun4
  setenv GISDBASE /data/grass
  setenv GISRC grassrc_test
  setenv LOCATION /data/grass/tyne/phil
  setenv LOCATION_NAME tyne
  setenv MAPSET phil
  
  g.list rast
Sample usage of r.mapcalc
  
  >From: Firma Nieuwland <nieuwlnd@sci.kun.nl>
  Date: Thu, 25 Aug 1994 09:09:37 +0200
  To: grassu-list@max.cecer.army.mil
  Subject: Re:  thresholding in GRASS
  
  Try:
  
  rmapcalc   output=if(input > 110 && input < 140 , a + bx , if
  (input>160 && input < 200, c + dx,0)
  -Olga van de Veer
Autocad DXF files
  
  Date: Fri, 26 Aug 1994 10:21:20 -0400 (EDT)
  >From: preston@malibu.dst.battelle.org (Evan Preston)
  Subject: DXF Files??
  To: grassu-list@max.cecer.army.mil
  
  We are working on a project that is using GRASS as well as a
  package called
  World Toolkit (for 3D/animation).  An ideal way to display map
  data in this
  package is by importing DXF polygons and texturing them.
  So...we are looking
  for anyone who may have some DXF files they would like to share
  (preferably
  maps of the Korean Penninsula, but we'll take anything
  reasonable in order
  to test out this concept).
  
  Please post response or email me directly.
  Evan
  
  Evan B. Preston                            # Battelle
  #
  phone:     614.424.3983                    # National Security
  Division  #
  fax:       614.424.3776                    # 505 King Ave.
  #
  internet:  preston@malibu.dst.battelle.org # Columbus, Ohio
  43201       #
  
Databases and GRASS
  Date: Tue, 6 Sep 94 07:29:39 MDT
  >From: susan@its.nbs.gov (Susan Stitt)
  To: nsegura@halcon.dpi.udec.cl (Nelson Segura Nunez)
  Subject: Data Bases and GRASS
  
  Nelson,
  
  Another item you may wish to be aware of is the pending
  availability
  of L.A.S.'s version of GRASS in TCL-TK.  They have claimed that
  they
  have created a version with an implementation of a database
  capability
  built into the GRASS software.  This software is described below
  by
  Gilles Clement who is president of LAS.
  
  >Date: Fri, 8 Jul 1994 09:54:54 -0400
  >From: gc@copernic.lasinc.qc.ca (Gilles Clement)
  >To: grassu-list@max.cecer.army.mil
  >Subject: [ANNOUNCE] tcltkgrass
  >>
  >A lot of people are asking about the status of tcltkgrass.
  Initially, we
  >thought we could have a release for mid-May.  Unfortunately,
  financing for the
  >project was slightly delayed and we decided to redesign the
  software almost
  >completely.  This is why we haven't been able to release any
  new version so
  >far.  We've been working on this project for several months now
  and we believe
  >our final beta version will be available in September 1994.
  >
  >
  >This new version is entirely redesigned using object-oriented
  development
  >technique and will have a lot of very cool new features such
  as: an enhanced
  >bugfree superviewer, a WYSIWYG postscript output for the
  superviewer, a
  >completely rebuilded GUI for every GRASS function, a visual
  interactive
  >programming environment for GRASS, a new set of converters for
  vector, raster
  >and databases, an imbedded RDBMS and georelational link
  capability and a
  >simplification of the installation procedure.
  >
  
  >As promised, the UNIX version of tcltkgrass will be contributed
  to the public
  >domain but the long awaited MSWindows version will be a
  commercial product.
  >Presently, 8 sites have shown interest in acting as alpha and
  beta testers for
  >the new version but we would like to extend that to
  approximately 20
  >organisations.
  >
  >Anybody can have the opportunity to be one of the 20 alpha test
  sites, provided
  >that their organisation is active in either development,
  applications or
  >education of GRASS and is using either a PC with MS-Windows or
  a SUN
  >SparcStation running SUN OS 4.0.x or a DEC DecStation running
  Ultrix 4.x.  The
  >alpha version will be available at the end of July.
  >
  >
  >Of course, the sites using PC's will be provided with a free
  alpha and beta
  >version.
  >
  >For those interested, please contact Valerie DesRoches:
  >vader@copernic.lasinc.qc.ca
  >
  >
  >L.A.S. inc.
  >
  >Gilles Clement, president
  >
  >p.s.: list of organisations interested in acting as alpha and
  beta testers:
  >
  >Organisation  Scientific authority     E-mail
  >PNFI (Forestry Canada)  Tom Moore tmoore@pnfi.forestry.ca
  >DREV (National Defense) Dominic Roy    droy@jupiter.drev.dnd.ca
  >CAST (Un. of Arkansas)  Jim Farley     jim@cast.uark.edu
  >USACERL (US Army)  Kurt Buehler   kurt@zorro.cecer.army.mil
  >HQ (Qubec Hydro)   Guy Moisan     moisang@envir.hydro.qc.ca
  >and a few private companies we can't name... :-)
New r.in.hdf Command
  
  Date: Thu, 8 Sep 1994 14:33:36 -0500
  >From: Bill Brown <brown@diego.cecer.army.mil>
  To: grassu-list@max.cecer.army.mil
  Subject: new r.in.hdf
  
  
  I just put an updated version of r.in.hdf on moon in
  grass/incoming .
  
  This latest version adds features to correctly import NASA AVHRR
  data & other HDF format data that uses the HDF calibration
  feature.
  
  It also allows you to list the contents of the HDF file, and
  select
  random datasets from the file for importing to GRASS. (With the
  old
  version, you had to either import only the first dataset or all
  datasets.)
  
  This version also writes some of the HDF annotation & label info
  to
  the GRASS history file.
  
  Bill B.

[Prev] [Next]
Email to:
Kurt Schwehr schwehr _at_ cs stanford edu -- Dan Delgado renata _at_ eos arc nasa gov

Kurt Schwehr