Jump to content

gmd

Mitglieder
  • Gesamte Inhalte

    400
  • Benutzer seit

  • Letzter Besuch

Alle erstellten Inhalte von gmd

  1. Sehr schoen jetzt brauchen wir nur noch viel mehr personen mit unterschiedlichen bewegungen. Witzig dass ich gerade das als beispiel in meinem thread unter steuerungen verwendet habe und du ein paar minuten spater dieses beispiel postest. Gruss Gmd
  2. Hallo and alle "Steuerleute", Zunaechst einmal ein disclaimer: Dies soll kein thread sein fuer MBS verbesserungsvorschlaege oder einzelne spezielle problemloesungen. Ausgangspunkt: Das MBS bietet sehr viele moeglichkeiten auch durchaus komplexe ablaeufe zu steuern, allerdings kann das bei groesseren teilloesungen auch sehr umfangreich und aufwendig werden den ueberblick zu behalten. Ich denke nur an die kopfbahnhofsteuerung, die hier von gunther vorgestellt wurde und auch andere, die sehr beidruckend waren. Zugegebenermassen habe ich einfach nicht die geduld solche "riesigen" steuerungen manuell zu schreiben, und noch obendrein ein gbs zu bauen. Auch die parkplatzsteuerung die ich gesehen habe ist toll. Wie einige ja wissen und verfolgen, baue ich ein programm, mit welchem ich das ziel verfolge steuerungsablaeufe und deren erstellung zu automatisieren. Dafuer braucht man anwendungsbeispiele. Es sind ja etliche beispiele veroeffentlicht worden, oder teil einer umfangreicheren steuerung, die man hier anfuehren kann. Die historischen anlagen von Brummi haben ja einiges an ideen, die seilbahn von Andy, abholen von waggons einer anderen lok von Easy, verschiedene versuche von schattenbahnhoefen usw. Ich will hier nicht aufzaehlen was alles im forum existiert, das ware redundant, aber einige punkte will ich als start einer liste (unten nennen). Wonach ich suche und euch bitte euch zu aeussern, wenn ihr zu folgendem ansatz etwas beitragen koennt. Es sind zweierlei richtungen: 1. Ich suche nach aufgabenstellungen, die manch einer gerne implementieren moechte, aber einfach auf grund des umfangs oder komplexitaet nicht durchfuert. 2. Ich suche nach einfacheren beispielen, deren moeglichen vielfalt es einfach schwer macht sie alle zu realisieren auch wenn es vorlagen gibt. In der nachfolgenden liste moechte ich nun nicht nach 1 oder 2 unterscheiden. Einfach auflisten mit einer kurzen beschreibung zur erklaerung. Und es muessen nicht nur schienenereignisse sein, auch strasse und virtuell. Ein beispiel will ich beschreiben, um zu zeigen, wie weit ich gehen wuerde mit den steueraufgaben. Stellt auch einen grossen kopfbahnhof vor mit 8 oder 10 bahnsteigen (auch weinger ist ok) und typischerweise sind die bahnsteige "tot", oder mal gerade ein par figuren darauf. MBS hat alle werkzeuge virtuelle spuren zu legen und dutzende von leuten auf den bahnsteigen zu bewegen (mit zufallsgroessen - keine starren vorprogrammierten bewegungen). Verschwinden erscheinen, warten drehen, einsteigen, weggehen. usw. Theoretisch koennten modellbauer figuren animieren, die sogar laufen. Manuell kann man so etwas ziemlich vergessen, einfach zuviel aufwand. Vielleicht denkt Neo ja ueber funktionen nach die das erleichtern wuerde, dann waeren auch manuelle plazierungen denkbar. Allerdings 6-8 bahnsteige zu bevoelkern ist wahrscheinlich dann doch zu aufwendig. Nun denkt mal einfach nicht an die polygone und performance. Darueber koenen wir spaeter diskutieren. Solche und andere beispiele moechte ich. Dinge, die ihr eigentlich nicht zu denken wagt, weil es einfach zuviel arbeit machen wuerde oder es fuer den einzelnen vielleicht zu kompliziert ist. Manche dinge benoetigen wahrscheinlich auch mehr als nur eine einfache steuerung. Zum beispiel das zusammenstellen von wagengruppen am abrollberg mit wechselnden reihenfolgen. Auch solche punkte moechte ich hoeren. Ok genug der vorrede: Schattenbahnhof mit beliebig vielen zugkonfigurationen in mehrere richtungen (auch gegenrichtung) Vollautomatischer kopfbahnhof mit zufalls ein-/ausfahrten und/oder fahrten per fahrplan und lokwechsel. Vollautomatischer abrollberg fuer waggongruppierung und zugzusammestellung nach frachtanweisungen. Bevoelkerte bahnsteige. Ich hoffe der lange post schreckt euch nicht ab. Ich bin sicher ihr habt viele ideen, die einfach an verfuegbarer zeit oder umfang scheitern. Lasst sie hoeren. Gruss Gmd
  3. Danke Neo, Ist ja sort of dein taeglich brot .. lol .. Letzteres ist worauf ich aus bin. Matrix operationen sind mit meiner library simple, man muss "nur" die matrizen formulieren. Ich muss mal frueher anfangen, abends wird mein hirn immer besonders langsam und ich ungeduldig.. insbesondere wenn man noch soviele andere ideen im kopf hat. Gruss Gmd
  4. sorry, das sind genau solche seiten die "mir" bei diesem fall nicht helfen. Davon habe ich viele angeschaut. Aber danke fuer die antwort. Gruss Gmd
  5. Hallo, ich probiere diese frage mal hier. Moeglicherweise etwas breiteres publikum als in "Externe Schnittstelle", und ist ja auch allgemeiner. Gegeben sein ein kreisbogen (kein greisbogen ) als teil eines kreises mit radius r im 3d raum, mit den Euler-koordinaten p1 =(x1,y1,z1). Wir nehmen an dass w = 1 ist und das quaternion ist qu1 ={x1',y1',z1',1}, transformiert von den Euler-koordinaten . Wie berechne ich die transformationsmatrix qt, die den punkt p1 nach p2 = {x2,y2,z2} verschiebt und die ebene (gruen) parallel zum einheitsvektor r dreht. In 2D ist das einfach, in 3D habe ich problem die richtige matrizenoperationen zu finden. Ich verwende eine umfangreiche library, also operationen sind nicht das problem. Der ansatz fehlt mir. Man kann das problem ja zerlegen in transformation und rotation, so habe ich das in 2D mit einfachen winkelfunktionen geloest. Jede 3D engine tut das mit transform.around , aber ich habe keine ahnung mehr wie ich transform.around mit quaternions ausdruecke. Das war erstes semester mate und ist sehr lange her. Im web ist nichts konkretes zu finden, nur allgemeiner kram zu den grundlage und 3d engines, die das problem erledigen. Waere toll einen hinweis zu bekommen. Danks Gmd
  6. toll, das reicht, wenn ich zum ersten mal einen typ erkenne kann ich das teil ohne probleme auf null legen, die daten holen und zuruecklegen. Ich frage inzwischen nur einmal den typ ab und dann ist das bekannt. Voellig ok, vielen vielen dank. Ist spaet geworden, mal wieder. Trotzdem noch ein filmchen. https://teutanic.com/trace_block_mit_kompass.mp4 Blockerkennung mit kompass. Habe himmelsrichtungen auf der anlage festgelegt und richte fahrtrichtungen danach aus. So kann ich richtung und gegenrichtung bestimmen. Habe beidseitige blockerkennung (vorwaerts und rueckwaerts) fertig. Neue kaertchen (boxen in der mitte) werden fuer jeden vollstaendigen block angelegt und die gefundenen gleise werden in der originalliste markiert. Naechster schritt sind die weichenstrassen mit schaltung der weichen. Sind aber noch einige sonderfaelle zu loesen. Jedenfalls komme ich ganz gut voran und die neue oberflaeche faengt an sich zu bewaehren. Viele funktionen sind jetzt immer schneller zu implementieren mit mehr und mehr grundlagen. Nebenbei schaue ich mir scripte an (Lua), die ich moeglicherweise abwandeln und verallgemeinern kann. Zumindest sind einige ideen gut, auch wenn die scripte dazu meist speziell sind. Aber das ist ja zu erwarten und ok fuer die meisten faelle. Anyway.. ich gehe schlafen, morgen ist auch noch ein tag, und das wetter ist gut. Danke nochmals fuer deine bemuehungen. Gruss Gmd
  7. gmd

    Siggis Modellbau

    meine guete bin ich weit weg von der deutschen sprache .. lol Gruss Gmd
  8. gmd

    Siggis Modellbau

    Wirklich gute sache ihr beiden, werde greisverkehr sicherlich verwenden. Gruss Gmd
  9. Danke fuer die klaerung, haette ich ja eigentlich erkennen sollen. Sieht den wald vor baeumen nicht, aber dafuer gibt es ja das forum . ok, das gleiche gilt dann fuer die 6072... zwei teile. Dann ist es wirklich das einfachste ich merke mir das vorher bevor ich alle komponenten selbst zusammenbaue. Gruss Gmd
  10. Danke Easy fuer deine Muehe und Zeit, ABER 303;(6078)@-196;0;1 1;20.66726;0;0;0;0;0;0;-27.58129;-63.61285;1.52588E-5;-26.15629;-63.61256;1.52588E-5;-26.15629;-63.61256;1.52588E-5;-25.14358;-63.60538;1.52588E-5;-24.13105;-63.58425;1.52588E-5;-23.11892;-63.54917;1.52588E-5;-22.10737;-63.50014;1.52588E-5;-21.09658;-63.43719;1.52588E-5;-20.08676;-63.36031;1.52588E-5;-19.0781;-63.26953;1.52588E-5;-18.07078;-63.16485;1.52588E-5;-17.065;-63.04631;1.52588E-5;-16.06095;-62.91392;1.52588E-5;-15.05882;-62.7677;1.52588E-5;-14.05879;-62.6077;1.52588E-5;-13.06107;-62.43393;1.52588E-5;-12.06584;-62.24643;1.52588E-5;-11.07329;-62.04523;1.52588E-5;-10.0836;-61.83039;1.52588E-5;-9.09696;-61.60192;1.52588E-5;-8.113567;-61.35988;1.52588E-5;-7.133604;-61.10431;1.52588E-5 und die kurzform 303;(6078)@-196;0; 1;20.66726;0;0;0;0;0;0 und spur 1 1;20.4;0;20.4;0;0;0;0 Das was du beschreibst hatte ich gehofft und gesucht. Beispiel ist die linksweiche 6078 von fleischmann H0. Der 5. Parameter ist 0 ?? Habei keine negativen winkel gefunden, war allerdings schon spaet Aber heute morgen sind auch keine winkel da. Hmmm Edit: 1;18.69248;0;0;35.7;-30;0;0 Ich habe eine gefunden, die 6076 zeigt richtig an .. aber 1;16.39467;0;0;0;0;0;0 die 6070 wieder nicht und die sind am meisten verwendet. Da habe ich bei meiner suche wohl immer die falschen erwischt. Es besteht wohl keine hoffnung dass das gefixt wird, also muss ich mir einmal merken, was links- und rechtsweichen sind. Zumindest fuer Fleischmann H0 zur zeit. Gruss Gmd
  11. Hallo nochmal, Frage: Woran kann ich erkennen (ueber die Schnittstelle oder auch per Lua) dass es sich bei einer weiche um eine links oder rechtsweiche handelt ? Im editor sind die spurwinkel ja positiv oder negativ, aber mit kommando 303 bekomme ich das nicht und wenn ich alle segment uebertragen lasse, dann habe ich keine ahnung wonach ich schauen muss. Vielleicht kann jemand helfen. Danke Gmd
  12. Hallo, habe mal wieder einen schritt zu berichten. https://teutanic.com/umbenennen.mp4 Das erste filmchen zeigt das umbenennen aller gleise einer kleinen anlage. Das dauert etwas und ich habe nicht die eleganteste art und weise gewaehlt das zu implementieren, wird sich noch aendern. Ich lese alle gleise und schaue dann einzeln nach was es fuer ein typ ist. Das ist sehr ineffizient. Ich sollte die typen separat lesen, dann kann ich 120 kommunikationen auf 10 reduzieren. Naja man macht fehler. Das umbenennen muss sein, damit ich jede komponente eindeutig identifizieren und adressieren kann. Ich erhalte die gleisnummern und speichere auch die originalnamen und referenzen ab, kann jederzeit den urzustand wiederherstellen. Nun zum naechsten schritt. Analysis_States.pdf Anbei ein diagram, dass eine art state machine darstellt. Zustandsdiagramm beim erkennen von gleismaterial. Ich mache zunaechst folgende annahmen oder festlegungen, nicht alle variationen sind im diagramm enthalten. Ein block muss mindestens 5 gleise (standardlaenge) enthalten und kann bis zu 4 weichen enthalten, eine am anfang und ende und zwei in der mitte mit mindestens 2 gleisen abstand zwischen allen weichen. Ich habe eine weile ueberlegt ob ich weichen in meiner blockdefinition zulasse oder nicht und habe zunaechst entschieden, dass ich seitensicherungen etc auf blockeben mache und nicht allein durch weichenstrassen. Weichenstrassen koennen gleise zwischen den weichen enthalten, ich habe aber noch nicht entgueltig festgelegt wie ich weichengruppen beim rangieren behandele. Jedenfalls erst mal die sogenannten normalfaelle. Im nachsten video sieht man die ersten schritte des Tracers. https://teutanic.com/trace_block.mp4 Selektion erzeugt segmentgrenzen, die gleise werden dem segment zugeordnet auch abgespeichert. Der Tracer faehrt die gleise ab und dabei werden die ereignisse ausgewertet. Weichestellungen werden erkannt und abgespeichert. Dann wird der Tracer zurueckfahren und das andere ende eines block erkennen. Wieder vorfahren mit einer andere weichenstellung (automatisch). So faehrt der Tracer alle moeglichen kombinationen innerhalb des segments ab und speichert die konfigurationsdaten. An segmentgrenzen koennen bloecke offen sein, die werden dann im anschliessenden segment weiter ausgewertet. Wenn alle strecken erkannt sind, werden die signale und kontakte gesetzt. Das dauert aber noch einen moment bis ich alle faelle implementiert und getestet habe. Das war ja nur der erste schritt mit allen grundfunktionen und anzeigen fuer einfacheres testen. Ausserdem wird der Tracer noch schneller werden Gruss Gmd
  13. Awesome attention to detail, fabulous. Oops, das ist mir gerade so rausgerutscht. Das wird viel arbeit fuer mich diese dinger dann richtig aufzustellen in meinen bloecken Gute Arbeit Gruss Gmd
  14. Normalerweise bin ich kein freund von YouTube aber gelegentlich findet man mal was gutes. Derzeit mache ich mich schlau wie im betrieb verschiedene gleisnutzungen bezeichnet und gesichert werden. Ich werde danach die blockerkennung versuchen anzupassen. Hier ist ein gutes video. Fuer die beschilderung mit ich noch auf der suche, aber das kommt sowiso spaeter. Noch ein kapitel ist die sicherung des rangierbetriebs. Mal sehen was dieser autor noch so in seinem kanal hat. Gruss Gmd
  15. Hallo, nochmal. Hier ist die kleine testanlage, die ich gebaut habe um die ersten konzepte der blockerkennung zu verfeinern und zu testen. Sind noch eine ganze reihe von ungeklaerten punkten, aber man muss ja mal irgedwann damit anfangen. Mein genrische script fuer die blockverarbeitung habe ich ja vor urzeiten schon mal gepostet ind meiner blockdemo anlage. Darauf baut das alles auf, ein generisches script das eigenstaendig konfliktvermeidung organisiert und parametriesiert wird durch fahrplandaten. Wenn vielleicht einiges in diesem thread noch theoretisch und abstrakt klang so soll jetzt allmaehlich etwas mehr beispiel dazukommen. Also nun zur sache. Sucht nicht nach einem sinn der gleisfuehrung und die gebaeude sind auch nur drauf um haltepunkte zu markieren. Rechts unten ist ein kopfbahnhof, in den kein zug einfahren kann (derzeit). Das ist der ausgangspunkt von zuegen die hier abgerufen werden und dann auf die reise gehen. Es gibt nur eine eingleisige fernstrecke und verschiedene beifahrstrecken oder ueberholstrecken. Auch ist einen gegenstrecke und eine verladestrecke vorhanden. Mit der anlage habe ich nun folgendes ziel: Mit minimalen eingaben will ich erreichen, dass alle notwendigen bloecke, die gesichert werden muessen, erkannt und benannt werden, die notwendigen kontakte und signale automatisch gesetzt und benannt werden. Die definitionstabellen fuer mein steuerscript automatisch generiert werden und auf die anlage runtergeladen werden. Dann kann entweder ein zug aus dem kopfbahnhof random per timer oder auch von hand gestartet werden, und der rest der anlage muss sich darauf einstellen ohne dass es kracht. Zu einem beliebigen zeitpunkt muss man unterbrechen und die gesamte anlage wieder auf den ursprungszustand zuruecksetzen koennen. Warte und haltezeiten and den bahnhoefen, sowie geschwindigkeits und andere einschraenkungen sollen dann nach und nach erweitert und bereucksichtigt werden. Wenn das alles geht werde ich die anlage umbauen und fahrplanwuerdig machen, dh. keine anlage bei der irgendwann eine deadlock passiert wie bei dieser. So das ist der erste wesentliche schritt, danach kommen noch andere. Gruss Gmd
  16. Danke BahnLand, die hast gerade meine entscheidung besteaetigt. Ich habe die begiffe im Programm geaendert, im Kopf und im KontextMenu, da sind jetzt auch die bildchen drin. Also die entscheidung ist: Verbundverwaltung - als allgemeiner oberbegriff Zugtaufe - fuer die erstellung und benennung von zuegen Zugabruf - fuer die plazierung vorhandener zuege Wagengruppierung - fuer die zusammenstellung von wagen, wobei die gruppe eine eigene plazierung hat, bis hin zu einzelwagen. Wagenabruf - fuer die plazierung von wagengruppen Im kontextmenu habe ich Konfiguration durch Verbund ersetzt. Das war jetzt erst mal wichtig, da ich jetzt die dokumentation mache bevor ich wieder zuviel vergesse und da haette ich halt gerne die entgueltigen bezeichnungen drin, wenn ich die screenshots mache. Gruss Gmd
  17. Vielen Dank, Maenner, irgendwo im hinterkopf hatte ich verbund und habe auch beides gefunden, hence die frage. Ich denke in den simplen dingen kann man wikepedia ja einigermassen glauben, ansonsten bin ich immer skeptisch was ich im internet finde. 90% oder sogar mehr ist einfach schrott, das habe ich intensive erlebt mit mehreren themen. Und damit werden danmn auch noch die AI's gefuettert. Also: Ich werde Verbund benutzen und der Begriff Zugtaufe gefaellt mir, besser als Zug Design, das ist so neudeutsch . Zugdepot ist ok denke ich. Mit dem thema wagen muss ich nochmals nachdenken. Wagenverbund Erstellen und Verbunddepot fuer die plazierung ist nicht so das gelbe. Mal sehen, vielleicht faellt ja jemandem noch was besseres ein. Jetz gehe ich erst mal wieder an die blockerkennung, damit mal was auf einer anlage passiert. Werde mir mal eine kleine testanlage bauen, die soweit die faelle enthaelt, die ich zunaechst abdecken will. Nochmals Danke fuer all Beitraege Gruss Gmd
  18. Nicht der ganze zug, nur eine wagengruppe ? das ist vielleicht das wort ? Zuggarnitur, imliziert das nicht eine Lok ? Gruss Gmd
  19. haengen die mit pflaster zusammen ? lol .. Hatte ich vermutet, fange aber langsam an deutsche worte zu vergessen nach ueber 30 Jahren. Danke fuer die antwort. Gruss Gmd
  20. Danke fuer die likes. Anbei ein screen shot vom zugdepot mit der fertigen funktion fuer kupplungsaktivierung. Das gleiche wird dann irgendwann kommen fuer wagenkonfigurationen. Hier ein paar fragen and die eisenbahnexperten. Wie sagt man eigentlich in deutsch fuer "waggon consists" ? Wagenverbund ? und was ist die Mehrzahl ? Wagendepot ist ja nicht aussagekraeftig fuer mehrere verbundene wagen. Kurswagen koenen ja auch einzelne wagen sein, aber wie sagt man zu einer zusammenstellung von mehreren kurswagen mit dem gleichen ziel ? Ist das auch ein Verbund ? oder Kursverbund ? gruss Gmd
  21. Hallo, habe nochmal ein filmchen gemacht. Hilft mir auch mit testen und ablaeufe klarer zu sehen. https://teutanic.com/Favorites.mp4 Hatte begonnen "bequemlichkeitsfunktionen" einzubauen, und einige sind auch beim testen hilfreich. Hier wird die objektauswahl unterstuetzt mit der moeglichkeit lieblingsmodelle zu markieren und schneller zu finden. Das wird fuer alle objekte gelten von denen das programm weiss. Beim testen ist mir aufgefallen dass es natuerlich auch komponenten gibt, wie z.b. endwagen jeder art, die gedreht werden sollen und zwar nicht nur zur anzeige sondern auch bei der plazierung auf der anlage. Habe das "spiegeln" eingefuehrt, und fuer jedes objekt dass potentiell gedreht werden soll kann dies gesetzt werden. Beim konfigurieren eines zuges wird erkannt ob es sich um die letzte position handelt und wird automatisch gedreht. Kann auch manuell geaendert werden. B Beim aufgleisen wird das dann beruecksichtigt. Ein gedrehtes objekt kann auch vom ende nicht mehr verschoben werden. Spaeter beim rangieren wird das dann die konsequenz haben dass ein solche objekt vor dem anhaengen gedreht wird und die vordere kupplung (fals vorhanden) deaktiviert ist. Mit der zugkonfiguration kann man nun epochengerechte zuege zusammenstellen, soweit die modelle vorhanden sind, und braucht dies nur einmal zu tun fuer alle anlagen. Das wars fuer heute. Gruss Gmd
  22. Hallo, Heute mal wieder ein filmchen. https://teutanic.com/ZugDepot.mp4 Das zugdepot ist erstmal in einer ersten version fertig. Noch ein paar kinks wie man am ende sehen kann und auch noch keine filter fuer einschraenken der angezeigten objekte. Ist derzeit ja kein problem, HWB mit seinen tausenden von fahrzeugen haette da noch einige schwierigkeiten . Fuer mich reicht es zur zeit zum testen. Die zugkonfigurationen koennen anlagenunabhaengig definiert werden, und zur verwendung auf verschiedenen anlagen plaziert werden. Das programm kann das verwalten. Allerdings sind die eigenschaften auf allen anlagen gleich, also ein Lokalzug bleibt eben ein Lokalzug egal wo er plaziert wird. Allerdings kann ein zug auch mehrere verwendungen haben, ob das nun sinn macht oder nicht ist sache des betrachters. Auch hier werde ich noch filter einbauen, just for fun .. Nun, der naechste schritt ist nun wirklich die blockerkennung fertig zu machen. Ich bin noch am experimentieren wie ich am besten die weichenorientierungen finden kann. Eine rechtsweiche ist zwar per definition eine rechtsweiche, kann aber je nach richtung eine ausfahrt aus einem block oder eine einfahrt bedeuten, oder auch beides bei gegenverkehr. Es gilt also eine fahrtrichtung als standard oder default festzulegen und die andere richtung ist dann die gegenrichtung. Die blockerkennung bracuht also eine richtung und ermittelt dann auch die blockverwendung, oder macht zumindest einen vorschlag. Ich bin auch dabei eine erste kleine testanlage zusammenzustellen auf der alle aspekte zu finden sind, die ich in einer ersten version realisieren will. Dann kann ich das stueck fuer stueck testen. Es wird mal wieder spaet hier, und regen haben wir auch mal wieder seit geraumer zeit. Geht ja jetzt langsam in den Winter. gruss Gmd Ich muss mich noch entschuldigen dass das Kontextmenue abgeschnitten war. Dupliziere Komponente und Speichern Konfiguration waren die Kommandos, die nicht zu sehen waren. Hatte keine lust das nochmal zu machen.
  23. Hallo an alle die hier lesen, Heute mal wieder nur ein bildchen. Habe das zugdepot fast abgeschlossen. Das ist eine sammlung von zugzusammenstellungen, die unabhaengig von der anlage erstellt werden und dann auf verschiedenen anlagen eingesetzt werden koennen. Es sind nicht nur zuege, koennen auch nur wagenkombinationen sein, bis hin zu einzelnen wagen (Kurswagen), wenn man ein separates ziel im fahrplan angeben will. Das wird dann beim rangieren beruecksichtigt. Nebenbei habe ich mal einen entwurf gemacht, wie ich den fahrplan entwerfen will. Ueblichweise werden im echtbetrieb dafuer stringdiagramme oder aehnliches eingesetzt. Das werde ich dann auch so machen. Fuer bestimmte streckenabschnitte und zeiten kann man dann einen fahrplan graphisch entwerfen und irgendwann wird dann das programm auch sagen ob das von zeiten und entfernungen moeglich ist. Das bildchen unten zeigt das prinzip. Ich habe vor natuerlich noch weitere informationen einzublenden, wie zugname, geschwindigkeiten, moegliche restriktionen, etc. Desweiteren werde ich das gleiche diagramm dann auch fuer die darstellung der aktuellen zugbewegung veerwenden, und ebenfalls rangiervorgaenge damit definieren. Da geht es dann nicht um zeiten und aufenthalt, sondern welche wagen wohin sollen und wie zusammengestellt werden. Naja das wird noch einen moment dauer, aber wenn erst mal die grundfunktionen fuer das diagramm stehen ist es nicht mehr so wild, wenn die strecken gut definiert sind. Der aufwand ist halt immer erst in den grundleistungen. Der naechste post geht dann um das zugdepot. Gruss Gmd
  24. Hallo an alle die an der konvertierung von HWB interessiert sind. Ich habe gestern abend mal aus spass den weg versucht nachzuvollziehen den HWB aufgezeigt hat (zumindest oberflaechlich) und dabei sind verschiedene fragen und probleme aufgetaucht. Nun will ich diesen beitrag hier nicht in beschlag nehmen und ausserdem bin ich nicht sicher, dass eine detaillierte beschreibung hier oeffentlich erwuenscht ist. Ich habe einige punkte ergaenzt und versucht den weg etwas genauer zu beschreiben, mit moeglichen sackgassen oder fallen. Ziel war es die modelle in Sketchup zu importieren. Allerdings habe ich da dann aufgehoert, weil mir die texturzuweisungen und korrekturen einfach zu muehsam sind. Da hat HWB schon eine ziemlich kraftanstrengung vollbracht. Wagen lassen sich ja einfacher konvertieren aber loks sind da schon aufwendiger. Mir kostet das zuviel zeit. Die konvertierung laesst sich komplett automatisieren mit screen scraping technology aber die nachbearbeitung bleibt. Also, langer rede kurzer sinn, ich habe eine beschreibung, die ich gerne per link zur verfuegung stelle. Schickt eine PM mit email und ich werde sie schicken. Denkt immer daran, hier ist es 7 stunden spaeter, es kann also einen halben tag dauern bis die email kommt. Gruss Gmd
  25. Hier das filmchen zu dem thema hilfsfunktionen. https://teutanic.com/hilfsfunktionen.mp4 Die fenster sind wieder aus dem rahmen herausgeloest zur besseren uebersicht. Objekte koennen durch kopieren oder auch Guid identifiziert werden. Durch kopieren koennen objektparameter leichter festgelegt werde, wie gleisabstand bei signalen oder auch variationen. Ein zielname (meist ein gleis, kann auch ein kontakt sein) und eine resultierender objektname werden angegeben und sobald die eingaben vollstaendig sind wird ausgefuehrt. Mit einem zielgleis ist nicht festgelegt an welchem ende oder in welcher richtung plaziert werden soll. Dazu dient die box Richtungsumkehr. Alle positionierten objekte werden durch gespeicherte referenzen identifiziert und verwaltet. Ich habe nur wenige faelle gezeigt, alles ist gruendlich getestet und funktioniert auch mit gebogenen gleisen. Nun sollte niemand auf die idee kommen, dass dies eine neu art von objektpositionierung sein soll, anstelle der manuellen positionierung aus dem katalog, obwohl es einfacher ist eindeutige namen zu garantieren (mit blockprefix oder laufender nummer). Dies sind nur hilfsfunktionen mit denen ich die elementaren operationen und scripte teste, die ich fuer die automatische blockerkennung brauche. Wenn eine lok einen block abfaehrt koennen damit automatisch benoetigte elemente gesetzt werden. Hauptsignale, vorsignale, geschwindigkeitsanzeigen, einfahrkontakte, bremskontakte, haltekontakte, ausfahrkontakte, seitensicherungen eines blocks bei einfahr- und kreuzweichen (insbesondere vor bahnhoefen), das kann eine ganze menge manueller aufwand sein, insbesondere wenn man dafuer dann noch fuer jedes element die steuerung definieren muss, fahrstrassen definieren und auch verwalten muss. Und am ende wird das alles ziemlich statisch, d.h. es werden immer wieder die gleichen vorprogrammierten ablaeufe stattfinden und nicht dynamisch aenderbare (durch fahrplaene oder zufallsereignisse etc.) ablaeufe erzeugt. Dabei ist noch nicht einmal der definitionsaufwand fuer GBS elemente betrachtet, wenn man signale, weichen, belegtmelder usw. erstellt und verbinden will. Mein ziel ist es das alles zu automatisieren, damit man sich auf die planung, gestaltung und betrieb konzentrieren kann und die vielen manuellen definitionen vermeiden kann. Auch ist eine flexible ebenenverwaltung wichtig fuer die verwaltung von groesseren anlagen, aber das ist vergleichsweise trivial umd wird dann nach der blockverwaltung kommen, bevor ich tatsaechlich anfange eine groesse anlage zu definieren. Da ist eine flexible ebenenverwaltung auch gut zum testen, insbesondere bei U-bahnen und unterflur schattenbahnhoefen oder auch tunnelanlagen. Es ist schon hilfreich wenn man alle virtuellen spuren in einem segment mit einem knopf sichtbar machen kann, oder alle virtuellen spuren in allen segmenten, da die ebenen in einer netztstruktur organisiert sind und nicht nur in eine linearen liste. gruss Gmd
×
×
  • Neu erstellen...