Erstellen von Elevated Mesh Szenerien - ein Tutorial

insbesondere für Benutzer von FSRail und FSMesh

von Burkhard Renk

Vorweg: Das Folgende ist das Ergebnis eines Lernprozesses, der bei weitem nicht abgeschlossen ist. Ich wurde von vielen Freunden gebeten, soviel wie ich weiß, denke und vermute aufzuschreiebn wie möglich. Einiges mag sich später als falsch erweisen - es irrt der Mensch, solang er strebt.

Mit dem Erscheinen von FS2000 hat sich die Geländestruktur vollständig geändert. Anstatt flacher Kacheln -Tiles genannt, auf denen sich dreidimensionale Objekte erheben können, besteht der Grund nun aus einem im dreidimensionalen Raum aufgehängtem Netz, dem "Elevated Mesh". Wenn im folgendem von "Mesh" geredet wird, meine ich genau dies. Um einen Vergleich mit dem Bau von Modellbahnen zu ziehen: FS5-FS98 bauten auf flachen Brettern, FS2K-FS??? bauen frei im dreidimensionalen Raum.

Praktisch alle Zusätze, die es für FS5, FS95 und FS98 gab, sind dadurch obsolet geworden. Sobald es sich um Grundszenerie handelt, gibt es keine Möglichkeit eines Patches oder Updates, es muß von Grund auf neu gebaut werden. Das war schnell klar. Um den Übergang einfacher zu machen, gab Microsoft die "Flatten"-Befehle mit, die es erlauben, eine gewisse Fläche auf einer definierten Höhe platt wie eine Briefmarke zu machen. Das sieht dann zwar nicht echt aus, erlaubt aber wenigstens, die alten 3D-Objekte, Flughäfen, Häuser, 3D-Berge, FS98-artiges-Mesh auf diese Ebenen zu setzen und so die alten Zusätze weiter zu verwenden. Die meisten Zusätze, die heute in den Geschäften zu kaufen sind, benutzen diese Technik und damit FS2000 als nicht anderem als einem langsamen FS98-Emulator, der, wenn es hoch kommt, wenigstens 16bit Texturen darstellt.

Sehr schnell war klar, daß die in FS98 vorhandenen Befehle für das Netz (TexRelief...) für das neue Netz nicht benutzt wurden. Welche Dateien die Netzinformation enthalten, und wie sie aufgebaut sind, ist unbekannt. Ich vermute, es sind die Dateien unter \scenedb\. Weder gibt es zur Zeit ein Tool, daß diese lesen kann, noch kann man diese schreiben oder verändern. Es wurde bekannt, daß dieses Mesh auf Höhenpunkten im Abstand von etwa 1 km beruht. Wenn man weiß, daß die einzigen frei weltweit verfügbaren digitalen Höhendaten im 30-Sekunden-Raster existeiren, welches etwa 900 m entspricht, ist davon auszugehen, daß diese auch für das FS2000-Mesh verwendet wurde.

So vergingen die ersten Monate des Jahres 2000 mit Probieren, was man mit dem Flatten erreichen kann. Zaghafte Modifikationen des Terrains konnte man durch Elevation Polygone erreichen.

| Größtes Problem sind oft die grobe Auflösung des Netzes. Zwischen zwei 900m entfernten Höhenpunkten ist viel Platz, da paßt ein steiler Felsen und ein tiefes Tal rein. Gerade die langgezogenen, tiefen Täler sind ein besonderes Problem - man sehe sich den Rhein oder den Nil im FS2000 an. Ob die Meshpunkte unten im Tal oder oben auf den Bergen liegen, ist bei steilen Kanten rein zufällig, und dazwischengelegte Vierecke müssen wild im Raum springen. Mit einem 1-km Netz kann man nur Objekte, die viel größer als 1 km sind, also mindestens 5km, sinnvoll formen. Dieser Auszug aus FSMesh - ein Teil des Rheintals - zeigt die Wurzel des Problems. Man sieht die Netzpunkte des 30-Sekunden Netzes, die Höhe ist in Farben kodiert. Blau ist unter 100m, braungrün oberhalb 400 m. Bei genauer Betrachtung sieht man den blauen Streifen des Rheins. Wenn man aber nun sich überlegt, was irgendein Algorithmus aus diesen wenigen Information macht, ist klar, daß kein ordenlich geformtes Tal entstehen kann - es ensteht eine Hügellandschaft mit eingesprengten Seen auf unterschiedlicher Höhe. Da hilft alles Schimpfen auf die "böse Microsoft" nichts - aus den Daten ist nicht mehr zu holen.

