Seite 1 von 4

ZusiCLIProject (Fahrplaneditor, ...)

Verfasst: 20.01.2012 18:38:03
von F. Schn.
Hallo Leute,

Da Zusi 2 noch kein XML unterstützt, muss man als Programmierer selbst die Daten einlesen. Als Programmierübung und um Euch (und vor allem mir) die Arbeit zu erleichtern habe ich dafür eine kleine ;D DLL gebasstelt.

Inzwischen sind dazu ein paar Anwendungen entstanden, die ich euch nun als ZusiCLIProject zur Verfügung stellen möchte. (Danke an Ralf für den Webspace!)

Folgende Anwendungen sind dabei:
* Ein Fahrplaneditor, der Züge bearbeiten kann.
* Ein Reihungsrechner, der schaut wie ein Zug durch Spezialaktionen geändert wird und daraus dann Rhg-Dateien erstellt.


Download:
Verfügbar auf ZUpdater
https://www.pkeus.de/~philipp/Zusi/Pake ... 8_Beta.zip (Aktuelle Version)
http://www.ralfs-zusizone.de/main/downloads/download.php[/url] (Noch nicht akutell)
http://www.ralfs-zusizone.de/php/dlcounter/count.php?id=ZusiCLIPro_2012_01_29
http://www.ralfs-zusizone.de/php/dlcounter/count.php?id=ZusiCLIPro_2012_01_17

Systemvorraussetzung: .NET-Framework (Meines Wissens...)
Frage an Linux-Nutzer: Läuft es unter Mono?

Ich freue mich über euer Feedback!

F. Sch.

Edit1: Titel angepasst
Edit2: Link angepasst
Edit3: Link angepasst

Re: ZusiCLIProject

Verfasst: 20.01.2012 23:53:13
von Andreas Karg
Wow, geil. So einen Fahrplaneditor wollte ich mir auch schonmal bauen. Allerdings in erheblich geringerem Umfang als du das jetzt gemacht hast... Ich hab grad nur ein bisschen doof drin rumgeklickt, um zu sehen, was man alles machen kann. Welche Voraussetzungen müssen denn erfüllt sein, damit diese Zeichenfunktion geht? Die würd mich doch interessieren. :-)

Halb-OT:
Ich hab mal angefangen, einen einfachen Autopiloten für Zusi zu schreiben. Ein Problem, was dabei strukturbedingt nicht zu lösen ist, ist, dass der AP nie weiß, wo er denn eigentlich ist. Klar, die Kilometer sind bekannt und der Name der Betriebsstelle lässt sich auch via TCP erfragen. Aber es fehlt eben der Kontext wie Geschwindigkeitslimits und sowas. Ich hab mich damit beholfen, dass ich die zur Laufzeit von Hand eingetippt hab. Sehe ich das richtig, dass deine DLL da das ideale Werkzeug wäre, um die Wissenslücken aufzufüllen? Nicht, dass ich nicht schon fünftausend andere Projekte hätte, bei denen nix vorwärtsgeht, aber interessieren tät's mich dann doch. :-)

Re: ZusiCLIProject

Verfasst: 21.01.2012 13:11:34
von F. Schn.
Hallo Andreas,

"Fahrweg" > "Zeichnen" zeichnet den Strukturbaum für das im Feld links daneben angegebene Element neu.
Der Button sollte nur gedrückt werden können, wenn in dieses Feld ein Streckenelement eingetragen ist, das Teil der Strecke ist.
Tatsächlich aber hast du da gerade einen Bug entdeckt. Er überprüft nämlich nicht, ob das Streckenelement mit der angegebenen Nummer vorhanden ist, sondern ob der Startpunkt mit dem angegebenen Register vorhanden ist.

"Fahrweg" > "Fahrweginfos" Zeichnet den Fahrweg, der im Strukturbaum ausgwählt ist. Das ist die interessantere Funktion.

