Seite 1 von 9

Buchfahrplan-DLL mit CSV-Zwischenebene

Verfasst: 23.08.2019 18:49:01
von F. Schn.
Ich arbeite gerade an einer neuen Buchfahrplan-DLL. Die Idee des neuen Ansatzes ist, dass die DLL zuerst eine CSV-Datei mit einer Layout-Spalte produziert und aus dieser dann im zweiten Schritt den Buchfahrplan generiert.

Mal ein paar Beispiele mit verschiedenen Optionen für die CSV-Generierung:

Code: Alles auswählen

IC 981 P+Mg			no-width-calculation,header
981				Tfz 103				 	no-width-calculation.l. . !colored.colored.colored! . .r.
				Vmax = 140 km/h					no-width-calculation.l. . !colored.colored.colored! . .r.
				- ZF A - 62 -					no-width-calculation.l. . !colored.colored.colored! . .r.
00:00	abc	00:00	150,0	(160)		00:00	abc	00:00	invisible,width-calculaion-helper-line
4	5	6	1	2	3	4	5	6	small-above,big-below,c| | | !colored|colored|colored! | | |
06:23		06:24	140	11,3	Gablingen				|r|r|r!r,colored|r,colored|colored!r|r|r|
				8,9	Sbk 202				|r|r|r!r,colored|r,colored|colored!r|r|r|
		06:27		6,7	Gersthofen				|r|r|r!r,colored|r,colored|colored!r|r|r|
06:29		06:30		4,3	Sbk 198				|r|r|r!r,colored|r,colored|colored!r|r|r|
				4,3	Sbk 198				|r|r|r!r,colored|r,colored|colored!r|r|r|
Bild Bild Bild Bild Bild

Es gibt noch viel zu tun und da ich kein Experte bin werden sicher auch noch Fehler auftauchen, aber es sind schon mal ein paar Fragen aufgetaucht:

a) Im 1965-Layout: Was bedeuten die "(60,5)"? (Die Zahl ist jetzt für einen Güterzug Hard codiert.) Bremshundertstel sind es ja offensichtlich nicht.
b) Im AT-Layout: Was bedeutet da die Spalte 5? Vorbild ist hier Zusi 2, aber gab es in Zusi 2 nicht noch eine Doku zu dem Fahrplan, die ich übersehen habe?
c) Gibt es irgendeine Möglichkeit, den 2. Fahrplan für das AT-Layout automatisch zu bestimmen? Ich bin da auf keine guten Ideen gekommen, momentan läuft das ganze aber eh noch manuell.

Vielen Dank schon mal für eure Hilfe.

Gruß
F. Schn.

Re: Buchfahrplan-DLL mit CSV-Zwischenebene

Verfasst: 23.08.2019 21:52:34
von Michael Springer
Interessanter Ansatz.

Bei meiner S-Bahn stimmen die Zeiten in Frömern nicht und in Fröndenberg gibt's garkeine. Das könnte aber Zusi so ausgegeben haben. Habe ich das nicht händisch nachbearbeitet?

Michael

Re: Buchfahrplan-DLL mit CSV-Zwischenebene

Verfasst: 23.08.2019 22:22:10
von F. Schn.
Ich will jetzt nicht ausschließen, dass ich die timetable verbastelt habe (dazu müsste ich erst mal den Fahrplan wieder finden... :P ). Aber zumindest passt meine Ausgabe zu den Uhrzeit-Angaben, die dort drinnen stehen.
Als zusätzliches Feature plane ich, dass man in einem <Zusi>-Tag auch mehrere <Buchfahrplan>-Tags hinterlassen kann und dann zwei Fahrpläne mit Header untereinander angezeigt werden. Vielleicht mal die Frage an Jens, ob er das für einen umsetzbaren Ansatz hält, den er dann eventuell auch in ZusiDisplay einbauen wollen würde?
Für S-Bahnen würde sich auch die Möglichkeit bieten, Zehner-Sekunden anzuzeigen. Funktioniert bereits, ist jetzt allerdings in keinem der 4 Beispielstile eingeschaltet.

Re: Buchfahrplan-DLL mit CSV-Zwischenebene

Verfasst: 24.08.2019 11:28:12
von Christian Sch.
Hallo,

das (60,5) könnte eine Zuggattungsnummer sein.

Mal zwei Beispiele aus meinem Altpapierfundus:

Z.B. wechselt im Jahresfahrplan 94/95 die Zuggattungsnummer des Er 3015 Nürnberg - München von 30,1 zu 31,1 und er wird zum Ev sobald er in Nannhofen (heute Mammendorf) das MVV-Gebiet erreicht.

