TerraGear GUI: Difference between revisions

m
Robot: Cosmetic changes
mNo edit summary
m (Robot: Cosmetic changes)
Line 8: Line 8:
Since March 2009 a '''GUI''' tool for '''[[TerraGear]]''' is available at [http://www.flightgear.org/forums/viewtopic.php?p=30238#p30238 the forum], available on Windows. This tool makes the use of commandlines redundant, through which it's easy to use for everyone not familiar with commandlines.
Since March 2009 a '''GUI''' tool for '''[[TerraGear]]''' is available at [http://www.flightgear.org/forums/viewtopic.php?p=30238#p30238 the forum], available on Windows. This tool makes the use of commandlines redundant, through which it's easy to use for everyone not familiar with commandlines.


=Manual=
= Manual =
Create a <tt>TerraGearWork/</tt> folder somewhere on your computer and create the following three folders inside that one:
Create a <tt>TerraGearWork/</tt> folder somewhere on your computer and create the following three folders inside that one:
* '''Data/''': used to collect the raw unprocessed data we need to feed the tools.
* '''Data/''': used to collect the raw unprocessed data we need to feed the tools.
Line 14: Line 14:
* '''Work/''': we will keep the files and folders here we will be generating with the TerraGear Tools.
* '''Work/''': we will keep the files and folders here we will be generating with the TerraGear Tools.


==Obtaining data==
== Obtaining data ==
====Elevation data====
==== Elevation data ====
The best elevation data currently available is from the Shuttle Radar Topography Mission (SRTM). There are two types of SRTM 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-1''': Highly accurate 1-arcsecond resolution data, for the USA.
*'''SRTM-3''': Less accurate 3-arcsecond data, for the rest of the world.
* '''SRTM-3''': Less accurate 3-arcsecond data, for the rest of the world.
From now on, we will assume that you are using SRTM-3 data. Unless otherwise noted, the process for SRTM-1 is identical.  
From now on, we will assume that you are using SRTM-3 data. Unless otherwise noted, the process for SRTM-1 is identical.  


Line 25: Line 25:
Unzip all of the .hgt.zip files using your favorite software.
Unzip all of the .hgt.zip files using your favorite software.


===Land use data===
=== Land use data ===
The final piece of data we need to download is the land-use data. In general, this is taken from the VMAP0 dataset, but other sources can be used as well. The landuse data can be split into a number of different types:  
The final piece of data we need to download is the land-use data. In general, this is taken from the VMAP0 dataset, but other sources can be used as well. 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.  
* '''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.
* '''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 [http://www.openstreetmap.org Open Street Map] for roads.
* '''Line data''': includes railroads, streams, roads. Typically VMAP0, but also [http://www.openstreetmap.org Open Street Map] for roads.
*'''Point data''': currently only used for defining towns.
* '''Point data''': currently only used for defining towns.
By far the easiest way to get this data is to download shapefiles from the [http://mapserver.flightgear.org FlightGear Mapserver]. This webpage provides access to a database, 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 <tt>Data/Shapefiles/v0_landmass/</tt> directory for example and v0_urban should be downloaded into <tt>Data/Shapefiles/v0_urban/</tt>.
By far the easiest way to get this data is to download shapefiles from the [http://mapserver.flightgear.org FlightGear Mapserver]. This webpage provides access to a database, 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 <tt>Data/Shapefiles/v0_landmass/</tt> directory for example and v0_urban should be downloaded into <tt>Data/Shapefiles/v0_urban/</tt>.


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 [http://stattosoftware.com/flightgear/tutorial/index.html a tutorial available] written by John Holden which shows you how to create your own shapefiles. Later on, you can experiment with replacing various shapefiles with other versions (GSHHS for coastline, OSM for roads etc.).
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 [http://stattosoftware.com/flightgear/tutorial/index.html a tutorial available] written by John Holden which shows you how to create your own shapefiles. Later on, you can experiment with replacing various shapefiles with other versions (GSHHS for coastline, OSM for roads etc.).


==Using the GUI==
== Using the GUI ==
Now we can finally launch the <tt>TerraGear Toolset GUI.exe</tt>. If you click on the Tools button the list of available tools will be shown. The first tool will be needed first, then the seconds and so on. This manual follows the same steps.
Now we can finally launch the <tt>TerraGear Toolset GUI.exe</tt>. If you click on the Tools button the list of available tools will be shown. The first tool will be needed first, then the seconds and so on. This manual follows the same steps.


===HGTchop===
=== HGTchop ===
The HGTchop tool uses the .hgt.zip files you have downloaded earlier on and converts it into a form that FlightGear can read. First we need to create yet another folder, this time it's <tt>Work/SRTM-30/</tt>. The processed data will be output to this folder, if you set the correct Output path.  
The HGTchop tool uses the .hgt.zip files you have downloaded earlier on and converts it into a form that FlightGear can read. First we need to create yet another folder, this time it's <tt>Work/SRTM-30/</tt>. The processed data will be output to this folder, if you set the correct Output path.  


Line 45: Line 45:
Once completed we can move onto the next tool.
Once completed we can move onto the next tool.


===Terrafit===
=== Terrafit ===
The Terrafit tool is used to process the .arr.gz files that you just created 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 Terrafit tool is used to process the .arr.gz files that you just created 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. Now simply use the browse button to point the tool to the <tt>Work/SRTM-30/</tt> folder where the .aar.gz files are stored. Press the Start button and Terrafit will converte all our data to the correct elevation data required, leaving .fit files in the <tt>Work/SRTM-30/</tt> folder.
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. Now simply use the browse button to point the tool to the <tt>Work/SRTM-30/</tt> folder where the .aar.gz files are stored. Press the Start button and Terrafit will converte all our data to the correct elevation data required, leaving .fit files in the <tt>Work/SRTM-30/</tt> folder.


===Genapt===
=== Genapt ===
What is scenery without airport in a flight simulator? If your tile does not contain any airports, you can skip this part of the manual on continue with [[#ogr-decode|ogr-decode]].
What is scenery without airport in a flight simulator? If your tile does not contain any airports, you can skip this part of the manual on continue with [[#ogr-decode|ogr-decode]].


First create the <tt>Data/Airports/</tt> directory. Then locate FlightGears <tt>apt.dat.gz</tt> file, which is usually in <tt>[[$FG_ROOT]]/Airports/</tt>.
First create the <tt>Data/Airports/</tt> directory. Then locate FlightGears <tt>apt.dat.gz</tt> file, which is usually in <tt>[[$FG ROOT]]/Airports/</tt>.
Copy this file to your newly created <tt>Airports/</tt> folder. Unzip the file before you continue.
Copy this file to your newly created <tt>Airports/</tt> folder. Unzip the file before you continue.


Line 61: Line 61:
Click the Start button. Genapts will create two sub-directories in your <tt>Work/</tt> directory, namely AirportArea and AirportObj. These define the definitions of the airport layout and any objects present (e.g. windsocks and beacons). Right, that’s the airports sorted out.
Click the Start button. Genapts will create two sub-directories in your <tt>Work/</tt> directory, namely AirportArea and AirportObj. These define the definitions of the airport layout and any objects present (e.g. windsocks and beacons). Right, that’s the airports sorted out.


===ogr-decode===
=== ogr-decode ===
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:
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.
* Filename of the shapefile (without the .shp extension for shape decode) you want to decode.
*Directory you want to write the data to.
* Directory you want to write the data to.
*Material type to use.  
* Material type to use.  
Each of the shapefiles maps onto one of the material types defined in your <tt>[[$FG_ROOT]]/materials.xml</tt> files. The mapping is pretty obvious, e.g. v0_roads maps to Roads etc.
Each of the shapefiles maps onto one of the material types defined in your <tt>[[$FG ROOT]]/materials.xml</tt> files. The mapping is pretty obvious, e.g. v0_roads maps to Roads etc.


'''Warning: v0_landmass MUST be mapped onto the type Default.'''  
'''Warning: v0_landmass MUST be mapped onto the type Default.'''  
Line 72: Line 72:
So this is what we need to begin. A shapefiles directory in your <tt>Data/</tt> folder. Then for each of the different shapefiles you are going to create a folder with that name in the <tt>Work/</tt> directory. see the image below for example.
So this is what we need to begin. A shapefiles directory in your <tt>Data/</tt> folder. Then for each of the different shapefiles you are going to create a folder with that name in the <tt>Work/</tt> directory. see the image below for example.


===fgfs-construct===
=== fgfs-construct ===
The fgfs-construct tool brings all your gathered data together, throws it in a washing machine and spits it out the otherside in format ready for use with FlightGear.
The fgfs-construct tool brings all your gathered data together, throws it in a washing machine and spits it out the otherside in format ready for use with FlightGear.


Line 81: Line 81:
The folders and files in the <tt>Output/</tt> directory are ready to use scenery. You can set the scenery path of FlightGear to this directory to check if the scenery is generated correctly.
The folders and files in the <tt>Output/</tt> directory are ready to use scenery. You can set the scenery path of FlightGear to this directory to check if the scenery is generated correctly.


=GUI development=
= GUI development =
The GUI is currently undergoing a complete rebuild and re-written in [http://qt.nokia.com Qt]. This will allow us to build the GUI on multiple OSes (Mac OS X, UNIX, Windows).
The GUI is currently undergoing a complete rebuild and re-written in [http://qt.nokia.com Qt]. This will allow us to build the GUI on multiple OSes (Mac OS X, UNIX, Windows).
Feel free to add feature requests and/or bug reports.
Feel free to add feature requests and/or bug reports.


===Requested features===
=== Requested features ===
* <strike>--tile-id option in fgfs-construct, to easily generate just one tile which can be used for fast scenery in-cooperation.</strike>
* <strike>--tile-id option in fgfs-construct, to easily generate just one tile which can be used for fast scenery in-cooperation.</strike>
* <strike>A larger list or maybey a dropdown menu with the ogr-decode tool to select shapefiles and material mappings. Right now it's very hard and takes a long time to search through the list for the correct shapefiles/materials.</strike>
* <strike>A larger list or maybey a dropdown menu with the ogr-decode tool to select shapefiles and material mappings. Right now it's very hard and takes a long time to search through the list for the correct shapefiles/materials.</strike>
Line 93: Line 93:
* A topmenu showing all the tools, so there's no need to return to the mainmenu every time you continue to the next step.
* A topmenu showing all the tools, so there's no need to return to the mainmenu every time you continue to the next step.
* Creating automatically all needed folders for shapefiles and the decoded ones. This includeds automated decoding all shapefiles in a directory.
* Creating automatically all needed folders for shapefiles and the decoded ones. This includeds automated decoding all shapefiles in a directory.
* Maybe error reports possible? So you get a message when a certain file isn't found, or a certain path isn't set. Right now it only appears in the console, but it's hard to read the fast scrolling text.
* Maybe error reports possible? So you get a message when a certain file isn't found, or a certain path isn't set. Right now it only appears in the console, but it's hard to read the fast scrolling text.


===Bug reports===
=== Bug reports ===
* Decoding with points width gives no output.
* Decoding with points width gives no output.
* <strike>Just using airport ICAO in genapts gives no output.</strike>
* <strike>Just using airport ICAO in genapts gives no output.</strike>


[[Category:Scenery enhancement]]
[[Category:Scenery enhancement]]