Aber erklär mal, was du dir unter "Zeichnen" vorgestellt hast, dann kann ich versuchen das einzubauen. ;-)

Zu Halb-OT:
Ja, also wenn dein Programm meinem
* den Pfad der Streckendatei geben kann
* sagen kann auf welchem Element der Zug steht
* bis und über welche Signale die Fahrstraße gestellt ist
ist das überhaupt kein Problem.
Ansonsten sag mal was du meiner DLL alles liefern kannst.

Re: ZusiCLIProject

Verfasst: 21.01.2012 17:03:04
von F(R)S-Bauer
Hallo,

Das Upddate ist von mir Online gestellt. Zum Inhalt muß F. Sch. was schreiben.

http://www.ralfs-zusizone.de/php/dlcoun ... 2012_01_21" target="_blank

mfg

Ralf

Re: ZusiCLIProject

Verfasst: 21.01.2012 17:51:13
von Andreas Karg
Ah. Jetzt klappt auch die Zeichenfunktion. Eine Skala wäre da noch praktisch, aber ansonsten is das Ding hübsch. :-)
Ich würde mir gerne den gesamten Fahrtverlauf anzeigen lassen, ohne den kompletten Baum durchklicken zu müssen. Die Konfiguration ist ja aus den gesetzten Haken hinlänglich bekannt. Wenn's mehrere gesetzte Haken gibt, entweder fragen oder stillschweigend den ersten Eintrag nehmen. (-> Optionen?)

Zu Halb-OT:
Der Pfad der Streckendatei dürfte verfügbar sein. So viel manuellen Eingriff kann man sich doch leisten, nachdem's eh ein rein akademisches Projekt ist und ich nur mal sehen will, wie's geht.
Das Streckenelement ist anscheinend nicht via TCP verfügbar. Ich hätte den Streckenkilometer im Angebot. Soweit ich mich erinnere, ist er auf weniger als einen Meter genau. Wenn deine DLL die Orte von Kilometrierungswechseln kennt, könnte man damit die tatsächliche Position einigermaßen genau bestimmen.
Ansonsten gibt's noch einen Eintrag "Block, bis zu dem die Strecke frei ist" in der TCP-Doku. Ist sowas genug Info?

Re: ZusiCLIProject

Verfasst: 21.01.2012 18:58:29
von Mr. X
Auf den ersten Blick (habe auch nur "bisschen doof drin rumgeklickt") sieht das sehr gut aus. Ich hatte die Hoffnung schon fast aufgegeben, dass wir für Zusi 2 mal einen brauchbaren Fahrplaneditor kriegen. Vielleicht wirds jetzt doch was. :respekt .

Eine Frage hab ich aber:
Wofür steht das "CLI" im Namen? C++/CLI? Für "Command Line Interface" (== Kommandozeile) wohl eher nicht, oder?

Re: ZusiCLIProject

Verfasst: 21.01.2012 19:23:26
von F. Schn.
@ Mr. X: Von Wikipedia: http://de.wikipedia.org/wiki/Common_Lan ... astructure
Was fehlt noch?

@ Andreas Karg:
* Notiert (Skala)
* Notiert (Baum-Rückberechnung), wird aber eventuell kompilizierter...
* Die ausgewählten Knöpfe sollen mal in die Zeichnung eingetragen werden. Warum habe ich das noch nicht gemacht?

Halb-OT:
Ich denke, dass das einfacher wird, wenn ich den Zuglauf rückberechnen kann.
Dann werde ich mal sehen, wie ich Streckenkilometer auf Streckenelement zurückberechnen kann...
Alternativ: Kann man irgendwie die belegten Register ausgeben?

Re: ZusiCLIProject