Die Situation änderte sich im Sommer 2000. Microsoft veröffentlichte - in der Reihe der SDK (Software Developper Kit?) - den Terrain SDK. Wer hoffte, daß darin Information zu finden sei, die es erlaubt, die Mesh-Dateien zu lesen, war enttäscht. Der SDK bestand aus vier kleinen Programmen und einem Tutorial, daß beschreibt, wie man diese nutzt. Im folgenden gehe ich davon aus, daß der Leser sich diese Tools geladen hat und für eigene Experimente zur Verfügung hat. FSRail und FSMesh-Benutzer sollten sie in das ..\Terrain - Verzeichnis kopieren. Die folgende Tabelle beschreibt die 4 Programme - für weitere Details muß man das SDK-Tutorial lesen.

Programm | Eingabedateien | Ausgabedateien | Funktion
resample.exe | DEM-Datei INF-Datei | TMF-Datei | Ein DEM, dessen Eigenschaften in der INF-Datei beschrieben werden, wird gelesen und in eine TMF-Datei umgewandelt. Die Auflösung der TMF-Datei wird mit dem Parameter LOD in der Inf-Datei festgelegt.
tmfcompress.exe | TMF-Datei | TMF-Datei | Eine TMF-Datei wird komprimiert. Ich habe den Eindruck, daß dabei benachbarte kleine Flächen gleicher Ausrichtung zu größeren zusammengefaßt werden.
tmfmerge.exe | mehrere TMF-Dateien | TMF-Datei | Faßt mehrere TMFs zusammen. Von mir bisher nicht benutzt.
tmf2bgl.exe | TMF-Datei | BGL-Datei | Vor den TMF-Block wird ein BGL-Kopfteil geschrieben - diese Datei kann FS2000 benutzen.

| Zur Erklärung: DEM heißt wohl Digital Elevation Map und ist ein Feld von Höhenangaben im festen Raster. TMF ist ein Terrain Mesh File und ist eine Art DEM plus zusätzlicher Information plus zusätzlicher eingebauter Komprimierungsoption. Die nebenstehende Tabelle ist dem SDK entnommen und zeigt die Bedeutung des Parameters LOD. Die CPU-Last und der Speicherverbrach vervierfacht sich bei Erhöhung von LOD um 1, falls nicht die meisten Flächen bei dem Kompression zusammengefaßt werden können.

Das Erstellen von Mesh-Szenerie geht damit wie folgt:

- Zu einem DEM schreibt man eine INF-Datei, die seine Lage, Auflösung, Format usw. beschreibt. Dies ist eine reine Text-Datei.
- Mit "resample.exe beispiel.inf" wandelt man diese um in eine TMF-Datei.
- Mit "compress beispiel.tmf beispiec.tmf" komprimiert man diese.
- Mit "tmf2bgl beispiec.tmf beispiel.bgl" erzeugt man eine BGL-Datei.

Also ist alles, was man braucht, ein DEM. Das ist auch eigentlich kein Problem. Bekanntlich ist die Welt der EDV und des Internets streng demokratisch und besteht aus 51 Regionen. Für alle 50 US-Bundesstaaten gibt es höherauflösende DEMs (im 15-Sekundenraster oder im 5-Sekundenraster.) Zum Ende des Sommers gab es dann auch für die meisten dieser 50 Staaten breits hochauflösende Szenerien, die zu fliegen eine große Freude ist - wenn die Hardware mithält - und die zeigen, was in der Terrain-Maschine von FS2000 steckt.

Ein Vergleich der mit dem SDK erzeugten BGLs mit Dateien von der FS2000-CD scheint nahezulegen, daß das SDK-Mesh eine andere Struktur als das CD-Mesh hat, das CD-Mesh also nur eine vorübergehende Notlösung war - vielleicht wurde es deshalb nie dokumentiert?