Anderes Beispiel: der TEEM 41002 Chiasso - Duisburg des JFpl 77/78 war im Sommer ein regulärer Zug mit Zuggattungsnummer 50,1 und im Wintrer ein Bedarfszug mit 50,5.

Andererseits: Ob die zu Zeiten eines Metronom noch verwendet werden?

Gruß
Christian

Re: Buchfahrplan-DLL mit CSV-Zwischenebene

Verfasst: 24.08.2019 11:46:38
von Holger Lürkens
60.5 ist eine Zuggattungsnummer. Unter

https://www.dbnetze.com/infrastruktur-d ... en-1443264" target="_blank

kann man rechts die Stammdaten runterladen. Da stehen zu jeder Zuggattung die entsprechenden Nummern mit drin.

Holger

Re: Buchfahrplan-DLL mit CSV-Zwischenebene

Verfasst: 24.08.2019 14:26:54
von Bernhard
F. Schn. hat geschrieben:Im AT-Layout: Was bedeutet da die Spalte 5?
Spalte 5 enthält laut DB 639 "Fahrplanbehelfe" betriebliche Anordnungen. Diese können durch bestimmte Zeichen und/oder Hinweisziffern mit dazugehörigen Fußnoten erfolgen. Die gebräuchlichsten Zeichen sind "+" (Betriebsaufenthalt) und "x" (Bedarfsaufenthalt). Alle weiteren sind "nur nach eingehender Prüfung der Notwendigkeit unter Anwendung strengster Kriterien zulässig".

Re: Buchfahrplan-DLL mit CSV-Zwischenebene

Verfasst: 25.08.2019 15:35:56
von F. Schn.
Danke. Zur Zuggattungsnummer... Puh, Gute Frage... Ich habe da jetzt mal eine Transformationstabelle eingebaut, die man sich da erstellen oder herleiten müsste.

Dass die ÖBB-Unterlagen mit "DB" bezeichnet sind wusste ich ehrlich gesagt noch nicht. :D Aber + und x sollten nicht unmöglich sein. Ist da die DB-Typische Fußnote "1) Kopf machen" (die ich noch nicht Implementiert habe) auch dabei, oder darf man das bei der ÖBB erraten?

Re: Buchfahrplan-DLL mit CSV-Zwischenebene

Verfasst: 25.08.2019 17:08:49
von gehowa
Sehr, sehr lässig, besonders natürlich die Variante AT ;)

DB ist in dem Zusammenhang glaub ich "Dienstbehelf".

Gernot

Re: Buchfahrplan-DLL mit CSV-Zwischenebene

Verfasst: 25.08.2019 17:14:49
von Bernhard
F. Schn. hat geschrieben:Dass die ÖBB-Unterlagen mit "DB" bezeichnet sind wusste ich ehrlich gesagt noch nicht.
DB steht für Dienstbehelf.
F. Schn. hat geschrieben:Ist da die DB-Typische Fußnote "1) Kopf machen" (die ich noch nicht Implementiert habe) auch dabei, oder darf man das bei der ÖBB erraten?
Abgesehen davon, dass dies in Österreich "Stürzen" heißen würde, ist mir aus den Buchfahrplänen betroffener Züge kein gesonderter Hinweis bekannt. Ein Beispiel für eine Fußnote wäre "1) Hält nur zum Aussteigen".

Re: Buchfahrplan-DLL mit CSV-Zwischenebene

Verfasst: 15.09.2019 17:54:13
von F. Schn.
So, dann möchte ich mal ein erste Version auf euch loslassen: https://pkeus.de/~philipp/Zusi/3/Zusatz ... .0.9.0.zip" target="_blank

Die Einstellungen finden sich leider nur im Fahrplaneditor, wenn man einen Zug bearbeitet. Ihr könnt die DLLs auch kopieren und jeder eigenen DLL eigene Einstellungen verpassen. Wenn ihr die bisherigen DLLs von Jens oder Carsten temporär ersetzen wollt, nicht vergessen vorher eine Sicherungskopie zu machen.

So, dann bin ich mal auf die ersten Reaktionen gespannt. :)

Gruß
F. Schn.

Re: Buchfahrplan-DLL mit CSV-Zwischenebene

Verfasst: 15.09.2019 18:29:27
von Michael Springer
So, dann bin ich mal auf die ersten Reaktionen gespannt.
DLLs sind ohne Funktion

Bild

Re: Buchfahrplan-DLL mit CSV-Zwischenebene

Verfasst: 15.09.2019 18:36:59
von F. Schn.
Hast du den Ordner lib als Unterordner von timetable auch installiert?

