TerraGear GUI

From FlightGear wiki
Revision as of 15:23, 15 September 2009 by Gijs (Talk | contribs) (Rewriting the manual for the TerraGear GUI)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search
TerraGear GUI
Developed by Alex Park
Initial release March 24, 2009

Since March 2009 a GUI Tool for TerraGear is available at the forum. This tool makes the use of commandlines redundant, through which it's easy to use for everyone not known with commandlines.


Create a TerraGearWork/ folder and inside that folder create three more named:

  • Data: used to collect the raw unprocessed data we need to feed the tools.
  • Output: used at the very end and is where your newly processed scenery is finally stored.
  • Work: we will keep the files and folders here we will be generating with the TerraGear Tools.

Obtaining data

Elevation data

The best elevation data currently available is from the Shuttle Radar Topography Mission (SRTM). There are two types of SRTM data:

  • SRTM-1: Highly accurate 1-arcsecond resolution data, for the USA.
  • SRTM-3: Less accurate 3-arcsecond data, for the rest of the world.

From now on, we’ll assume you are using SRTM-3 data. Unless otherwise noted, the process for SRTM-1 is identical. You can get download appropriate data at ftp://e0srp01u.ecs.nasa.gov/srtm. You want all .hgt.zip files covering your region of interest. Depending on the size of your scenery, there may be quite a few. Make sure you download ALL the ones which cover your area of interest. Create a new folder in your TerraGearWork/Data/ folder called SRTM-30/. Download the .hgt.zip files there. The reason why the directories are called SRTM-30 is because genapts will look for a few known, hardcoded directories in it’s working directory. SRTM-30 is one of them and this is the least confusing in that list.

Unzip all of the .hgt.zip files.

Land use data

The final piece of data we need to generate is the land-use data. In general, this is taken from the VMAP0 dataset as shapefiles from the scenery database mapserver, but other sources can be used. The landuse data can be split into a number of different types:

  • Landmass: separates the land from the sea. It is used as a mask for all other data. The most common used is the VMAP0 Landmass, but GSHHS can be used as well.
  • Land use data: defines whether a piece of land is forest, urban, sand, lava, glacier etc. These are usually VMAP0 data, defined as polygons.
  • Line data: includes railroads, streams, roads. Typically VMAP0, but also Open Street Map for roads.
  • Point data: currently only used for defining towns.

By far the easiest way to get this data is to download shapefiles from the FlightGear Mapserver. This provides access to a database of information, and allows you to download the specific shapefiles for your scenery area. Click on the Download Shapefiles link, enter in the bounding box of the scenery you want to generate, select the shapefiles you want, and click download. For your first scenery generation, you want all of the ones listed under VMap0 (with prefix v0_). Download each of them into a seperate Data/Shapefiles directory. The v0_landmass shapefiles goes into a Data/Shapefiles/v0_landmass/ directory for example and v0_urban should be downloaded into Data/Shapefiles/v0_urban/.

You can load these shapefiles into a GIS editor such as QGIS or GRASS to view and edit. This is a good idea to verify you have the correct files! There is a Fantastic Tutorial by John Holden which shows you how to create your own shapefiles here.http://stattosoftware.com/flightgear/tutorial/index.html Later on, you can experiment with replacing various shapefiles with other versions (GSHHS for coastline, OSM for roads etc.).

Using the GUI

As you can see, if you click on the Tools button the list of available tools is shown. They are in order of use if we were to start from the beginning of the process, so are they in this manual.


The HGTchop tool uses the .hgt.zip files you have and converts it into a form that FlightGear can read. We need to first create another folder, this time under the Work/ directory call SRTM-30/. This is where the processed data will be output to.

A command box will open and you will see the tool working away. It will produce numerous .arr.gz files which is quite rough data and requires more refinement with Terrafit.

At the moment you need to repeat this step for all the files in your Data/SRTM-30/ folder. Once completed we can move onto the next tool.


The Terrafit tool is used to process the .arr.gz files into a more refined data. The data collected so far would show flat land and requires more work, so lets use Terrafit to enhance our data.

The three boxes Min Points, Max Points and Max Error can be left blank, unless you are an advanced user. The tool currently uses the default setting for these figures which are sufficient for use in FlightGear. with this tool simply use the browse button to point the tool at the Work/SRTM-30/ folder where the .aar.gz files are stored. Terrafit will extract .fit files which has converted all our data to the correct elevation data required.


First create a folder in Data/ called Airports/. Locate FlightGears apt.dat file which is usually in $FG_ROOT/Airports/. Copy this file to your newly created Airport folder (you will need to unzip it) Once you have completed this we can use the Genapts Tool.


Now we need to decode the shapefiles into TerraGear format. This is done with the ogr-decode tool. There are several important command-line arguments to OGR decode:

  • Filename of the shapefile (without the .shp extension for shape decode) you want to decode.
  • Directory you want to write the data to.
  • Material type to use.

Each of the shapefiles maps onto one of the material types defined in your $FG_ROOT/materials.xml files. The mapping is pretty obvious, e.g. v0_roads maps to Roads etc.

Warning: v0_landmass MUST be mapped onto the type Default.

So this is what we need to begin. A shapefiles directory in your Data/ folder. Then for each of the different shapefiles you are going to create a folder with that name in the Work/ directory. see the image below for example.