Das Dateiformat der Dateien, die einen ganzen Fahrplan aufnehmen ---------------------------------------------------------------- Default-Endung: *.pln Alle Formate haben in der ersten Zeile den String: Fahrplan-Dateiformat Wobei von der Version des Formats abhängt. Versionen: V0.1 vom 11.6.94 (erweitert am 31.8.94 um Züge) -------------------- Enthält: - Den Graphen (zyklenfrei,zusammenhängend) - Die Graphenfärbung - Die Züge (Orte/Zeiten) Diese Dateiformat wird vom Fahrplaneditor 0.1b und 0.2a benutzt. Allgemeines zur Syntax: - Zeilen (außer die erste), die mit ; oder # anfangen, werden als Kommentare betrachtet und nicht beachtet; - Abschnitte werden durch [%s] -Zeilen voneinander abgegrenzt; 1. Abschnitt wird eingleitet durch: [Graph] Die erste Zeile haben die Form: FIRST_NODE / Alle folgenden Zeilen sehen so aus: NODE / Die Bahnhöfe werden durch ihren Index 1..8191 in der Bahnhofs-Datenbank identifiziert. vmax ist ein Wert 0..65???, wird aber noch nicht korekt verarbeitet. Die Koordinaten des Ortes werden als Fliesskommawerte 0..1 angegeben. 2. Abschnitt wird eingeleitet durch: [Linien] Eine Zeile definiert eine Linie folgendermassen: LINE Die Farbe wird durch ihren "Namen" angegeben: {schwarz,rot,blau,...}. Der Name ist ein beliebiger String, in dem die Spaces durch _ ersetzt sind. und sind Bahnhofsindizes, die den Anfang und das Ende der Linie im Graphen markieren. 3. Abschnitt wird eingeleitet durch: [Zuege] Ein Zug wird durch vier Zeilenarten definiert: a) Eine Zeile, die einmalige Informationen zum Zug enthält: ZUG ist ein belibiger freizeichenfreier String (Spacees durch _ ersetzt!) ist ein String aus der Menge {'keine', 'blau', 'braun', 'grau', 'gelb', 'violett'} b) Eine Zeile fuer den Startbahnhof: START c) Beliebig viele Zeilen fuer Unterwegsbetriebsstellen: MITTE d) Eine Zeile fuer den Endbahnhof des Zuges: ENDE ist eine Kombination aus Bahnhofnr. (Index in BfManag) und Gleisnr. Beispiel: 3,2 heisst: Gleis #2 in Bahnhof #3. V0.2 vom 10.1.94 -------------------- Enthält: - Den Graphen (zyklenfrei,zusammenhängend) zweigeteilt in Knoten und Kanten inklusive der kompletten Bahnhofsdefinition, die in V0.1 noch extern in der Datenbank war, auf die Verweise im Fp. waren. - Die Graphenfärbung - Die Züge (Orte/Zeiten) Diese Dateiformat wird vom Fahrplaneditor 0.3a benutzt werden. Allgemeines zur Syntax: - wie V0.1 1. Abschnitt wird eingleitet durch: [Knoten] Es folgen eine Reihe von Datensaetzen, die jeweils aus mehreren verschiedenen Zeilen bestehen. Die Syntax wurde aus der Bahnhofsdatenbank weitgehent übernommen. Ein Datensatz der hat folgende Syntax ("kleingeschriebenes" ist symbolisch, "GROSSGESCHRIEBENES" woertlich gemeint, nach ";" folgen Kommentare, in eckigen Klammern erscheinen optionale Angaben): BAHNHOF ort.x/ort.y name kurzname ; Die Koordinaten und ; werden als Fliesskommawerte 0..1 an- ; gegeben. "kurzname" darf bis zu 5 ; Zeichen lang sein. STRECKEN anzahl ; "anzahl" ist ein numerischer Wert, der ; die Zahl der in den Bahnhof mündenden ; Streckengleise bezeichnet GLEIS name nutzlaenge ; "name" kann die Gleisnummer oder die ; Bezeichnung eines Gleisanschlusses sein ; "nutzlaenge" wird in cm angegeben ; Eine Nutzlänge von 0cm steht fuer eine ; unbekannte Nutzlänge EIGNER name des Eigners INFO infos zum bahnhof ; Die Zeilen "GLEIS" und "INFO" duerfen ; bei einem Bahnhof mehrfach auftauchen. ; "GLEIS" muss mindestens einmal auftauchen. REGLERFARBEN anzahl ; "anzahl" ist ein ganzzahliger Wert im ; Intervall [3..5] Ein Datensatz muss mit der "BAHNHOF"-Zeile Anfangen. Alle anderen Zeilen koennen innerhalb des Datensatzes in beliebiger Reihenfolge auftauchen und sind bis auf die "GLEIS"-Zeile optional. Beispiel fuer einen Bahnhof: BAHNHOF 0,12345/0,67890 Muehlenrade Mrd EIGNER Martin Meiburg INFO Selbstgebaute Weichen INFO Extendet Version in Bau STRECKEN 2 GLEIS 1 0 GLEIS 2 0 2. Abschnitt wird eingeleitet durch: [Kanten] Eine Zeile hat folgende Syntax: EDGE node1 node2 node1 und node2 sind Indizes der Knoten, zwischen denen die Kante ist. Der erste Knoten hat den Index 1. 3. Abschnitt wird eingeleitet durch: [Linien] Eine Zeile definiert eine Linie folgendermassen: LINE Die Farbe wird durch ihren "Namen" angegeben: {schwarz,rot,blau,...}. Der Name ist ein beliebiger String, in dem die Spaces durch _ ersetzt sind. und sind Knotenindizes, die den Anfang und das Ende der Linie im Graphen markieren. 4. Abschnitt wird eingeleitet durch: [Zuege] Ein Zug wird durch vier Zeilenarten definiert: a) Eine Zeile, die einmalige Informationen zum Zug enthält: ZUG ist ein belibiger freizeichenfreier String (Spacees durch _ ersetzt!) ist ein String aus der Menge {'keine', 'blau', 'braun', 'grau', 'gelb', 'violett'} b) Eine Zeile fuer den Startbahnhof: START c) Beliebig viele Zeilen fuer Unterwegsbetriebsstellen: MITTE d) Eine Zeile fuer den Endbahnhof des Zuges: ENDE ist eine Kombination aus Knotennr. und Gleisnr. Beispiel: 3,2 heisst: Gleis #2 in Bahnhof #3.