Noch offene Fragen? Ach ja, die 51. Region namens Rest der Welt. Wer so glücklich ist, in einem US-verwalteten Land zu leben, z.B. Guam, hat auch kein Problem. Und - gibt es ausserhalb überhaupt noch echte Menschen? Kann doch nicht sein, daß eine DEM-Datei von 5 Sekunden Auflösung pro GradxGrad 5000 britische Pfund kostet.

Es gab verschiedene Versuche, höherauflösende Daten zu bekommen, aber sie scheinen für Europa nicht zu existieren, oder sie sind Verschlußsache. Die Endeavour hat im letzten Winter die ganze Erde im 1-Sekunden-Raster vermessen, bis diese Daten analysiert sind, wird es 5 Jahre dauern. Und ob es sie dann frei gibt? Es gibt in Deutschland DHM-Dateien im 100m - Raster, aber ich kann nicht sagen, wie man dan diese kommt.

Also muß man aufgeben oder sich was einfallen lassen. Die Idee, die ich hier vorstellen möchte, ist die folgende: Es gibt im Buchhandel preiswerte CDs mit hochauflösenden topografischen Karten. Im Maßstab 1:50000 sind 2 cm=1km oder 1 pixel=ca.10m. Das ist genauer als die Endeavour Daten, und jetzt verfügbar. Also muß ein Weg gefunden werden, die Höheninformation aus dieser Quelle in DEM-Form zu bringen. Dabei liegt die Höheninformation meistens in Form von Höhenlinien vor, plus einiger Gipfel.

Nun besaß FSRail bereits einen Weg, Information von Hintergrundbitmaps in Form bunter Marker zu vektorisieren. Es war nicht viel neuer Code nötig, um mit dem gleichen Interface trigonometrische Punkte, die aus geografischer Breite, Länge und Höhe bestehen, mit einem Mausklick erzeugen zu könnnen. Diese Punkte - als Vektoren unabhängig von jedem Gitter, können ein Gelände genau beschreiben. Sie sind Bestandteil des FSRail-Codes, werden mit diesem abgespeichert. Je mehr man davon legt, umso genauer beschreibt man das Terrain.

Ein Rechenalgorithmus berechnet dann aus diesen Vektoren ein neues DEM, dieses wird zusammen mit der dazugehörigen INF-Datei gespeichert. Die Programme aus dem SDK verwandeln dieses DEM in eine BGL-Datei.

| Schon der allererste Versuch war verblüffend. Hiefür hatte ich das Flußufer mit blauen Fähnchen markiert, entlang des Ufers trigonometrische Punkte von 67m Höhe gelegt, die für dieses Tal characteristische 200m - Höhenlinie sowie einige Berggipfel in Form von trigonometrischen Punkten eingetragen, ein 256x256 DEM erzeugt, die Flußpolygone zwischen den Fähnchen nachgezogen, die MS-Szenerie ausgeschaltet - fertig. Ein paar Stunden Arbeit (nach den vielen Programmierstunden für das Programm). Einen wesentlich größeren Ausschnitt gibt es - mit fahrenden Zügen im Flußtal - unter www.fsrail.com zum Laden.

Einige Tips:

Will man eine Fläche exakt eben haben, z.B. um ein Grundpolgon oder eine Bahnlinie ohne hohen Damm oder einen Flughafen ohne Flatten zu legen, sollten die diese Fläche umgebenden trigonometrischen Punkte dicht beisammen liegen - dichter als der Abstand zu nächsten Höhenlinie. Eine hohe DEM-Auflösung macht nur dann Sinn, wenn wirklich viel dichte Information vorhanden ist. Bei 512x512er DEM und 6000 trigonometrischen Punkten dauert die Berechnung des DEM etwa 5 Minuten auf meinem System. |

Eine wesentlche Einschränkung: Mesh-Szenerien kann man nach meinem Wissen nicht ersetzen, wähend FS2000 läuft. Versuche, es doch zu tun, werden bei Windows 98 in der Regel mit Reboots im abgesicherten Modus bestraft - und dann war das Schicksal noch immer gnädig mit einem.

Nun ist FSRail dazu gedacht, neben dem Speicherfresser FS2000 gleichzeitig laufen zu können. Eine Erweiterung von FSRail auf 1024x1024er Mesh hätte seine Größe fast verdoppelt. Eisenbahnen in so schwierigem Gelände werden eh meistens kleiner als 20x20 Minuten pro Szenerie sein, sodaß 512x512 ein DEM besser als 4 Sekunden erzeugt - genug für Thunderbird und Pentium IV. Deshalb entschied ich mich, für den Entwurf größerer Meshs ein separates Programm - entrümpelt von allem "Eisenbahnballast" - in der Entwicklung abzuzweigen - FSMesh.