Re: Buchfahrplan-DLL mit CSV-Zwischenebene

Verfasst: 15.09.2019 18:47:41
von Michael Springer
Hast du den Ordner lib als Unterordner von timetable auch installiert?
Nein. Jetzt ja.

Die Spalte 2 sieht auf den ersten Blick zu schmal aus, weil die <> teilweise fehlen.

Bild

Machen Kilometrierungswechsel mit <> Sinn?

Bild

Re: Buchfahrplan-DLL mit CSV-Zwischenebene

Verfasst: 16.09.2019 19:15:51
von F. Schn.
Michael Springer hat geschrieben:Machen Kilometrierungswechsel mit <> Sinn?
Wenn keine Fehlerhafte .timetable.xml-Datei vorliegt, sollte der zugehörige Code eigentlich nicht erreicht werden. ?(
Michael Springer hat geschrieben:Die Spalte 2 sieht auf den ersten Blick zu schmal aus, weil die <> teilweise fehlen
Puh... Schau ich mir mal an.

Re: Buchfahrplan-DLL mit CSV-Zwischenebene

Verfasst: 20.11.2019 20:37:10
von F. Schn.
Und auch hier update ich mal:
https://pkeus.de/~philipp/Zusi/3/Zusatz ... .0.9.1.zip" target="_blank

Aufgrund der überraschend wenigen Rückmeldungen habe ich nur die <-Deteketion der Layout-Engine verbessert. Kilometerwechsel mit <> stufe ich ehrlich gesagt als Streckenfehler ein. Wenn es gute Gründe dafür gibt, dass das irgendwo mal doch Vorbildgerecht ist, und sichergestellt ist, dass das mit der Gegengleisanzeige von ZusiDisplay trotzdem läuft, kann ich das aber mit wenigen Zeilen abschalten.
Bild

Re: Buchfahrplan-DLL mit CSV-Zwischenebene

Verfasst: 22.11.2019 16:28:25
von Christian Marx
F. Schn. hat geschrieben:
Aufgrund der überraschend wenigen Rückmeldungen...
Ich weiß leider überhaupt so gar nicht wofür das gut ist. Kann man es einfach erklären?

Re: Buchfahrplan-DLL mit CSV-Zwischenebene

Verfasst: 22.11.2019 23:05:44
von didig
@F.Schn.

wo findet man denn in Zusi die Strecke Unna-Fröndenberg????

In dem aufgeführten Plan fährt der Zug um 19:31 in Frömern ab, keine Zeiten für Fröndenberg und ist um 19:33 schon wieder in Frömern, wie geht denn das? :rolleyes: 8o ?( :wow

Ich kenne die Strecke zufällig aus den 60er und 70er Jahren ;)

und ich glaube mein Vorgänger hier oben hätte gerne noch eine Antwort :)

Re: Buchfahrplan-DLL mit CSV-Zwischenebene

Verfasst: 23.11.2019 16:30:59
von F. Schn.
Ich hatte ursprünglich bei Jens angefragt, ob man die Schriftgröße und das Padding seiner Buchfahrplan-DLL nicht einstellbar machen kann. Seine Antwort war, dass er die Buchfahrplan-2006-DLL gerne aufgeben würde. (viewtopic.php?p=284021#p284021" target="_blank) Mit diesem neuen Ansatz kann man nun alle Schrifgrößen einstellen und außerdem ist es eine gemeinsame Codebasis für sowohl die 1984-DLL als auch die 2006-DLL. Ziel ist also, die beiden zu ersetzen und um weitere Varianten (die 1965-DLL) zu ergänzen. Allerdings habe ich wenig Ahnung von der Materie und bin daher auf Hilfe und Hinweise angewiesen.

Die Frage mit der Oberen Ruhrtalbahn habe ich leider nicht verstanden. Fahrpläne zur Ruhrtalbahn finden sich im Ordner Ruhrtalbahn... ( ?( )

Re: Buchfahrplan-DLL mit CSV-Zwischenebene

Verfasst: 23.11.2019 18:07:13
von Christian Marx
Viele Dank für die Erklärung.

Re: Buchfahrplan-DLL mit CSV-Zwischenebene

Verfasst: 23.11.2019 20:31:52
von didig
@F.Schn.

hat sich im Prinzip erledigt, ich bin die Strecke heute mal abgefahren, sie beginnt vor Frömern und ich dachte schon Unna wäre auch in Zusi realisiert, das wars. Leider gibt es immer noch das "Loch" zwischen: Hagen bzw. Schwerte über Unna nach Hamm bzw. Werl Soest Salzkotten.

schönes Wochenende