Verfasst: 21.01.2012 20:28:55
von Mr. X
F. Schn. hat geschrieben:@ Mr. X: Von Wikipedia: http://de.wikipedia.org/wiki/Common_Lan ... astructure
Was fehlt noch?
Naja, ich finde den Namen nichtssagend. Ich habe erst durch die Antworten auf den Thread herausgefunden, woraus das Paket tatsächlich besteht.

Der Name und deine Beschreibung haben mich denken lassen, es handle sich um einen XML-Wrapper für die Zusidatenformate und einen Fahrplaneditor für die Konsole. Dass es sich um ein Programm mit GUI handelt als ernstzunehmender Ersatz für den Zusi-Fahrplaneditor, wurde mir erst durch Andreas' Antworten klar.

CLI steht, wie gesagt oft für "Command Line Interface", was hier offenbar nicht gemeint ist. Wenn man die .Net-Abhängigkeit im Namen haben will, wird oft ein '.' vorangestellt, oder wie bei Paint.Net ein ".Net" eingefügt.
"ZusiCLIProject" ist zudem sehr allgemein. Vielleicht soll das noch erweitert werden, kA. Enthalten ist jedenfalls ein Fahrplaneditor und eine Programmbibliothek für die Zusi-Dateiformate. Es wäre hilfreich, wenn der Name einen Rückschluss auf den Inhalt zulässt. "Zusi" als Namensbestandteil sagt nur, dass es zu Zusi gehört. "CLI" sagt ggf. (s.o.) etwas über die Platform, aber auch nichts über den Inhalt. "Project" sagt garnichts.

Vielleicht kann man einen etwas besseren Namen finden. Das Programm selbst ist nämlich super!

Re: ZusiCLIProject

Verfasst: 21.01.2012 21:00:42
von F. Schn.
Nun, es IST mehr. Das Vorschaubild ist mit der Zwillingschwester des Fahrplaneditors erstellt. Und fast alles, was du siehst (bis auf die Benutzeroberfläche) ist in der zentralen DLL integriert.

Aber wenn der Name der einzige Verbesserungsvorschlag ist, kann ich ja mal über alternativen nachdenken. :coolgr

Re: ZusiCLIProject

Verfasst: 21.01.2012 21:07:32
von Andreas Karg
F. Schn. hat geschrieben:Alternativ: Kann man irgendwie die belegten Register ausgeben?
Mir wäre nix bekannt. :-/

Re: ZusiCLIProject

Verfasst: 21.01.2012 22:41:10
von F(R)S-Bauer
Nabend,

Wenn man irgendwo die Registerbelegung aus Zusi in Echtzeit rausholen könnte hätte ich schon lange nen Tool gebastelt um die da zu stellen...was habe ich da schon rumgedocktert weil was blockierte und ich wuste nicht wo...
Aber laut Carsten ist da zu sehr Intern um da in Echtzeit in der 2.x dran zu kommen.

mfg

Ralf

Re: ZusiCLIProject

Verfasst: 21.01.2012 22:48:06
von F. Schn.
Gefunden!

Aber... Mann muss Info > DXCaps öffnen, dann wieder schließen und dann hat man die Datei register.txt im Temp-Verzeichnis.

Das schließen dauert auch einige Zeit. Also für unseren Fall unbrauchbar...

PS: Ich pass mal den Titel an.

Re: ZusiCLIProject (Fahrplaneditor, ...)

Verfasst: 22.01.2012 11:30:14
von Carsten Hölscher
Zum Thema Fahrplaneditor: Beim Stammtisch in Aachen hatten wir das auch diskutiert und eine sehr sinnvolle Ergänzung wäre wohl ein Programm, das die Bildfahrplandaten aus den typischen entprechenden Programmen in Zusi-Format konvertieren könnte.

Carsten

Re: ZusiCLIProject (Fahrplaneditor, ...)

Verfasst: 22.01.2012 14:06:14
von F. Schn.
Carsten Hölscher hat geschrieben:aus den typischen entprechenden Programmen
Hmm... Welche stellst du dir darunter vor bzw. mit welchem Datenformaten?
Carsten Hölscher hat geschrieben:in Zusi-Format
Also *.bif? Oder *.zug und *.fpl?