Die aktuelle Version von FSMesh kann DEMs bis zu 2048x2048 erzeugen. Auf Kosten einiger weiterer MB Speicher konnte der Rechenalgorithmus erheblich beschleunigt werden.

Da FSMesh auf Speichergröße keine Rücksicht nehmen muß, bekam FSMesh eine weitere Fähigkeit: Den Import von USGS-DEMs. Auch wenn die 30 Sekunden an manchen Stellen völlig unpassend sind - an anderen Stellen mögen sie völlig reichen. Wenn Sie von USGS ein DEM geladen und ausgepackt haben, bekommen Sie eine .DEM-Datei von 57 600 000 bytes und eine .HDR-Datei. (Überprüfen Sie die Zahl der Bytes, ich hatte einen Entpacker, der mir den File geringfügig zerstümmelte und ein paar bytes einschob). Erzeugen Sie in FSMesh eine Szenerie mit den gewünschten Koordinaten von z.B. 30x30 Minuten. Nun wählen Sie "Import" "USGS DEM", wählen das DEM aus, FSMesh liest den Header und das DEM und packt die DEM - Punkte, die sich innerhalb der Grenzen der Szenerie befinden, als trigonometrische Punkte in die Szenerie. Damit haben Sie ein grobes Raster von Höhenpunkten - immerhin das Beste, was es zur Zeit frei gibt. Sie können jetzt diese verändern oder durch neue Punkte ergänzen. So können Sie z.B. erst mal die wesentlichen Teile bearbeiten, z.B, das Tal eines großen Flusses. Das Hinterland haben Sie schon in einem groben Raster. wenn Sie wollen, können Sie später in die Seitentäler vordringen. Ferner haben sie einen Rand, der wahrscheinlich glatt an die CD-Szenerie paßt.

Ich vermute, daß die Bildrate solange erträglich bleibt, wie nur ein kleiner Teil der Szenerie hoch detailiert wird und die meiste Fläche einfach bleibt.

Dieses ist ein sehr neues Tool, es gibt noch einige offene Fragen zu klären. Bitte, senden Sie mir Ihre Beobachtungen. Auch wenn Sie irgendwelche Daten haben, die sinnvoll nach FSMesh importiert werden können, bin ich gerne bereit, weitere Importfilter zu schreiben.

Arbeiten mit FSMesh

Im Folgenden wird beschrieben, wie mit Hilfe von FSMesh eine Szenerie eines Kratersees entsteht, am Beispiel des Laacher Sees in der Eifel in Deutschland.

Wir brauchen folgende Materialien:

- FSMesh
- Eine hochauflösende digitale oder Papier - Karte, z.B. die 1:50000er Serie TOP50.
- Die zu dieser Region gehörende DEM-Datei vom USGS.
- Die Terrain SDK Programme

Die USGS-Dateien kopieren wir in den ..\terrain Ordner. Von der Karte machen wir einen Screenshot als Bitmap (wobei wir den Rand abschneiden), hier ein stark verkleinertes Besipiel. Wir notieren uns von der Karte die Koordinaten der vier Ränder, Kartensoftware hat den Vorteil, uns diese Koordinaten bei Mausbewegung anzuzeigen. Die Ränder sind in unserem Beispiel:
Norden | 50:25:46
Süden | 50:23:26
Westen | 07:13:51
Osten | 07:19:05

Nun ist meine Erfahrung, daß man seine Szenerie immer größer machen muß, damit sie vollständig dargestellt wird. Wir entschließen uns zu einem Rand von 5 Minuten, um sicherzugehen. Schaden kann dies nur, wenn eine andere sehr dichte Meshszenerie nah bei ist, was wir aus dem USGS DEM machen, ist mindestens so gut wie das, was wir von der CD kennen. Wir starten FSMesh und erzeugen eine neue Szenerie mit den folgenden Koordinaten: Ob wir die Objekte der Standardszenerie behalten wollen oder nicht, kann nur ein Ortstermin im FS2000 beantworten. Dort finden wir einen See, der auf den Berggipfeln fliegt, aber etwa die richtige Form hat. Behalten wir in also. |

