Enjoying GRASS

Geographic Resources Analysis Support System
[GRASS Banner]

Bernhard Reiter
Geography 525 GIS
Final Project -- Written Documentation 19.5.1999

Forword

This final project for the GIS course is different from most other final projects, because it is not an exercise to show my ArcView skills. In agreement with the lecturer I focussed on a different technological question, the presentation of a Free Software GIS software called GRASS. My final map therefore is a screenshot. Some information I refer to is directly available on the internet and I just link to it instead of putting in the work to rephrase it. The answers to the required questions are given in the "Results" section, though the last two are answered throughout the text.

Why?

Goals:

Get GRASS running; demystify it

A lot of people have talked about GRASS but I could not find anybody who actually used it. Therefore GRASS was more like a legend and I had no idea whether it really run and would be useful or not. When I saw the new version (5.0beta) announcement and talked to my lecturer the time was right to set out and see it with my own eyes.

Learn a another tool to do the same task

Computer tools are about solving a special task. Therefore you need to know something about it. If you learn only one computer program, you easily limit yourself with the available capabilities. Learning another software for the same task will help to keep the knowledge implementation and vendor independent.

Show to capabilties to the class

The geography 525 class is my audience. This includes Patti Day the instructor and Tosca Hoffman the TA. My questions were simply how GRASS would look like in comparision with ArcView and what it advantages might be. Being a person, who is convinced about the importance of Free Software this is also a good possibility for me to plug in some advocac for this along the way.

Focussing on technology not on the GIS applications

Most of the class dealed with rather concrete problems on how to use one software product. Most students will sooner or later have to make decisions about different GIS Software packages. The history of GRASS and my focus on software technology will add another aspect to the general learning goals.

What is GRASS

The GRASS Mini-HOWTO by David A. Hastings, which also talks about how to get the old version(4.1.x) compiled and running on GNU/Linux Systems, explains the history of GRASS quite nicely.

History

Promised Capabilties

The GRASS Fact Sheet and other sources promise a great number of capabilities. GRASS consists of a bunch of small programs, which work together.

In version 4.2 the following numbers of programs were present for the different tasks.

Because GRASS was Public Domain for a long time and collaboration with with different communities was pushed a lot of analysis capabilties were contributed.

Getting it to run?

Okay, I know that GRASS 5.0beta is a Unix program, were to I find more information?

Internet

Of course on the World Wide Web: It turns out, that both servers do not have a very good informational structure and you need quite a bit time to find what you want to know.

Source Code

But they do have the source code! This is the construction plan of the software, some people call it the software itself.

community

The power of Free Software lays in its extraordinary community. Without it, there would be no free GIS package as GRASS and no tutorial or help on how to install, build, program or use it.

Growing some samples

GRASS is a terminal, text command based program, but can output to an X11 server. We some X11 server programs for Win32 installed in the Bolton Computer Labs and I had one in my office. When you first run it, it looks pretty bare bones bt the list of manpages! is shocking.

But there was help in form of a new frontend to this command interface, which made learning and playing around a bit easier. Here are some screenshot results:

A typical session

Raster

Example data from the GRASS Seeds Beginners Tutorial 12km x 12km North west Leicestershire, England.
Basic geographical data: from the Bartholomew 1:250000 digital map data
image: standard Landsat Thematic Mapper (TM) Band 4, captured 8th July 1984
DEM/Contour data: digitised manually from a 1:50000 scale paper map source

You can see two GRASS graphics windows (x0 and x1). The first displays a raster image from a satellite shot. A few raster informations have been overlayed such as roads, rivers and urban areas. The main window with the name "TCLTKGRASS" let you select commands from the menu which then pop up there own subwindow for the input of parameters. You can see some submenues in the upper right corner. Three subwindows for GRASS programs are shown: d.erase, d.legend and d.rast. If the run button on one of this subwindows is pressed its program runs with the given parameters just as it would run on if you typed it onto the command line.

Vector

TIGER Census Data. Extracted by Bill Hughes. (Jefferson County?)
Again you see two graphics windows both showing the vector maps resulting from plotting various TIGER file tracks. The d.what.vect output shows the results of a query operation.

Vector/Sites

Two graphics windows, as before, but this time the second one is zoomed in and site markers are plotted to the x1 window.

Fancy

Other people of course used GRASS for more impressing applications and research. Here are some examples to give a visual impression.

d.3d

The d.3d command can use z-values to drap an image over a surface giving it a 3D look. I used the DEM information from my first example to create the following output. Note that you see the command shell in the lower right corner. This is were you still can type commands manually which is very handy, if you want to use a command more as once. This time I left the Windows command bar in at the bottom to show that this runs via the X11 server (called X-Win32) on the Bolton Lab.

Moving Fun

Even more impressing are little movies generated out of several GRASS output images: (Having had so many business marketing like guest talks about different ESRI products, I could not resits to just show some visually impressing results without much scientific explanations.)

Free Software is Important for Science & Education

So many people have talked or written much about Free Software, but it still seems to be quite unknown to some people. The concept of Free Software is very important for Science and Education in general. Here are some reasons, you probalby find a lot of literature about this on the WWW if you are interested in the defails.

Conclusion

Results

My presenation about GRASS was well received at the last lecture of the spring term and therefore my final project is a success. I still could learn more about GRASS itself, but that is easier to do, now because I took the inital effort to make it run. My software enhancements will help the GRASS community and my presentation will hopefully inspire the students of the course to try other GIS packages. It therefore might help various research topics of these two groups.

Outlook

Discovering more about GRASS

There is still a lot to learn about GRASS and I will peel into that program as time allows to do most of my GIS work. I am still not at the level that I can produce fancy maps fast. Once I aquire some familiarity with the input programs this will probably change.

GRASS on the UWM alphas?

In principle GRASS5.0beta could be installed on the alpha machines for all people. But there are a few problems with this. The 64 bit version cannot read the portable vector format files other GRASS versions produce yet and the codebase is not stable enough to really ensure that all parts run. Anybody who has time to play with it on his own computer(running GNU/Linux) or here on the alphas should check back with me so we want arrange it.
archived: December 2003 - page revision: Tue May 25 13:35:29 CDT 1999
Part of Bernhard Reiter's archive.

[ Archived: Bernhard's UWM Homepage ]