TOPOS 3D
3D Map Generator and Viewer
Copyright: Light and Magic 1996-2003
e-mail: frankp@neagenia.gr

* OVERVIEW

Topos 3D is a map relief generator program. It scans the picture of a geophysical map and converts the different colors into altitudes, generating a 3D-relief file (or heightfield). This file can be in 3DF (native) format, which can be viewed by the in-built viewer, ASC (3D Studio), RAW triangle format (Persistence of Vision - POV Raytracer, Polyray Raytracer, Moray and POVCAD 3D modelers etc.), or PLG object format (REND386, VR BASIC - if you are familiar with these programs then you know the format too). The map picture itself, should be in BMP format and 4-bit (16 colors) color resolution, preferably not dithered. You can acquire it by scanning, painting or fractalizing. It doesn't even have to be the picture of a map at all (you may try some very interesting effects with non-map BMP's). Although the picture must be a 16-color one, the program works properly only in TrueColor (16.7 million colors) screen mode.

* GENERATOR USAGE

1. Select Menu > Open BMP image file...

2. From the Open BMP image file Dialog Box select the file SAMPLE.BMP. You have now the map image on your screen. The different colors represent different altitudes.

3. Left click on a spot in the map. A small dial appears allowing you to enter the appropriate altitude value for the color of the map point clicked. After inserting a value, click the "O" button to set the value or the "X" button to cancel. If you set the value, you can see it displayed in the corresponding box (the box labeled with the color selected) of the Control Panel (on your right). Alternatively, you may set the altitude values directly in the corresponding boxes of the control panel. Do the same thing for all the colors appearing on the map. If you want some of the map colors to be ignored (map signs, roads etc.), just leave the corresponding box empty. IMPORTANT! An empty box is not the same as a box having a value of 0! Now all the points of the map having the same color are assigned with the same altitude. 

4. Set the Water value (maximum "flooding" altitude), Lawn value (maximum vegetation altitude), and Snow value (altitude at which snow begins). If you don't want water flooding, leave the Water value at 0 and set the lowest terrain altitude at some higher value (e.g. 50). The relative values are these that count. Negative values are not allowed anywhere. For this sample map, good values are 0, 500 and 1000 for Water, Lawn and Snow levels respectively.

5. Set the Map width and the Map height (you should know these values from the original map). It is important that you set all the values (altitudes, width, height, Interval) in the same units (eg. meters or feet). The values for this sample map are 7680 meters for both.

6. Set the sampling Interval, that is the distance between sampling points on the map. For this sample map, a good value is 200 meters. The smallest the interval, the finest the 3D-relief. Warning! Setting too small an interval slows down both 3D generation and 3D rendering and uses up memory. Avoid intervals small enough to result in 1 pixel sampling or you shall have unexpected rendering effects. If you set a very small interval you get a "division by zero" message.
For the PLG (REND386) format, you generally use higher interval values (e.g. 400) or REND386 won't be able to read the generated file.

7. Select the output format checking one of the radio buttons under "Output".

8. If  you are done, press the big button with the globe on the control panel, or select Menu > Generate 3D file.... You are presented with a dialog box where you can name the output file. For now name the output file SAMPLE.3DF. Press Save and wait until the mouse cursor changes back from hourglass to arrow. Generation is finished. You can repeat the procedure setting different values or selecting a different output format.

* 3D RENDERER AND VIEWER USAGE

1. Select Menu > Open 3D file...

2. From the Open 3D file Dialog Box select the recently created file SAMPLE.3DF. You have now the 3D-relief presented in a window.

3. On the bottom panel of the display window you have a set of controls. Starting from the left you have the elevation control (degrees over/beneath the horizon) and the azimuth control (degrees left/right). By default, these controls apply to the Observer. If you want them to apply to the Sun, just check the corresponding radio button. If you don't want shading (colors), check the Wire check box (faster rendering). If you don't want the image updated at every change, uncheck the Autorender check box. If you want to zoom in or out, press the corresponding + and - buttons. Finally, if you have not selected Autorender, press the Render now! button each time you want to re-render the scene.

4. You can save the image displayed as a bitmap (BMP) by selecting Menu > Save 3D picture as... and naming your bitmpap in the Save BMP file Dialog Box that appears.