Nun wählen wir "Import Trig" "USGS DEM", ein Dateidialog läßt uns die Datei W020N90.dem auswählen. Im Hintergrund werden nun W020N90.dem und W020N90.hdr gelesen und alle Punkte, die sich in den Grenzen der Szenerie befinden, eingelesenwir ein Netz von trigonometrischen Punkten im 30-Sekunden Raster. . Dies dauert einige Sekunden. Nun bekommen Damit haben wir schon viel gewonnenTerrain, das mindestens so gut wie das der CD ist, und welches nahtlos an : Wir haben ein dieses anschlieübrigens der Rhein.ßt. Rechts oben das blaue Band ist |

Als dritten Schritt rufen wir "Kartenbefehle" "Lade Bitmap" auf, suchen nach der vorhin erzeugten Bitmap und tragen die Koordinaten ein. Nun sind Bild und Szenerie mit einer Genauigkeit von etwa 1 Sekunde abgeglichen. Wir sehen nun die Bitmap als Hintergrundbild.
Unter "Mesh" "Höhenwert wählen" stellen wir eine Höhe von 275.00 m ein, dies ist genau die Höhe des Seeufers. |

Nun fahren wir mit der Maus das Seeufer ab und setzen trigonometrische Punkte ziemlich dicht durch einfache Mausklicks. Wenn wir um den See herum sind, drücken wir einmal auf die rechte Maustaste, damit wir das Ergebnis ohne Hintergrund besser sehen können. Eventuelle Lücken können wir nun noch durch weitere Mausklicks füllen. Innerhalb des Sees gibt es 5 Punkte aus dem USGS-DEM, ein paar mehr am Rand. Wir klicken auf jeden dieser Punkte mit der rechten Maustaste und setzen sie auf 275.00. Die Randpunkte, bei denen wir im Zweifel sind, können wir auch löschen. |

Als nächstes öffnen wir wieder die Bitmap, setzen den Höhenwert auf 300 und fahren die entsprechende Linie ab - so definieren wir die flachen und die steileren Uferbereiche. Die 400-m Linien bilden die höheren Berge. Die auf der Karte eingetragenen Punkte übernehmen wir, und noch ein paar markant erscheinende Linien. Je mehr wir übernehmen, umso besser, aber als Anfang reicht es. Mit Mesh - erzeuge FS DEM lassen wir FSMesh nun ein Netz (1024x1024) über die Landschaft legen, speichern das DEM ab und akzeptieren den vorgeschlagenen Wert von LOD=11. Vergessen wir nicht, die Szenerie zu speichern, bevor wir FSMesh verlassen. |

| Wir wenden nun die SDK-Werkzeuge an und erhalten eine erste Szenerie. Wie zu erwarten, liegt der See nun umgeben von Bergen. Die Spitze im Vordergrund sollten wir noch korrigieren, wahrscheinlich ein falsche Höhenpunkt aus dem USGS-DEM. Mehr trigonometrische Punkte schaden auch nicht, aber damit sollten Sie nun experimentieren.

Damit haben Sie gelernt, wie man mit FSMesh ein Terrain erzeugt. Wer Zugriff auf DHM-Daten im 100m Format hat, kann auch diese zusätzlich einbinden.

Wenn Punkte aus verschiedenen Quellen gelesen werden, sind manche doppelt vorhanden. Da es scheint, daß sich benachbarte Dateien etwas überlappen sollen, wird man oft auch Daten von den Nachbardateien importieren wollen. Eine Sortierfunktion im "Mesh" - Menü kann von zwei trigonometrischen Punkten, die weniger als 30 cm voneinander entfernt sind, den zuerst gesetzten entfernen.

Noch ein kleines Bonbon: Mit FSMesh erzeugte DEMs lasen sich auch wieder laden, damit kann man in FSMesh den Höhenwert des Terrains ablesen. Beim Legen von kleinen Grundpolygonen ist es damit möglich, diese geneigt an das Terrain anzupassen.

Zur Belegung der Maustasten in FSMesh:

Linke Maustaste | auf Karte | Erzeuge trigonometrischen Punkt
Rechte Maustaste | auf Objekt | Editiere Objekt
Umschalt Rechts | auf Objekt | Erweiterter Editierdialog
Steuerung Rechts | auf einige Objekte | Verschiebe Objekt, solange Taste gedrückt.

Import und Veränderung der Standardszenerie

Wir haben nun ein Werkzeug kennengelent, das uns uns erlaubt, das Terrain mit einer ungeahnten Genauigkeit und Detailreichtum zu schaffen. Bei Tests tauchte aber ein neues Problem auf. Wir können das Terrain sehr realistisch machen, aber die Objekte der Standardszenerie sind dies nicht. Straßen und Flüssen sind oft hunderte von Metern deplaziert und folgen damit nicht dem Terrain.

Die einfache Lösung, alle Objekte der Standardszenerie zu entfernen, hat ihre Probleme, denn wir müßten alle Objekte wie Flughäfen, Starßen in den Ebenen usw. neu machen. Also mußte ein Weg gefunden werden, einzelne Objekte entfernen zu können. Wie geht dies?

Zuerst benötigen wir hierzu zwei Werkzeuge aus dem Internet: BGLZIP von Microsoft und SCDIS2.1 von Takuya Murakami, dieses findet man bei http://www.freesc.org .

Die Szeneriedateien des FS2000 sind komprimiert, um Platz zu sparen. As erstes dekomprimieren wir die entsprechende Datei. Wir finden die Dateien im Verzeichnis FS2000\scenedb\region\scenery, jede von ihnen bedeckt etwa 2 x 2 Grad. Wir kopieren den Szeneriefile, z.B. F5400111.bgl, in das Verzeichnis mit BGLZIP und SCDIS, und dekomprimieren:

BGLZIP -d -f F5400111.bgl

Die Datei wird dadurch etwa doppelt so groß.

Als nächstes disassemblieren wir die Datei:

SCDIS F5400111.bgl.

