-
Gesamte Inhalte
417 -
Benutzer seit
-
Letzter Besuch
Alle erstellten Inhalte von Eggu
-
A small berthing issue
Eggu antwortete auf 220hotwheelss Thema in [International] Problems and solutions
Yes, you are right. Replacing the big ship with a smaller one (and adjusting the trigger contact) works . Attached the modified solution (together with the other corrections I described above). Still open: modify the method to work with the big ship. regards, Eggu Berthing Experiment- small-ship.mbp -
A small berthing issue
Eggu antwortete auf 220hotwheelss Thema in [International] Problems and solutions
I am still wondering why the "Phrontistes-method" does not work in this case. In other creations it works, it is also the method Goetz explained to me some time ago. regards, Eggu -
A small berthing issue
Eggu antwortete auf 220hotwheelss Thema in [International] Problems and solutions
great idea, but in this case, this does not work, too. I attached the modified file: - corrections as mentioned in my first post - separate event, triggered when boat is back on main track - "twitching" with method from @Phrontistes - in addition: remember original ship position, using dummy object, restoring this position later, just before the "twitching". Might be someone will find more issues. regards, Eggu Berthing Experiment- Eggu-mod.mbp -
A small berthing issue
Eggu antwortete auf 220hotwheelss Thema in [International] Problems and solutions
to connect a vehicle functional to a track (in addition to the logical/physical) linking, you also need one line of Lua Code (new position of vehicle = current position of vehicle), something like that: $("Containership MBS Ituana").transformation.position = $("Containership MBS Ituana").transformation.position (this somehow imitates the manual twitching) I tried this, but unfortunately it does not work, might be there is some other issue. Your code (event blocks) do not work at all, after the delay block of 18 sec the ship should go back to the main track (via SX1), I suppose, but then you have to set the speed to a negative value (-1 instead of +1). at the end I can not see the code for re-linking the ship to the main track (this code block is near the top, where it is not needed). as last step you should re-set the speed for the ship. As alternative method you can move a proper track part, with the ship still linked and connected. For deeper investigation some comment on you code blocks would be helpful. regards, Eggu -
Die erste Verzögerung ergibt zwei Zweige entweder sofort "$("H/V Hauptsignal 1").state = 1" ausführen, oder zunächst 7 sek. verzögern und dann auch "$("H/V Hauptsignal 1").state = 1" ausführen. Was in der EV nach einem linearen Ablauf aussieht, ergibt bei Verzögerungen in Lua jeweils eine weitere Verzweigung (weil die Funktion verlassen wird, und nach dem Timeout erneut aufgerufen wird). Gruß Eggu
-
Inkonsistenz: "Fahrzeugverband" und "Auslösen von Gleiskontakten"
Eggu hat Thema erstellt in Fragen zur Steuerung
Wenn eine Lok mehrere ungekuppelte Fahrzeuge (Wagons, oder andere Loks mit v=0, Kupplungen deaktiviert) schiebt, dann wird bezügl. "Auslösen von Gleiskontakten" diese Reihung wie ein gekuppelter Verband behandelt. (erstes Fahr-Objekt triggert "Gleiskontakt betreten", das letzte "Gleiskontakt verlassen"). Wenn ich aber die Fahrobjekte dieses Quasi-Verbandes z.B. mittels einer Wiederholung ("für alle Fahrzeuge in einem Zug/Verband") iteriere (und zB die Namen printe), so erhalte ich nur das aktive Lok-Fahrzeug. Das ist für mein Logik-Verständnis inkonsistent. Wenn ich so mehrere gekuppelte (Teil-) Verbände zu einem großen Quasi-Verband zusammenschließe, ev. mit aktiven Loks, (die hintere schiebt am stärksten), dann gibt es an einem Gleiskontakt auch nur die Events wie bei einem komplett gekuppelten Verband. Wenn ich mir dann die Elemente dieses Quasi-Verbandes anschaue, so ist die Situation um einiges komplizierter, der Teilverband mit einer Lok v>0 wird angezeigt, welcher dem Kontakt am nächsten ist (so meine bisherige Beobachtung). Habe gerade eine Anwendung, bei der ich einen Trigger pro Fahrobjekt in einem (dichten) (Quasi-) Verband bräuchte, (1) aber ein weiterer Filter in der Wiederholungsfunktion wäre (für andere Zwecke) auch hilfreich ("alle berührenden Fahrzeuge"). (1) Projekt "Rolltreppe" via "Förderband"-Lösung, mehrere SX1-Loks fahren synchron, aber möglichst ohne Berührung, um Quasi-Stufen nachzubilden. 14215D6D-DF7E-407D-AF31-D855052C50BA -
... mit einer ähnlichen Anweisung "Für Elemente in einer Tabelle" Die aktuelle Listen-Version übersetzt zu einer for..ipairs Schleife, hier werden aber nur numerische Indizes einer Liste berücksichtigt. Tabellen-Elemente, die keinen numerischen Key (>= 1) haben, werden einfach ignoriert (Lua-konform). Eine Variante mit for..pairs würde alle Elemente berücksichtigen (wenn auch in keiner definierten Reihenfolge). Gruß Eggu
-
Ablaufproblem beim Aktivieren einer Fahrstraße
Eggu antwortete auf WalterWs Thema in Fragen zur Steuerung
kurze Antwort: Die verschiedenen Animationsnamen müssen jeweils in einer Objektvariablen abgelegt werden, und der Zugriff erfolgt dann indirekt über diese Variablen, die dann aber einheitliche Namen haben. Die Richtung kann auch abgefragt werden und kann entsprechend als Unterscheidung dienen. Gruß Eggu -
Man kann auch einen Kontakt mit einem Leuchtwürfel (mit Signalfunktion) koppeln und hat dann auch 14 Schaltzustände, und auch eine Anzeige. Den Würfel selbst sollte man einer speziellen Ebene "unsichtbar" zuordnen, die man dann manuell unsichtbar schalten müsste. Hier wäre von Vorteil, Ebenen definieren zu können, die automatisch im Simulationsbetrieb auf unsichtbar schalten. Gruß Eggu
-
aus der Wiki: _CP - Beginnt ein Objekt mit diesem Namen, dann wird es als Kontaktpunkt interpretiert. Kontaktpunkte verbinden sich automatisch mit anderen Kontaktpunkten. Die Ausrichtung des Objekts bestimmt dabei die Richtung, in die ein Objekt beim Verbinden gedreht wird. Kontaktpunkte werden nicht gezeichnet, ihre Geometrie spielt daher für das 3D-Modellbahn Studio keine Rolle.
-
Super, jetzt müsste sich noch die Umgebung im Strom der Zeit ändern
-
Leider nein.
-
Ja, diese Treppen-Lösung hatte ich schon letzten November in seiner Anlage "Ballonfahrt" bewundert. Gruß Eggu
-
Ablaufproblem beim Aktivieren einer Fahrstraße
Eggu antwortete auf WalterWs Thema in Fragen zur Steuerung
Im Ereignis Bahnhofsausfahrt, die Animationen zweiteilen und weitere Verzögerung hinzufügen: if not deferredCall then if signal.state == 1 then local t = layout:getVehiclesOn(signal) for i, Fahrzeug in ipairs(t) do local t, t2 = layout:getVehicleGroup(Fahrzeug, 3) for i, Wdh in ipairs(t) do local Ori = t2[i] Wdh.animations["01-Sperre 1 Oeffnen"]:play(-1, -1) Wdh.animations["02-Sperre 2 Oeffnen"]:play(-1, -1) -- Wdh.animations["03-Tuer 1 Oeffnen"]:play(-1, -1) -- Wdh.animations["04-Tuer 2 Oeffnen"]:play(-1, -1) end end defer(2, "Verzögerung_p2") end elseif deferredCall == "Verzögerung_p2" then if signal.state == 1 then local t = layout:getVehiclesOn(signal) for i, Fahrzeug in ipairs(t) do local t, t2 = layout:getVehicleGroup(Fahrzeug, 3) for i, Wdh in ipairs(t) do local Ori = t2[i] -- Wdh.animations["01-Sperre 1 Oeffnen"]:play(-1, -1) -- Wdh.animations["02-Sperre 2 Oeffnen"]:play(-1, -1) Wdh.animations["03-Tuer 1 Oeffnen"]:play(-1, -1) Wdh.animations["04-Tuer 2 Oeffnen"]:play(-1, -1) end end defer(2, "Verzögerung") end elseif deferredCall == "Verzögerung" then signal.trackContact.autoAcceleration = true defer(2, "Verzögerung (2)") elseif deferredCall == "Verzögerung (2)" then signal.trackContact.autoAcceleration = false end -
Müsste doch mit "herkömmlichen" Fahrstraßen zu lösen sein. Wie genau sieht die Anlage aus ? Ist sie hier als Entwurf verfügbar?
-
Ich mische mich mal ein, weil ich mir das auch angeschaut hatte: running and 0 or 1 hat die gleiche Wirkung wie: running ? 0 : 1 siehe: https://www.lua.org/pil/3.3.html
-
Komplette Keyframes (auch mehrere) kann man zB direkt in der Timeline selektieren und verschieben (wie üblich mit G wie grab)
-
Die Anim.-Geschw. ändert man, indem man die Keyframes horizontal verschiebt (also den Zeitpunkt verändert), oder die Änderung der location/scale/Winkel unterschiedlich ausführt. Beides muss zusammen passen, so dass es auch zur Wiedergabegeschwindigkeit passt (Frames/second), und so dass es nicht ruckelt, und so, dass man nicht unnötig viele Keyframes erzeugen muss. Für gleichmäßige Drehungen reichen ein Keyframe alle 90°, oder 120°. 180° könnte problematisch sein, weil dann die Drehrichtung zweideutig ist. Bei Drehungen um mehrere Achsen kann es unerwartete Ergebnisse geben (siehe "Euler-Drehungen" oder auch "Gimbal-Lock"). Dann könnte man auf Quaternionen-Drehung ausweichen.
-
-
Ja, den Keyframe-Typ kann man an verschiedenen Stellen einstellen. Den genauen Kurvenverlauf sieht man im Graph-Editor, dort kann man auch die Kurvenverläufe fein-tunen. Ob man die Default-Werte hierfür verändern kann, weiß ich nicht, müsste man recherchieren. Gruß Eggu
-
Was ist denn das Problem, dass die Walze am Anfang/Ende der Anim. langsam beginnt und aufhört? Dann ist in Blender bestimmt noch die Standard-Einstellung für Anim. eingestellt (Bezier, ease-in/out), key-frame mode sollte dann auf linear umgestellt werden (zB im Anim. Layout).
-
Habe 'mal die Lösung von Götz in einem kleinen Beispiel umgesetzt, gefällt mir ganz gut. (Weiche noch nicht zu einem Stummel verkürzt) 259AFCC9-41C1-4613-9B9A-95C51D41954C Gruß Eggu
-
Frankreich-Bahn
-
Geht meines Wissens nur per "Gruppe auflösen" und "neu gruppieren". Erweiterte Gruppenfunktionen stehen seit einiger Zeit auf der to-do-Liste.
-
Virtuelle Rampe 00B604B8-5A07-4906-92CC-98B0A2FB307F
Eggu antwortete auf jlooss Thema in Fragen zur Planung