Hawkeye Posted November 5, 2021 Share Posted November 5, 2021 vor 20 Minuten schrieb Neo: Es braucht nämlich eine Bedingnug die prüft, ob zwei Fahrzeuge innerhalb einer vorgegebenen Strecke/Zeit kollidieren werden. Das wird interessant, wenn das Abbremsen vor engen Kurven und ein Beschleunigen aus der Kurve heraus mitberücksichtigt wird.😉 vor 28 Minuten schrieb Neo: Mir geht es bei meiner Abzweigung um ein Proof-of-Concept, ob also Vorfahrtsregeln auch ohne komplexe Zählerlogiken auskommen können. Ist eine gut Anregung, um damit weiter zu experimentieren.👍 Viele Grüße, Hawkeye Link to comment Share on other sites More sharing options...
Neo Posted November 5, 2021 Share Posted November 5, 2021 Hallo, vor 7 Minuten schrieb Hawkeye: Das wird interessant, wenn das Abbremsen vor engen Kurven und ein Beschleunigen aus der Kurve heraus mitberücksichtigt wird. das muss es nicht, denn ein Autofahrer kann die Bewegungen eines anderen Autos auch nur interpolieren/schätzen und nicht exakt vorhersagen. Viele Grüße, Neo Link to comment Share on other sites More sharing options...
prinz Posted November 5, 2021 Share Posted November 5, 2021 Einen Gruß in die Runde, ich habe mal versucht, Neos Lösung für eine Kreuzung zu adaptieren. Hier bin ich auf folgende Punkte gestoßen: Beim Eintragen des targets für ein Fahrzeug kommt es vor, dass ein gültiges target ermittelt wird, aber nicht beim Fahrzeug "ankommt". Eine spätere Abfrage ergibt target == nil. Bei den Ost-West-Fahrstraßen werden anscheinend mehrere gesperrt. Stehen sich zwei Linksabbieger gegenüber, wird die Fahrt nicht freigegeben, da auch die Fahrstraßen "geradeaus" und "rechts" gesperrt sind. Ich habe dies durch eine "Sonderprüfung" im Skript umgangen. Könnte aber auch daran liegen, dass ich bei den Fahrstraßen einen Fehler gemacht habe. Sofern der erste Punkt nicht zum Tragen kommt, läuft es recht gut. Kreuzung_nach_Neo.mbp Play drücken reicht aus. Im Protokoll werden ein paar Prüf-Traces ausgegeben (target nicht vorhanden, Prüfung gegen einzelne Fahrstraßen). In den Zielen Nord und Süd sind die Geradeausziele doppelt enthalten, um so die Wahrscheinlichkeit hierfür zu erhöhen. Grüße, Wolfgang Link to comment Share on other sites More sharing options...
prinz Posted November 5, 2021 Share Posted November 5, 2021 Auch mal eine Frage an @Neo, Das Problem mit den "vergessenen" targets habe ich auch in einer anderen Anlage. Ist hier schon eine Ursache bekannt ? Grüße, Wolfgang Link to comment Share on other sites More sharing options...
Hawkeye Posted November 6, 2021 Share Posted November 6, 2021 (edited) Mayday, Mayday, Mayday, ... Hallo @Goetz, Lua versteht mich nicht mehr! (oder ich verstehe Lua nicht mehr). Ich möchte aus einer Liste mit 2 (Objekt-) Einträgen einen letztlich per Zufall auswählen und einem Fahrzeug als "vehicle.target" zuordnen. target akzeptiert aber aus der Liste immer nur ein Objekt, warum? --[[ Ein zufälliges Ziel für das Fahrzeug wählen. Die möglichen Ziele sind im Kontakt als Variable gespeichert. --]] local Liste = contact.variables["Fahrziel"] local Zahl = math.random(#Liste) print("Objekt in Liste[1] =", Liste[1].name) print("Objekt in Liste[2] =", Liste[2].name) print("Test:") vehicle.target = Liste[1] print("Fahrzeug:" ,vehicle.name,"Ziel 1:", vehicle.target.name) vehicle.target = Liste[2] print("Fahrzeug:" ,vehicle.name,"Ziel 2 :", vehicle.target.name) print("Auswahl nach Zufall:") print("Objekt in Liste[1] =", Liste[1].name) print("Objekt in Liste[2] =", Liste[2].name) print ("Zufallszahl =", Zahl) vehicle.target = Liste[Zahl] print("Fahrzeug:" ,vehicle.name,"Ziel:", vehicle.target.name) Fehlermeldungen im EP: Obwohl beide Objekte in der Liste vorhanden sind, kann immer nur eins als "vehicle.target" ausgewählt werden, Das verstehe ich nicht. Viele Grüße, Hawkeye Edited November 6, 2021 by Hawkeye Link to comment Share on other sites More sharing options...
Dad3353 Posted November 6, 2021 Share Posted November 6, 2021 16 minutes ago, Hawkeye said: Mayday, Mayday, Mayday, ... I think that 'List[2]' is not the same as 'Liste[2]' (Line 11 of the code...) Ich denke, dass 'List[2]' nicht dasselbe ist wie 'Liste[2]' (Zeile 11 des Codes ...) Link to comment Share on other sites More sharing options...
Goetz Posted November 6, 2021 Share Posted November 6, 2021 vor 41 Minuten schrieb Dad3353: List[2] That may be your translator playing tricks on you, Doug I don't see that spelling anywhere in his example Link to comment Share on other sites More sharing options...
Goetz Posted November 6, 2021 Share Posted November 6, 2021 vor einer Stunde schrieb Hawkeye: Obwohl beide Objekte in der Liste vorhanden sind, kann immer nur eins als "vehicle.target" ausgewählt werden, Du kannst nicht im selben Zyklus ein Ziel zuweisen und gleich im Anschluss auslesen, Hawkeye. Lua gibt nur den Befehl. Die Ausführung macht das Studio anschließend. Lua wartet aber mit der nächsten Zeile nicht, bis das Studio den vorherigen Befehl ausgeführt hat. Es liest einfach weiter den verfügbaren (unveränderten) Datensatz und gibt weiter Befehle aus. Ich bin mir nicht sicher, aber ich vermute den Fehler an dieser Stelle. Denn dein Fehler besagt ja, dass im Fahrzeug kein Ziel gefunden wurde. Dass du versuchst auf ein Objekt zuzugreifen, welches nicht existiert. Viele Grüße Götz Link to comment Share on other sites More sharing options...
HaNNoveraNer Posted November 6, 2021 Share Posted November 6, 2021 Im Zweifel die Anlage/Demo hier hochladen oder als Entwurf. Link to comment Share on other sites More sharing options...
Dad3353 Posted November 6, 2021 Share Posted November 6, 2021 44 minutes ago, Goetz said: That may be your translator playing tricks on you, Doug I don't see that spelling anywhere in his example Link to comment Share on other sites More sharing options...
Hawkeye Posted November 6, 2021 Share Posted November 6, 2021 vor einer Stunde schrieb Goetz: Denn dein Fehler besagt ja, dass im Fahrzeug kein Ziel gefunden wurde. Bingo! Götz, …, mal wieder. 😂 Ich versuche für die Fahrwege mit einer selbstgebauten Kreuzung (aus V6, also noch mit Weichenstellungen!) eine andere Abzweig Lösung zu finden. Wenn aber eine Weiche geschaltet hat, dann kann mit der neuen Anweisung „target“ aber auch immer nur EIN Ziel entsprechend der Stellung gefunden werden. Deshalb die Fehlermeldung! Die Kreuzungen in V7 haben ja keine Weichenstellungen mehr, sondern nur noch Spuren. Da muß man auch erstmal drauf kommen.🙄 Viele Grüße, Hawkeye Link to comment Share on other sites More sharing options...
Goetz Posted November 6, 2021 Share Posted November 6, 2021 vor 47 Minuten schrieb Hawkeye: Die Kreuzungen in V7 haben ja keine Weichenstellungen mehr und das ist ein Riesenfortschritt. Denn Weichen eignen sich nicht gut um Straßenverkehr zu lenken. Schiene und Straße sind als System zu verschieden. Mit den neuen Wegfindungs-Routinen klappt der Straßenverkehr viel besser. Link to comment Share on other sites More sharing options...
Hawkeye Posted November 6, 2021 Share Posted November 6, 2021 (edited) vor 18 Minuten schrieb Goetz: Mit den neuen Wegfindungs-Routinen klappt der Straßenverkehr viel besser. Schon, aber man muß aufpassen, wenn man alte Kreuzungs-Eigenbauten verwenden möchte! Und dann zuerst alle Weichenstellungen löschen. Sonst steht man da wie der Ochs vorn Berg.🤣 VG, Hawkeye Edited November 6, 2021 by Hawkeye Link to comment Share on other sites More sharing options...
Neo Posted November 6, 2021 Share Posted November 6, 2021 Hallo, vor 21 Stunden schrieb prinz: Das Problem mit den "vergessenen" targets habe ich auch in einer anderen Anlage. Ist hier schon eine Ursache bekannt ? dass ein Ziel verloren geht ist mir bisher nicht bekannt, es gilt allerdings zu beachten, dass ein Ziel nur dann im Fahrzeug gespeichert wird, wenn es auch eine gültige Route bis dort hin gibt. Soll heißen, wenn zum Zeitpunkt der Zielzuweisung keine Route gefunden werden kann, dann wird das Ziel gar nicht im Fahrzeug gespeichert. Auf diesen Umstand werde ich in der Lua-Doku noch etwas besser hinweisen. Viele Grüße, Neo Link to comment Share on other sites More sharing options...
HaNNoveraNer Posted November 6, 2021 Share Posted November 6, 2021 (edited) Moin Ich habe erste Verbesserungen im Fahrverhalten vorgenommen. Leider gibt es noch einen kleinen unentdeckten Fehler im Code, irgendwann läufts nicht mehr. 343CF3F9-514B-43F3-BE2F-A113ED3A1464 Gruß Thomas Edited November 6, 2021 by HaNNoveraNer Link to comment Share on other sites More sharing options...
Andy Posted November 6, 2021 Author Share Posted November 6, 2021 (edited) Hallo Thomas, das muß nicht mal unbedingt ein Fehler sein. Schau mal, ob es z.B. eine Situation ist, wo etwas auf einen T1_CHECK fährt, der noch nicht verlassen ist. (Du hast auch ein 'wird betreten' und 'wird verlassen' drin - das haben wir schon als zu gefährlich vermieden). Es ist einfach richtig biestig. Gruß Andy Edited November 6, 2021 by Andy Link to comment Share on other sites More sharing options...
HaNNoveraNer Posted November 6, 2021 Share Posted November 6, 2021 Sicher irgendeine Situation, die ich noch nicht bedacht habe. Link to comment Share on other sites More sharing options...
HaNNoveraNer Posted November 6, 2021 Share Posted November 6, 2021 (edited) Und nun mit Hauptstraße: 0F9957A8-8CED-4F17-8EAB-4DBBB17E1DA8 rechts vor links: 343CF3F9-514B-43F3-BE2F-A113ED3A1464 Wenn man jetzt noch die Freigabekontakte verdoppelt und auf die Kreuzung setzt und beim Verlassen schon die Spur freigibt, sieht es noch besser aus. Aber dann müssen viele Definitionen neu gemacht werden :-) Edited November 6, 2021 by HaNNoveraNer Link to comment Share on other sites More sharing options...
Hawkeye Posted November 7, 2021 Share Posted November 7, 2021 Hallo, mal eine blöde Frage am Rande. In V6 konnten eigene Abzweigungen erstellt werden. Dafür waren Spuren der Kategorie „Nur 3D-Modell“ vom Typ „Spline“ erforderlich. Die neuen Kreuzungen in V7 haben aber nur noch Spuren, wie erstellt man den in V7 das Grundmodell für eine eigene Abzweigung/ Kreuzung? Oder anders ausgedrückt, wie kann ein Grundmodell Abzweig/ Kreuzung aus dem Katalog V7 modifiziert werden? Viele Grüße, Hawkeye Link to comment Share on other sites More sharing options...
aloys63 Posted November 7, 2021 Share Posted November 7, 2021 (edited) Hallo habe eine Frage Man man nicht bei Kreuzungen die neuen Bedingungen Neue EV-Bedingung "Fahrstraße ist frei und kann aktiviert werden" Neue EV-Bedingung "Fahrzeug fährt in Richtung eines Gleises/Kontakts" Nutzen zb (Fahrzeug fährt in Richtung eines Gleises/Kontakts" Fahrstraße ist frei und kann aktiviert werden" Fahstraße Anfordern) Edited November 7, 2021 by aloys63 Link to comment Share on other sites More sharing options...
Andy Posted November 7, 2021 Author Share Posted November 7, 2021 Hallo, machen wir mal einen praktischen Test, so wie das am Ende mal aussehen könnte. Ich habe hierzu eine Version erstellt, ohne Schnickschnack, Content-ID: 3924F36F-35F6-4952-B042-2C9DAE554A45 Das ist jetzt eine einzige Gruppe. Hierzu gibt es eine Testanlage (siehe unten). In der fehlen nun zwei Abzweigungen! Das Vorgehen ist nun: Laden der Testanlage (importieren) Bearbeiten -> Einfügen aus -> Anlage. Die obige ID eintragen, dann wird die Abzweigung angezeigt. Danach ist die EV und eine Abzweigung als Gruppe vorhanden. Am besten nun diese Gruppe per Katalog -> 3D-Modelle -> Neu aus Selektion (Gruppe Abzwg HN) und speichern. Liegt nun in 'Meine Modelle' ! Nun kann man die erste Gruppe an ihren Platz bringen, auflösen und die Kontakte justieren (alle etwas außerhalb von der Kreuzung ziehen, den Blauen ein ganzen Stück davor, das ist die Einfahrtserkennung. Die zweite Abzweigung holt man nun aus den eigenen Modellen. Man hätte auch die erste duplizieren können. Autos auf die Piste - außerhalb der Abzweigungen!!! (sind vorbereitet mit Objektvariable und Einstellung für automatisches Bremsen/Beschleunigen) und Geschwindigkeit einstellen. Start der Animation. Jo, anders wird es in V7 kaum möglich sein. Okay - die Abzweigungs-EV wird wohl früher oder später noch besser. Jedenfalls braucht diese modulare Abzweigung nur eine einzige EV und kann dann beliebig oft eingesetzt werden. Kontakte anpassen und fertig. Gruß Andy Abzwg-Testgelände.mbp Link to comment Share on other sites More sharing options...
BahnLand Posted November 7, 2021 Share Posted November 7, 2021 Hallo @Hawkeye, vor 4 Stunden schrieb Hawkeye: Die neuen Kreuzungen in V7 haben aber nur noch Spuren, wie erstellt man den in V7 das Grundmodell für eine eigene Abzweigung/ Kreuzung? Oder anders ausgedrückt, wie kann ein Grundmodell Abzweig/ Kreuzung aus dem Katalog V7 modifiziert werden? Weichenstellungen sind in V7 für Straßen-Modelle nicht mehr vorgesehen. Die Abzweigungen werden nun über dynamische Zielvorgaben definiert, wobei als Zielpunkte auf den Straßen aufgelegte Gleiskontakte adressiert werden. Die im Katalog angebotenen "fertigen" Kreuzungen und Abzweigungen sind 3D-Modelle mit statisch konfigurierter Geometrie. Diese können also in der Form nicht modifiziert werden. Um Kreuzungen mit eigener Geometrie zu bekommen, muss man also entweder selbst neue Kreuzungs-und Abzweigungs-Formen bauen, oder man verwendet das 1-spurige Straßenstück und baut damit wie bei den Gleisen mit dem 3D-Modelleditor eigene Kreuzungen und Abzweigungen. Man beachte aber, dass sich hierbei die weißen Straßenmarkierungen überlappen und teilweise verschwinden oder zu viel sichtbar sind. Jedenfalls werden auch bei den so erstellten Straßenkonfigurationen keine Weichenstellungen mehr spezifiziert. Viele Grüße BahnLand Link to comment Share on other sites More sharing options...
Hawkeye Posted November 7, 2021 Share Posted November 7, 2021 Hallo @BahnLand, danke für die Erläuterung. Das heißt, die äußere Geometrie einer „fertigen“ Kreuzung aus dem Katalog kann nicht verändert werden, nur die darin enthaltenen Spuren können beliebig nach eigenem Ermessen angepasst werden. Größe/ andere Radien sind also nur im Bereich der äußeren Geometrie möglich. Eigene Kreationen können also weiterhin wie in V6 erstellt werden, aber dabei auf Weichenstellungen verzichten, bzw. bei alten vorhandenen Konstruktionen aus V6 vor dem Einsatz in V7 darauf achten, das vorhandene Weichenstellungen gelöscht werden! Sonst kann es für die Fahrzeuge Probleme bei der Zielvergabe geben. Danke, damit kann man Arbeiten. Viele Grüße, Hawkeye Link to comment Share on other sites More sharing options...
BahnLand Posted November 7, 2021 Share Posted November 7, 2021 Hallo @Hawkeye, bei einem Spline-Objekt wie einem Gleisstück oder einem einfachen Straßenstück wird das Modell insgesamt durch eine Folge aneinandergereihter "Kettenglieder" gebildet, das dann mithilfe des 3D-Modelleditors entlang nahezu beliebiger Spurverläufe zurecht gebogen werden kann. Durch Kombination solcher Spurverläufe erhält man dann auch Kreuzungen oder Weichen. Allerdings steht für die Bildung solcher Spline-Modelle nur das 3D-Modell dieses Kettenglieds zur Verfügung, sodass alle Spuren, soweit sie sichtbar sind, alle dasselbe Aussehen haben. Soll nun eine Kreuzung oder Abzweigung eine ganz bestimmte Struktur besitzen (z.B. speziell auf die Kreuzung oder die Abzweigung abgestimmte Straßenmarkierungen oder Straßenberandungen wie z.B. Bordsteine oder Leitplanken), lässt sich dies mit dem Kettenglied des Spline-Modells nicht mehr darstellen. In diesem Fall baut man das zu kreierende Objekt (z.B. die Kreuzung oder die Abzweigung) komplett als 3D-Modell. Das Modellbahn-Studio interpretiert dieses weiterhin als Kettenglied. Aber solange die angegebene Länge für das Objekt nicht ein Vielfaches des 3D-Modells beträgt, gibt es auch keine Aneinanderreihung des Modells. Konsequenterweise müssen nun alle Fahrspuren vom Typ "virtuell" sein, da sie sonst jeweils durch dieses 3D-Modell dargestellt würden. So wie man auch bei Gleisen und Spline-Straßen (die Straßenstücke ohne Verzweigungen im Online-Katalog) nur den Spurverlauf, aber nicht das Kettenglied selbst modifizieren kann, lässt sich auch die aus einem Kettenglied bestehende komplette Kreuzung oder Abzweigung nicht modifizieren. Nur bei der Definition der (unsichtbaren) Spuren und von deren Verläufen hat man weterhin die Möglichkeit, sie im 3D-Modelleditor nach eigenem Ermessen zu modifizieren. Auf die Straßenteile im Online-Katalog angewendet heißt dies zusammengefasst: Die als Spline-Modelle angebotenen Straßenstücke, welche ausschließlich aus einer oder mehreren parallelen sichtbaren geraden Fahrspuren bestehen, lassen sich wie Gleise im 3D-Modelleditor beliebig konfigurieren mit der Einschränkung, dass das "Kettenglied" den kompletten Straßenquerschnitt über alle parallelen Fahrspuren hinweg darstellt. Die Straßenstücke lassen sich also immer nur "insgesamt" und nicht für jede Fahrspur einzeln "verbiegen". Bei den Straßenkreuzungen und -abzweigungen im Online-Katalog ist das komplette Objekt das 3D-Modell, also das Kettenglied. Es lässt sich daher mit dem 3D-Modelleditor nicht verformen. Unsichtbare Spurverläufe (Typ = Virtuell) lassen sich aber auf dem 3D-Modell weiterhin beliebig einrichten. Viele Grüße BahnLand Link to comment Share on other sites More sharing options...
prinz Posted November 7, 2021 Share Posted November 7, 2021 Am 6.11.2021 um 15:15 schrieb Neo: dass ein Ziel nur dann im Fahrzeug gespeichert wird, wenn es auch eine gültige Route bis dort hin gibt. Hallo Neo, das ist soweit klar. In folgender Testanlage werden regelmäßig Fahrzeuge gestartet. Sie bekommen immer die Gegenseite als Ziel zugewiesen. Die beim Start weißen Kontrollleuchten zeigen an, dass das Fahrzeug ein target hat. Wird die Kontrollleuchte rot, hat das Fahrzeug kein Target. Die beim Start grünen Leuchten gehören zu den Bremskontakten. Hier bedeutet: Grün=Bremskontakt offen, Rot=Bremskontakt geschlossen. Bei der Abzweigung 2+1 musste ich Weichenstellungen definieren, da ansonsten Fahrzeuge ohne Ziel dort abbiegen und es zum Chaos kommt. Derzeit sind die Geradeausspuren aktiv. Du wirst sehen, dass manche Fahrzeuge das Ziel annehmen, andere nicht. Ich meine, da muss noch was im Argen liegen. Test-Fahrziel.mbp Viele Grüße Wolfgang Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now