Einige neue Dateien entstehen, wir sehen in scdhead.txt nach, ob wir in der richtigen Gegend sind. Wir bennenen scm9-1.scm nach F5400111.scm um, um den Überblick zu behalten. Nun editieren wir es. Wahrscheinlich gibt es am Ende eine oder wenige Sektionen, die Meldungen wie "unknown record" oder "data overrun" aufweisen, wir löschen diese Sektionen vom Area( bis rum EndA - Befehl inklusive. Ich denke, diese haben mit dem Mesh zu tun, da wir dies eh ersetzen, würden sie nur stören. Wir speichen die Datei.

Nun starten wir FSMesh und erzeugen eine Szenerie, bei der alle Objekte der Standardszenerie im Bereich des Headers ausgeschlossen werden. Mit "Datei" "Import von SCDIS" lesen wir den Szeneriefile. Nun sind alle sichtbaren Objekte der Standardszenerie Bestandteil unserer Szenerie. Jedes Objekt ist durch einen Stern dargestellt, Flüsse und Straßen zeigen ihren Verlauf. Straßen sind grau, Flüsse blau, Polygone grün, alle anderen Objekte weiß. Mit einem Umschalt - Rechtsklick auf den Stern bekommen wir einen Dialog, der uns erlaubt, die Objekte zu editieren oder zu löschen. Nun können wir die Flüsse und Straßen, de nicht zum Mesh passen, löschen oder bearbeiten. Am besten ersetzen wir sie durch FSRail - Autobahnen mit laufendem Verkehr. |

Dokumentation der Menüs

Datei |  |
| Neue Szenerie | Erzeugt eine neue FSMesh Szenerie
| Lese Szenerie | Liest ein bestehende FSMesh/FSRail Szenerie. Falls Sie die Szenerie mit FSRail für Bahnen oder Autobahnen benutzen wollen, empfehle ich, die Szenerie in FSRail zu erzeugen.
| Speichere Szenerie | Schreibt die Szenerie auf die Festplatte. Machen Sie dies von Zeit zu Zeit, um das Ergebnis Ihrer Arbeit zu sichern.
| Speichere und kompiliere SCASM | Dies sichert die Szenerie und kompiliert eventuell vorhandene SCASM-Instruktionen. Falls FSMesh in eine bestehende FSRail - Struktur installiert wurde, können Sie auch die Bahnen mit kompilieren. Beachten Sie, daß dieser Schritt nichts mit der Erzeugung von Terrain zu tun hat.
| Importiere von FSMesh | Sie können spezifische Informationen von FSMesh/FSRail importieren. Hierbei werden die Grenzen des Headers nicht überprüft.
| Importiere von SCDIS | Lese eine mit SCDIS erzeugte SCASM-Datei. Area-EndA Objekte, die sich innerhalb der Grenzen des Headers befinden, werden in den SCASM-Teil geladen.
| Schließen | Schließt die Szenerie. Notwendig, bevor eine neue gelesen oder erzeugt werden kann. Sie hatten doch vorher gesichert?
Dialoge |  |
| Kartenoptionen | Sie können hier auswählen, welche Optionen der Karte angezeigt werden.
| Ändere Header | Hiermit werden die Grenzen des Headers verändert. Dies kann sehr wichtig sein, da mehrere Importfunktionen die Grenzen des aktuellen Headers testen.
| Auswahl Rechteck. | Zwei Linksklicks auf die Karte folgen, alle trigonometrischen Punkte in dem dadurch bestimmten Rechteck werden selektiert. Sie werden als auf der Spitze stehende Dreiecke gezeichnet. Komplizierte Formen können durch Auswahl mehrere Rechtecke erzeugt werden. Einzelne Punkte werden durch Rechtsklicks selektiert.
| Auswahl aufheben | Die Auswahl wird aufgehoben, alle Dreiecke yeigen wieder nach oben.
| Aktion aud Auswahl | Die Auswahl kann gelöscht werden, auf einen festen Höhenwert gesetzt werden und gemeinsam angehoben werden.
Mesh |  |
| Höhenwert | Die folgenden trigonometrischen Punkte benutzen diesen Wert. Im Hintergrundmodus schaltet es auf die Eingabe von trigonometrischen Punkten um.
| Trigonometrischen Punkt setzen. | Erzeugt einen trigonometrischen Punkt. Ein einfacher Klick mit linker Maustaste hat den gleichen Effekt.
| Erzeugt FS DEM | Erzeugt FS DEM und INF Datei. Dies ist eine rechenintensive Funktion.
| Lese FS DEM | Ein von FSMesh oderr FSRail erzeugtes DEM kann in das Programm zurückgelesen werden. Danach kennt FSMesh die Höhe des Terrains.
| Lösche doppelte Trig. | Wenn trigonometrische Punkte aus verschiedenen Quellen importiert werden, kann es passieren, daß einige doppelt sind. Diese Funktion entfernt den zuerst definierten.
Import Trig. |  |
| FSRail Datei | Trigonometrische Punkte werden aus einer anderen FSRail/FSMesh Datei importiert, falls sie innerhalb der Grenzen des Headers liegen.
| USGS DEM | USGS-30 DEM Punkte werden importiert, falls sie innerhalb der Grenzen des Headers liegen. Dasselbe Verzeichnis muß die .dem und die .hdr Datei enthalten.
| DHM-100 | DHM-100 Punkte werden importiert, falls sie innerhalb der Grenzen des Headers liegen. Siehe unten das Format.
| DHM-1000 | DHM-1000 Punkte werden importiert, falls sie innerhalb der Grenzen des Headers liegen. Siehe unten das Format.
Kartenbefehle |  |
| Lade Bitmap | Eine Hintergrundbitmap wird geladen und das Programm in den Hintergrundmodus gesetzt. Sie können nun praktisch beliebig viele Marken unterschiedlicher Farbe setzen, um die wesentlichen Elemente der Bitmap nach FSRail zu übertragen, oder beliebig viele trigonometrische Punkte setzen.
| Elevation area | Ändern Sie das Terrain. Klicken Sie auf die Punkte des Polygons, daß Sie auf eine Höhe setzen wollen, rechts klicken Sie auf den letzten Punkt. Benötigt SCASM 2.39.
| Maßstab = 1 | Setzt den Maßstab auf 1. Dies ist der Maßstab, bei dem die Bahn genau auf Ihren vollen Bildschirm paßt.
| Vergrößerung | Vergrößert den Maßstab. Sie können das Bildschirmviertel auswählen.
| Vergrößerung zu Maus | Vergrößert den Maßstab. Klicken Sie auf die Position, um die herum Sie vergrößern wollen.
| Verkleinerung | Reduziert den Maßstab.
| Straßen oder Flüsse | Dieser Menüpunkt erlaubt, einfache Straßen oder Flüsse zu erzeugen. Sie klicken zweimal, um Anfang und Ende der Straße zu bestimmen, dann werden Sie nach Farbe und Layer genannt. Für 3D Design werden Straßen und Flüsse immer texturiert. Es heißt, daß der Layer für FS2000 immer durch 4 teilbar sein soll, höhere Layer können niedrigere bedecken. Wenn also eine Straße mit Layer 12 einen Fluß mit Layer 8 kreuzt, bedeckt die Straße den Fluß.
| Poly Straße | Straßen oder Flüße aus bis zu 13 Teilstücken können erzeugt werden. Klicken Sie auf die gewünschten Ecken, mit einem Rechtsklick auf die letzte.
| Polygone | Machen Sie einen Linksklick auf die eine Serie von Endpunkten. Rechtsklick endet die Eingabe, nun können Sie die Farbe wählen. Texturierte Polygone lassen sich so nicht unter FS2000 erzeugen.
| Airport Macro | Sie können ein Airport Makro in FSRail einfügen. Klicken Sie auf die Position und ändern Sie den Vorschlag. Einige Airport Makros verlangen spezielle Aufrufe mit %13 = v2 und einem Wert in %14. Ich habe des öfteren erlebt, daß ein falscher Aufruf den Compiler in eine endlose Schleife brachte.
| Farbe der Marken | Auf Mausklick wird an diese Stelle eine Marke gezeichnet. Mit einem Rechtsklick auf eine Marke kann diese verändert werden, oder die Entfernung zu einer anderen Marke bestimmt werden. Im Hintergrundmodus schaltete es auf Eingabe von Marken um.
| Marke setzen | Auf Mausklick wird an diese Stelle eine Marke gezeichnet. Mit einem Rechtsklick auf eine Marke kann diese verändert werden, oder die Entfernung zu einer anderen Marke bestimmt werden.
| Marken reaktivieren | Falls Sie Marken inaktiv gemacht haben, können Sie diese wieder aktivieren. Es werden alle Marken der gerade gültigen Farbe reaktiviert.
| Marken einer Frabe löschen | Alle aktiven Marken der gerade ausgesuchten Farbe werden gelöscht. Falls sie einige behalten wollen, machen Sie sie inaktiv, selektieren die Farbe, löschen die aktiven und reaktivieren die inaktiven.

Import Formate

Mir scheint, daß jeder Anbieter digitaler Informationen sein eigenes Format hat. Die Geographen haben Programme, die nicht anderes tun, als ein Format ins andere umzurechnen, und diese kosten mehr als ein PC, der sogar FS2000 - tauglich ist. FSMesh kommt mit einigen Importfuktionen. Falls Sie ein anderes Format kennen, für das es sinnvoll nutzbare Daten gibt, schreiben Sie mir, ich werde einen Importfilter schreiben.

- USGS DEM-30 Format. Dieser Datensatz ist für die gesamte Erde frei vorhanden. Die Daten kommen im .tar.gz Format. Vorsicht beim Entpacken, einige Programme haben damit Schwierigkeiten. Wir benutzen zwei Dateien, xxxxxxx.dem und xxxxxx.hdr. Die .hdr Datei beinhaltet die Information, was in der DEM - Datei enthalten ist, das DEM ist ein zweidimensionales Feld von 16 bit integer Werten. Für alle Regionen außer der Antarktis ist die Größe 4800x6000, entsprechend 40 Grad in Ost-West und 50 Grad in Nord-Süd Richtung.
- FSMesh/FSRail Dateien
- DHM-100 files. Die DHM sind eine Liste von Höhenpunkten wie die FSMesh trigonometrischen Punkte. Format:
  9° 24' 21.95915" 48° 30' 46.74674" 650.4964
  9° 24' 21.98506" 48° 30' 49.98446" 693.5959
  9° 24' 22.01092" 48° 30' 53.22210" 713.1985
- DHM-1000 files. Die DHM sind eine Liste von Höhenpunkten wie die FSMesh trigonometrischen Punkte. Format:
  50.49583 7.60417 252
  50.49583 7.61806 274
  50.49583 7.63194 263