Für Bif-Daten kann ich ja mal ein Einlesemechanismus erstellen.

Re: ZusiCLIProject (Fahrplaneditor, ...)

Verfasst: 22.01.2012 19:46:03
von Erik Semt
Hi Leute,

ich kann das Programm nicht Extrahieren bei mir kommt da immer ein fehler. Wisst ihr woran das liegen könnte?

Gruß Erik

Re: ZusiCLIProject (Fahrplaneditor, ...)

Verfasst: 22.01.2012 20:09:40
von F(R)S-Bauer
Nabend,

was für ein Fehler?

Nimm doch mal ein andern Browser.

mfg

Ralf

Re: ZusiCLIProject (Fahrplaneditor, ...)

Verfasst: 22.01.2012 21:17:27
von Erik Semt
Naja ich kann es mit dem Add-On-Installer nicht Extrahieren.

Hier ein Bild.

Bild

Gruß Erik

Re: ZusiCLIProject (Fahrplaneditor, ...)

Verfasst: 22.01.2012 21:19:37
von Chrigu
So wirklich ganz begriffen, welche Vorteile der "neue" Fahrplaneditor hat, habe ich noch nicht, aber ich habe bis jetzt auch nur ein paar Sekunden drin herum geklickt. :D
Allerdings hat das Programm noch ein Problem mit den regionalen Einstellung. Mein Windows ist auf Deutsch (Schweiz) konfiguriert, d.h als Dezimalpunkt wird eben der Punkt und nicht wie bei Deutsch (Deutschland) das Komma verwendet. Dies führt zu Fehlermeldungen à la "Ungültige Konvertierung von der Zeichenfolge 234,90" in Typ Single. Nach Umstellung auf Deutsch (Deutschland) hat's funktioniert.

Unter Linux mit Mono:
Welche Files brauche ich um das zu testen (muss ich eine komplette Zusi Installation haben)? Ein erster Versucht schlug mit "The entry point method could not be loaded" fehl.

Gruss
Chrigu

Re: ZusiCLIProject (Fahrplaneditor, ...)

Verfasst: 22.01.2012 21:34:48
von MarkusEgger
Hallo!

Ich kann das Installationsproblem mit der Zusi-Verwaltung bestätigen - klappt bei mir auch nicht.

Könnte man das Ganze als "normale" Zip haben?

Markus

Re: ZusiCLIProject (Fahrplaneditor, ...)

Verfasst: 22.01.2012 22:12:54
von F(R)S-Bauer
Nabend,

ich weis ja nicht was da los ist, aber ich habe Gerade die Datei von eine anderen Rechner runter geladen und danach läst Sie sich problemlos Installieren. Womit entzip Ihr?

Aber hier ist die nächste Version: http://www.ralfs-zusizone.de/php/dlcoun ... 2012_01_22" target="_blank

Laut F.Sch.:

* Fahrweginfo: Koordinatensystem
* Fahrweginfo: Anzeige weiterer Betriebsstellen
* Fahrwegbaum: Zugverfolgung (außer Wenden) (beim Klick auf "Gehe zu" /
"Einsatzelement (des Zuges)")

Zur Sicherheit hier mal die MD5 Chechksummen, erstellt mit TotalCommander:

Code: Alles auswählen

a6b06f26520e9a4893ef40ceb58be819 *ZusiCLIProject_2012_01_17.zip
8687e50b83e841a1f04120a4b60dee9d *ZusiCLIProject_2012_01_21.zip
dc35a7947dbb63d1932253380f07d11c *ZusiCLIProject_2012_01_22.zip

mfg

Ralf

PS: Bitte erst entzippen, speichern und dann Installieren. Der Verwaltung kann bei Zipfoldern schon mal Streiken.