Jump to content

BahnLand

Mitglieder
  • Gesamte Inhalte

    7889
  • Benutzer seit

  • Letzter Besuch

Alle erstellten Inhalte von BahnLand

  1. Hallo EASY, eigentlich hat Neo so etwas ja mit der Kamera realisiert: Wenn man die Kamera (in Deinem Beispiel Objekt1) mit einem "Ziel-Objekt" (in Deinem Beispiel Objekt2) verbindet, wird sie von jeder Position aus genau auf dieses Objekt ausgerichtet. Ich weiß nicht, ob Du von Neo den Algorithmus dazu haben kannst. Ansonsten habe ich hier ein kleines Bild gezeichnet:   Zwei Objekte "Objekt1" (das bunte Koordinatenkreuz) und "Objekt2" (das graue Koordinatenkreuz) seien an beliebigen Stellen mit den Koordinaten (x1, y1, z1) und (x2, y2, z2) im Raum positioniert (das dünne Fadenkreuz markiere den Koordinatenursprung (0, 0, 0)). Dann wird die relative Verschiebung von Objekt2 gegenüber Objekt1 durch die relativen Koordinaten (x2-x1, y2-y1, z2-z1) dargestellt (siehe die Kanten der im obigen Bild eingezeichneten Dreiecks-Flächen). Wird ein Objekt aus dem Online-Katalog des Modellbahn-Studios auf die Bodenplatte gezogen, ist es immer zuerst einmal horizontal und vertikal entlang der x-Achse des Gizmos ausgerichtet. Diese Ausrichtung genügt, um aus den oben gezeigten Differenz-Koordinaten die horizontale Winkelabweichung w und die vertikale Winkelabweichung v zu bestimmen, durch welche der Richtungspfeil von Objekt1 nach Objekt2 definiert ist. Für die Berechnung dieser Winkel wird die Funktion "Arcustangens"  (Umkehrfunktion des Tangens, atan) benötigt. Die Winkel w für die horizontale und v für die vertikale Abweichung ergeben sich hieraus wie folgt: w = atan( (y2-y1) / (x2-x1) )    für x2 <> x1 w = 90°    für x2 = x1 v = atan( (z2-z1) / sqr( (x2-x1)*(x2-x1) + (y2-y1)*(y2-y1) ) )   für mindestens x2 <> x2 oder y2 <> y1  (sqr = Quadratwurzel-Funktion) v = 90°    für x2 = x1 und gleichzeitig y2 = y1 Setzt man nun beim Objekt1 im Eigenschaftsfenster des Modellbahn-Studios (oder äquivalent über die Schnittstelle) die gewonnenen Winkelwerte v für die Rotation um die y-Achse und w für die Rotation um die z-Achse ein (die x-Rotation wird auf "0" belassen), richtet sich das Objekt1 genau in Richtung zum Objekt2 aus. Hierbei spielt es keine Rolle, welche Orientierung (Verdrehungen) das Objekt1 vor der Zuweisung hatte, weil sich die Winkelmaße grundsätzlich auf die Ausrichtung entlang der x-Achse beziehen. Um die Drehungen entsprechend der in Beitrag #33 beschriebenen Transformationen durchführen zu können, werden die Sinus- und Cosinus-Werte der beiden Winkel, nicht jedoch die Winkel selbst, benötigt: sin(w) = (y2-y1) / sqr( (x2-x1)*x2-x1) + (y2-y1)*(y2-y1) ) cos(w) = (x2-x1) / sqr( (x2-x1)*x2-x1) + (y2-y1)*(y2-y1) ) sin(v) = (z2-z1) / sqr( (x2-x1)*x2-x1) + (y2-y1)*(y2-y1) + (z2-z1)*(z2-z1) ) cos(v) = sqr( (x2-x1)*x2-x1) + (y2-y1)*(y2-y1) ) / sqr( (x2-x1)*x2-x1) + (y2-y1)*(y2-y1) + (z2-z1)*(z2-z1) ) Damit von Objekt1 nach Objekt2 ein Richtungspfeil eindeutig positioniert werden kann, dürfen die Koordinaten beider Objekte nicht identisch sein. Da sich dann die Koordinaten entlang mindestens einer Koordinaten-Achse unterscheiden, sind die sqr-Ausdrücke in den obigen Gleichungen für die Sinus- und Cosinus-Werte stets positiv, sodass der Sonderfall der "Division durch 0" nicht - wie es bei den Winkel-Berechnungen darüber der Fall ist - nicht auftritt. Wendet man nun auf das Objekt1 zuerst die vertikale Drehung um die y-Achse an (Drehung in der x-z-Ebene, Verwendung von sin(v) und cos(v)), und anschließend die Drehung um die z-Achse (Drehung in der x-y-Ebene, Verwendung von sin(w) und cos(w)), so wird für das Objekt1 über die in Beitrag #33 beschriebenen Matrix-Transformationen ebenfalls die Ausrichtung in Richtung von Objekt2 erreicht. Viele Grüße BahnLand    
  2. Hallo Quackster, tolle Korken-Textur - habe diese, ohne den text zu lesen, sofort als Korken erkannt. Viele Grüße BahnLand
  3. Hallo Seehund, ich hatte EASY im Beitrag #27 eigentlich so verstanden, dass er noch mehr zum theoretischen Verhalten der 3D-Drehungen wissen möchte. Nur darauf habe ich mich in Beitrag #33 bezogen. Bezüglich der Aussage, dass die "eigenmächtiige Modifizierung" explizit eingegebener Rotationswerte durch das Modellbahnstudio nicht korrekt oder zumindest erklärungsbedürftig ist, bin ich vollkommen Eurer Meinung.
  4. Hallo EASY, eigentlich kommen bei "Winkeldrehungen" nur die trigonometrischen Funktionen Sinus (sin) und Cosinus (cos) vor, die im Gegensatz zum Tangens (tan) keine "Singularitäten" (Funktionswerte "unendlich") besitzen. Deshalb sollten erzeugte neue x-, y- und z-Koordinaten immer berechenbar sein.  Das obige Bild zeigt eine Drehung in der x-y-Ebene (x-Achse nach rechts, y-Achse nach oben zeigend). Der Punkt (r,0) wird durch Drehung um den Winkel w entlang des Kreises mit Radius r um den Koordinaten-Nullpunkt (0,0) in die Position (x,y) mit x = r*cos(w) und y = r*sin(w) gedreht. Ist der Ausgangspunkt nicht (r,0), sondern (u,v) "irgendwo" in der x-y-Ebene, wird deren neue Position (x,y) durch die Drehung des Punktes (u,v) um den Koordinaten-Nullpunkt mit Winkel w wie folgt berechnet: x = u*cos(w) - v*sin(w), y = u*sin(w) + v*cos(w) Für die Darstellung von Objekten im 3-dimensionalen Raum werden zumindest beim DirectX-Format Transformations-Matrix-Operationen verwendet, die auf sämtliche Koordinaten-Punkte (x,y,z) eines Objekts angewendet werden. Die "FrameTransformMatrix" in einer (Direct)X-Datei sieht folgendermaßen aus (hellgrau unterlegt): Hierbei dient die rot umrahmte 3x3-Matrix (3 Zeilen + 3 Spalten) der Rotation der x-, y- und z-Koordinaten eines "Raumpunktes". Im obigen Bild würden die x-, z- und y-Koordinaten des Zielpunktes (links im Bild vertikal angeordnet, bei der im DirectX-Format verwendeten amerikanischen Koordinaten-Schreibweise sind die y- und z-Koordinate vertauscht) berechnet, indem man die Werte der entsprechenden Matrix-Teile mit den ursprünglichen x- z- und y-Koordinaten (oben über der Matrix horizontal angeordnet) multipliziert und dann aufaddiert. Die obige Matrix mit "1" in der Diagonale und sonst "0" ist "neutral" und lässt daher die Original-Werte unverändert. Bei einer Drehung in der x-y-Ebene (Rotation um die z-Achse) werden in die FrameTransForm-Matrix an den rot markierten Stellen bei einer Drehung um den Winkel w dessen Sinus- und Cosinus-Werte eingetragen. Mit der oben gezeigten Vorgehensweise erhält man dann genau die ganz oben genannten Formeln für die Berechnung der neuen (x,y)-Koordinaten aus den ursprünglich vorhandenen Koordinaten (dort (u,v) genannt). Für Drehungen in der x-z-Ebene (um die y-Achse) und in der y-z-Ebene (um die x-Achse) geht man analog vor: Beliebige Drehungen im 3-dimensionalen Raum erhält man nun, indem man die obigen Operationen für die 3 genannten Ebenen (oder Rotationsachsen) "in geeigneter Reihenfolge" hintereinander ausführt. Hierbei ist "geeignet" ein wesentlicher Aspekt. Denn Rotationsoperationen führen beim Vertauschen der Reihenfolge zu unterschiedlichen Ergebnissen. Man kann sich dies am besten mit 90°-Drehungen bei einem Spielwürfel verdeutlichen: Im obigen Bild sind in 2 Reihen je 3 Spielwürfel angeordnet, deren 1. Würfel (vorne) die identische Ausgangsposition besitzen. Die Anordnung der 2. und 3. Würfel jeder 3er-Reihe entstand jeweils durch eine 90°-Drehung aus der Position des vorangehenden Würfels. In der vorderen Reihe wurde der Würfel zuerst um die x-Achse nach links und dann um die y-Achse nach rechts gedreht. Beim zweiten Würfel wurden dieselben Drehungen durchgeführt, jedoch in umgekehrter Reihenfolge (zuerst um die y-Achse nach rechts, dann um die x-Achse nach links). Man sieht, dass die Endpositionen der beiden Würfel (hinten) völlig unterschiedlich sind. Man kann diesen Effekt mit "realen" Spielwürfeln leicht nachvollziehen. Um die Drehungen auch im Modellbahn-Studio nachvollziehen zu können, habe ich den Würfel als 3D-Modell in das Verzeichnis "Zusätzlich-Test" des Modellbahn-Katalogs gestellt. Viele Grüße BahnLand  
  5. Hallo Modellbahnspass, da hast Du dem Lufthansa-Airport-Express im Modellbahn-Studio (oder realisierst Du Deine Anlagen noch mit dem alten 3D-Eisenbahnplaner?) ein schönes Denkmal gesetzt. Ich hatte mal vor etlichen Jahren den Lufthans-Airport-Express in die 1960er/1970er Jahre zurück versetzt - allerdings nur auf Papier und in virtueller Form. Aber der VT11/601 als Lufthansa-Airport-Express hätte sicher auch in "real" in eine gute Figur gemacht. Viele Grüße BahnLand
  6. Hallo EASY, Seehund und Neo vielleicht trage ich mit diesem Kommentar ja "Eulen nach Athen". Aber vielleicht nützt es Euch ja auch etwas: Wenn man ein Objekt um mehrere Achsen dreht (z.B. um die z- und y-Achse), ist das Ergebnis in Abhängigkeit davon, ob man (im Beispiel) zuerst die Drehung um die z-Achse und dann um die y-Achse oder in umgekehrter Reihenfolge vollzieht, verschieden. Weitere Unterschiede ergeben sich auch durch die Interpretation der Achsen: Werden beim Drehen des Objekts um die z-Achse mit Euren Operationen die x- und y-Achse mit "verdreht"? Dies trifft im Modellbahn-Studio beispielsweise für die Achsen des Modells, nicht jedoch für die Achsen des Gizmos zu, die unabhängig von der Verdrehung eines Modells immer konstant ausgerichtet bleiben. Zur Veranschaulichung hier ein paar konkrete Beispiele: 00 ICE-Triebkopf ist auf Bodenplatte ursprünglich in Richtung x-Achse ausgerichtet. A01 Gizmo-Drehung um die z-Achse 45° nach links hinten (-45°): Triebkopf steht in der Diagonale zwischen der x- und y-Achse. A02 Gismo-Drehung um die y-Achse 45° nach links oben (+45°): Triebkopf ist entlang der (horizontalen) Diagonale um 45° nach oben geneigt und nach links gekippt. Zurück zur Ausgangslage aus Bild 00: B01 Gismo-Drehung um die y-Achse 45° nach links oben (+45°): Triebkopf ist entlang der x-Achse um 45° nach oben geneigt. B02 Gizmo-Drehung um die z-Achse 45° nach links hinten (-45°): Triebkopf ist entlang der (horizontalen) Diagonale um 45° nach oben geneigt, aber seitlich nicht gekippt. Neuer Beginn mit der Ausgangslage aus Bild 00: C01 Einstellung der z-Rotationseigenschaft im Eigenschaftsfenster auf -45°: Ergebnis ist Bild A01. C02 Zusätzliche Einstellung der y-Rotationseigenschaft auf 45°: Ergebnis ist Bild B02. Dies entspricht von Bild A01 ausgehend einer 45°-Drehung um die bei der Rotation um die z-Achse mit verdrehte y-Achse des Modells (die hiermit nicht mehr mit der Gizmo-y-Achse übereinstimmt. Nochmals mit der Ausgangslage von Bild 00 beginnend: D01 Einstellung der y-Rotationseigenschaft auf 45°: Ergebnis ist Bild B01. D02 Zusätzliche Einstellung der z-Rotationseigenschaft auf -45°: Ergebnis ist Bild B02. Eigentlich hätte ich nach den vorausgehenden Interpretationen nun das Bild A02 erwartet, in der aus Szenario C geschlossenen Annahme, dass für die z-Rotation die mit der D01-Rotation entsprechend geneigte Modell-z-Achse herangezogen würde. Frage an Neo: Kann man daraus schließen, dass die Rotations-Angaben im Eigenschaftsfenster immer in einer Richtung (immer von oben nach unten - zuerst x-, dann y- und zuletzt z-Rotation) "abgearbeitet" werden?  Dies würde erklären, warum für die Szenarien C und D dasselbe Ergebnis erzielt wird. Offenbar ist Szenario D identisch mit Szenario B, und bei Szenario C wird vom Modellbahn-Studio die Reihenfolge der Abarbeitung vertauscht, sodass dieses ebenfalls mit Szenario B übereinstimmt. Wurde das Objekt aus der Ausgangsstellung heraus um die z-Achse um einen Winkel verdreht, der nicht ein Vielfaches von 90° ist, kann man eine weitere Drehung um die Gizmo-x-Achse oder die Gizmo-y-Achse in den Rotations-Werten im Eigenschaftsfenster nicht mehr nachvollziehen, weil die Gizmo-Drehung offenbar vom z-Winkel abhängig anteilig auf die x- und y-Rotationswerte aufgeteilt wird. Dies ist für mich insofern noch "einsichtig", da die Gizmo-Rotationsachsen hier nicht mehr mit den Modell-Rotationsachsen übereinstimmen. Wo bei mir allerdings die geistige Nachvollziehbarkeit vollständig kapituliert, ist die Tatsache, dass dann, wenn sowohl die x-Rotation als auch die y-Rotation auf einen von "0" verschiedenen Wert gestellt werden, vom Modellbahn-Studio "eigenständig" auch der z-Rotationswert verändert wird, und gleichzeitig die x- und y-Rotationswerte andere Beträge annehmen, als ursprünglich eingegeben wurden. Die explizite gleichzeitige Eingabe der x- und y-Rotationswerte und möglicherweise auch noch des dritten z-Rotationswerts ist damit meines Erachtens nicht handhabbar. Oder habe ich da grundsätzlich etwas nicht verstanden? Um nun auf die Ausgangs-Diskussion zurück zu kommen: Kann es sein, dass Ihr (EASY und Seehund) bei Euren Rotations-Steuerungen genau mit den hier beschriebenen Phänomenen kämpft ("... z-Achse taumelt")? Viele Grüße BahnLand  
  7. Hallo Schlagerfuzzi, bei dieser Variante (realisiert mit Bordmitteln) kommst Du ohne Wechsel zwischen dem Tag- und Nacht-Modus aus. Tag und Nacht werden einfach durch Verschieben der "Lampe" (das Objekt "Licht") über oder unter die Anlage simuliert. Mit der Verknüpfung der Lampe mit einer entsprechend positionierten Drehscheibe, kannst Du die Tag- und Nachtsteuerung auch über die Ereignisverwaltung realisieren. Viele Grüße BahnLand
  8. Hallo Wolfgang, die Erwartungen aus meinem Beitrag zu Deinem ersten "Geräusche"-Video haben sich voll erfüllt. Ich denke, dass ich auf diese Anleitungen zurückgreifen werde, wenn ich irgendwann dazu kommen sollte, auch auf meiner Gotthard-Anlage ein paar "Geräusche" zu implementieren. Viele Grüße BahnLand
  9. BahnLand

    Schiebedienst

    Hallo Modellbahnspass, das Problem wird dabei sein, festzulegen, wann die Reaktivierung der Andockfunktion wieder automatisch erfolgen soll. Soll da eine global festgelegte Zeitspanne abgewartet werden? Dann muss die Schiebelok aber rechtzeitiig vom Zug losgelöst und hinreichend weit entfernt sein, damit die Lasso-Funktion nicht mehr zuschlägt. Oder soll man die Zeit, die bis zur automatischen Reaktivierung abgewartet werden soll, individuell eingestellt werden können (z.B. mit einem Timer)? Dann hast Du meiner Meinung nach den Aufwand, den Du für das explizite Reaktivieren einsparen wolltest, aber nur verlagert. Also ich persönlich hätte kein gutes Gefühl dabei, wenn ich beim Abkuppeln der Schiebelok und dem langsamen Lösen vom Zug darauf achten müsste, dass diese "rechtzeitig" genug Abstand gewinnt. Viele Grüße BahnLand
  10. BahnLand

    Schiebedienst

    Hallo Neo, das würde vollkommen passen. Die explizite Reaktivierung der Kupplungs-Andockfunktion (von Hand über das Eigenschaftsfenster, über die EV oder die Steuerschnittstelle) ist (zumindest für mich) völlig ausreichend. Viele Grüße BahnLand 
  11. BahnLand

    Schiebedienst

    Hallo Neo und Modellbahnspass, es gibt (oder gab zumindest bei den alten Märklin-Bügelkupplungen mit Vorentkupplungs-Lasche) außer den beiden oben genannten Möglichkeiten noch eine dritte Variante: c) Schiebelok wird beim Überfahren des Entkupplungsgleises vor-entkuppelt und kann sich anschließend allmählich vom Zug trennen. Diese Variante kommt ohne die Telex-Kupplung aus (diese wird nur benötigt, um beim Entkuppeln unabhängig von der Position des Entkupplungsgleises zu sein). In der "Realität" würde man also der angekuppelten Schiebelok dieselbe Geschwindigkeit wie dem geschobenen Zug verpassen. Das Entkupplungsgleis wird aktiviert, sobald es der letzte Wagen des geschobenen Zuges mir der vorderen Kupplung passiert hat, aber bevor die hintere Kupplung (mit der angekuppelten Schiebelok) den Entkupplungs-Balken erreicht. Das Entkupplungsgleis bewirkt nun eine "Vor-Entkupplung" zwischen dem geschobenen Zug und der Schiebelok: die Kupplungen liegen zwar noch aneinander, die Bügel sind jedoch angehoben und werden durch die Vorentkupplungs-Laschen am Zurückfallen über die Haken gehindert. Nun kann die Schiebelok langsamer werden und sich dadurch vom geschobenen Zug trennen. Erst wenn die Bügel der beiden zu trennenden Kupplungen so weit voneinander entfernt sind, dass die Bügel nicht mehr über die Haken der anderen Kupplung reichen, fallen sie in ihre Ausgangslage zurück. Auf das Modellbahn-Studio übertragen entspräche die Vorentkupplung dem Ausschalten der Andockfunktion für die Schiebelok (sodass sie nicht mehr am geschobenen Zug fest hängt).  Das Zurückfallen der Kupplungsbügel in ihre Ausgangsposition, nachdem sich die Schiebelok vom geschobenen Zug getrennt hat, entspräche dem Wiedereinschalten der Andock-Funktion. Viele Grüße BahnLand
  12. BahnLand

    Schiebedienst

    Hallo Neo, dass die Lok mit der höchsten Geschwindigkeits-Einstellung die Geschwindigkeit des Zuges bestimmt, ist mir bewusst und wird von mir auch ausgenutzt. Denn nur so kann ich der Schiebelok bereits vor dem Entkuppeln eine geringere Geschwindigkeit zuordnen, ohne dass sie sich vom Zug löst. Erst wenn sie auf das aktivierte Entkupplungsgleis trifft, wird sie vom restlichen Zug getrennt und fällt dann aufgrund ihrer eigenen geringeren Geschwindigkeit zurück. Das Problem, das ich habe, besteht darin, dass das Entkuppeln nicht funktioniert, wenn die für die Schiebelok eingestellte Geschwindigkeit mehr als 150 mm/s beträgt oder die Differenz zur Geschwindigkeit der Zuglok (und damit des Zuges) zu gering ist. Dies gilt somit auch dann, wenn ich der Schiebelok dieselbe Geschwindigkeit wie der Zuglok zuordne: Sie bleibt über das (aktivierte) Entkupplungsgleis hinaus angekuppelt und kann daher auch durch nachträgliches Reduzieren ihrer Geschwindigkeit nicht mehr vom Zug getrennt werden. Wenn ich der Schiebelok vor dem Entkuppeln keine Geschwindigkeit zuweise (Geschwindigkeit 0), bleibt sie nach dem Entkuppeln vom fahrenden Zug abrupt stehen, da die ihre zugewiesene Geschwindigkeit sofort angenommen wird und die  Lok nicht allmählich auf ihre eigene Geschwindigkeit abbremst. Würde sie - ausgehend von der Geschwindigkeit des Zuges - langsam auf die ihr zugewiesene Geschwindigkeit (eventuell auch "0") abbremsen (so wie heute ein Zug oder eine Lok, deren Geschwindigkeit bei voller Fahrt auf "0" gesetzt wird, nicht abbrupt stehen bleibt, sondern die Fahrt stetig verlangsamt), wäre dies meiner Ansicht nach sogar die besserere Lösung, weil man dann die "Löse"-Geschwindigkeit der Lok vom geschobenen Zug nicht von dessen Geschwindigkeit abhängig machen müsste. Vielleicht wäre ja auch der Vorschlag von Modellbahnspass, die Andock-Funktion via EV (Lok-bezogen) zu deaktivieren (und später wieder zu aktivieren), eine Lösung. Viele Grüße BahnLand
  13. BahnLand

    Neuer Modelbauer

    Hallo Frank, die Modul-Bauweise Deines Fahrradschuppen ist Dir sehr gut gelungen. Bravo! Viele Grüße BahnLand
  14. Hallo Quackster, wenn es Dir nicht auf die Trennlinien in der technischen Zeichnung ankommt, kannst Du folgendes machen (als Demonstrationsbeispiel habe ich meine 18-Zug-Anlage hergenommen): Erstelle von Deiner Anlage eine Kopie (wird verändert) und stelle die 2D-Ansicht ein. Übermale die gesamte Anlagen-Oberfläche mit einer weißen Textur. Stelle beim Objekt "Licht" für die Eigenschaften "Umgebung" und "Diffus" die Farbe "weiß" ein. Falls die Objekte, die keine Gleise sind, stören, kannst Du sie alle weg löschen (alle Objekte außer "Gleise", die Grundplatte und das "Licht"). Zuletzt kannst Du den Kontrast noch erhöhen, indem Du den Gleisen eine "schwarze" Textur zuordnest. Vielleicht kannst Du damit etwas anfangen. Viele Grüße BahnLand P.S.: Falls Du deine Anlagen-Landschaft mit Tunneln "durchlöchert" hast und die Tunnel-Gleise auch sehen möchtest, reduzierst Du das Landschaftsniveau Deiner Anlage komplett auf "0" (für alle Rasterpunkte die Höhe "0" einstellen).  
  15. BahnLand

    Schiebedienst

    Hallo Gemeinde, ich habe gerade unter "Experimentelle Anlagen" im Online-Katalog eine Demo-Anlage "Schiebedienst" eingestellt, bei der ich versucht habe, das Zurückbleiben der Schiebelok am Ende der Steigung, ohne dass dafür der nachgeschobene Zug anhalten muss, nachzubilden. Während der Zug mit unverminderter Geschwindigkeit weiter fährt, bremst die Schiebelok ab und kehrt zu ihrem Ausgangspunkt am Anfang der Steigungsstrecke zurück, um sich an das Ende des nächsten Zuges, der Schubhilfe benötigt, zu setzen.  Eigentlich funktioniert das Szenario recht gut. Aber die Schiebelok trennt sich von dem geschobenen Zug leider mit einem Ruck, der dadurch bedingt ist, dass die für die Schiebelok eingestellte Geschwindigkeit 250 mm/s unter der Geschwindigkeit des geschobenen Zuges liegt. Leider musste ich feststellen, dass der Mechanismus nur dann funktioniert, wenn die Geschwindigkeit des geschobenen Zuges mindestens 350 mm/s und die der Schiebelok höchsten 150 mm/s beträgt. Für die "Normalgeschwindigkeit" des Zuges sind 400 mm/s eingestellt, wodurch sich die 250 mm/s Differenz ergeben.  @Neo: Kennst Du den Grund, warum für die Geschwindigkeiten in diesem Szenario die von mir festgestellten Grenzen zu be(ob)achten sind? Wäre es eventuell möglich, diese Grenzen aufzuheben, sodass sich die Schiebelok "allmählich" von dem geschobenen Zug lösen kann? Übrigens gibt es für dieses Szenario auch ein konkretes Vorbild: Bei der Geislinger Steige (der Alb-Aufstieg an der Strecke Stuttgart-Ulm) halten schwere Güterzüge im Bahnhof Geislingen an, damit sich dort eine Schiebelok hinten dran setzen kann. Hat der Zug bei Amstetten auf der Schwäbischen Alb das Ende der Steigung erreicht, fällt die Schiebelok bei voller Geschwindigkeit langsam zurück, um dann auf dem Gegengleis nach Geislingen zurückzukehren. Sobald Neo die Anlage freigeschaltet hat, wünsche ich viel Spaß beim Ausprobieren des "fliegenden Entkuppelns" (der Betrieb lässt sich mit dem Schalter in der Ecke rechts vorne ein- und ausschalten). Viele Grüße BahnLand
  16. Globale Änderungsmöglichkeiten in der EreignisverwaltungHallo Neo, im Zusammenhang mit der durch den ursprünglichen Beitrag dieses Threads angeregten Diskussion hätte ich hier einen "Verbesserungsvorschlag" für die Ereignisverwaltung, welcher dem Ziel, das Handling der Ereignisverwaltung "überschaubarer" und "sicherer" zu gestalten, einen großen Schritt näher kommen könnte. Ich weiß, dass Du an der Ereignisverwaltung aufgrund der in Aussicht gestellten Scriptsprache eigentlich nicht mehr viel ändern möchtest. Da aber in dem oben genannten Beitrag der "Nutzwert" einer Scriptsprache für einen Großteil der Nutzer des Modellbahn-Studios in Frage gestellt wird (ich gehöre zur anderen Gruppe der Nutzer, die in der Scriptsprache ein wertvolles Ergänzungspotential sehen), halte ich den hier beschriebenen Vorschlag für ein gangbares Vorgehen, mit dem die Hürde, eine etwas komplexere Ereignisverwaltung zu realisieren, deutlich abgesenkt werden könnte. Als Anschauungsbeispiel habe ich die Anlage "Automatik-Steuerung 05b - Streckenvereinigung und -verzweigung" aus dem Online-Katalog herangezogen, die 9 gleichermaßen "programmierte" Harfengleise und 7 mit ebenfalls analogen Ereignis-Definitionen versehene Streckenblock-Abschnitte enthält. In den beiden nachfolgenden Auflistungen sind jene Objekte der Ereignisgruppen "Gleis 01" und "Block 11" wiedergegeben, die sich von den Inhalten der anderen Ereignisgruppen ("Gleis 02" bis "Gleis 09" und "Block 12" bis "Block 17") nur durch die in der Bezeichnung enthaltene Nummer unterscheiden. Die Zahlen am rechten Rand geben an, wie viele Ausprägungen derselben Referenz es in jeder dieser Ereignisgruppen gibt.     Normalerweise wird man bei gleichartigen in Gruppen definierten Ereignis-Definitionen nur eine Gruppe "ausprogrammieren" und dann diese Gruppe so oft duplizieren, wie sie benötigt wird. Neben der Umbenennung der duplizierten Ereignisgruppen selbst muss man sich nun aber in jeder einzelnen Ereignis-Definition schrittweise bis zur tiefsten Ebene "hinein hangeln", um dort schließlich die sich einzig unterscheidende Nummer modifizieren zu können. Abgesehen vom hierfür zu leistenden Arbeitsaufwand (in den obigen Beispielen sind dies 8 * 36 (= 288) manuelle Änderungen bei der Gleisharfe und 6 * 17 (= 102) händische Modifizierungen bei den Streckenblöcken) ist hier natürlich auch das Risiko riesig groß, dass man sich irgendwo versehentlich (und unbemerkt) vertippt, und dann im Anschluss die Ereignissteuerung nicht das tut, was man eigentlich von ihr erwartet. Ich schlage daher vor, den Auswahl-Dialog für das Bearbeiten einer Ereignisgruppe um eine Anzeige des Inhalts und deren Änderungsmöglichkeit in einem Fenster zu erweitern. Im betrachteten Beispiel sei die Ereignisgruppe "Block 12" ein bereits umbenanntes Duplikat der Ereignisgruppe "Block 11". In der Anzeige des Gruppen-Inhalts, den ich mir wie im folgenden Bild vorstelle, enthalten also alle Objekt-Referenzen noch die Nummern aus der originalen Ereignisgruppe, die es nun anzupassen gilt. Hierzu klickt man nun eine zu ändernde Zeile an, worauf diese im unteren Änderungsfeld angezeigt wird. Da kann man sie ändern (z.B. hier die Nummer "11" auf "12" abändern) und dann das Ergebnis mit den Buttons rechts entweder nur an die markierte Stelle oder an alle Stellen, welche den ursprünglichen Text enthalten, übertragen. Diesen Vorgang wiederholt man so lange, bis alle zu ändernden Zeilen dieser Gruppen-Anzeige modifiziert sind. Danach kehrt man mittels "OK" zurück und wiederholt die Prozedur mit weiteren betroffenen Ereignisgruppen. Der Vorteil dieser Variante gegenüber der heutigen Möglichkeit, einzelne Ereignisdefinitionen anzupassen, liegt darin, dass man sämtliche Definitions-Inhalte der ausgewählten Ereignisgruppe (bis auf das Scrollen) gleichzeitig in einem Fenster einsehen und ändern kann, ohne hierfür "im Blindflug" in die Tiefen jeder einzeln Ereignisdefinition "hinunter steigen" zu müssen und hierbei möglicherweise den Überblick zu verlieren. Ob dieser Vorschlag mit überschaubarem Aufwand realisierbar ist und unter Abwägung der im anfangs genannten Beitrag formulierten Bedenken gegen zu komplexe Automatisierungs-Mechanismen gegen die Vorteile einer Scriptsprachen-Lösung auch tatsächlich realisiert werden sollte, kannst letztendlich nur Du entscheiden. Es würde mich aber freuen, wenn eine solche oder ähnliche Lösung zur Erleichterung des Baus komplexer Ereignissteuerungen in das Modellbahn-Studio eingebracht werden könnte. Viele Grüße BahnLand
  17. Hallo Quackster, natürlich gibt es spezielle Situationen, wo man durch direkte Verknüpfungen zumindest Einsparungen in der Ereignisverwaltung (EV) erzielen kann. So sind die sich automatisch öffnenden Türen beim Lokschuppen nur ein Beispiel. Andere Beispiele sind die heute schon (im Sinne des oben angesprochenen Konfigurations-Menüs) bestehenden Verknüpfungs-Möglichkeiten zwischen Vor- und Hauptsignal oder zwischen Weiche und Weichensignal (das zugehörige "Konfigurations-Menü" befindet sich in diesen Fällen im jeweiligen Eigenschaftsfenster).   Es gibt aber auch sicher genügend andere Situationen, deren heute mögliche Bearbeitung mithilfe der EV nicht oder nur sehr schwer über ein Konfigurationsmenü oder vordefinierte Verknüpfungs-Möglichkeiten "ersetzt" werden kann. Hierfür möchte ich speziell das oben schon erwähnte Ereignis "Zug betritt Gleis" nennen: Es gibt hier mannigfaltig viele Reaktionsmöglichkeiten (Zug abbremsen oder anhalten, anderen Zug starten, Weiche oder komplette Weichenstraße umstellen, Signal schalten, Lokomotive pfeifen lassen, Schranke schließen, Entkupplungsgleis bedienen, und und und ...). Wenn man hier die heutige Funktionalität in der EV in ein (ebenso flexibles) Konfigurationsmenü packen würde, hätte man nur Funktionalität von der EV in das Konfigurationsmenü verlagert, die dort dann genauso wie heute in der EV "programmiert" werden müsste. Man hätte also (zumindest bei solchen flexiblen Reaktionsmöglichkeiten) gegenüber der EV nichts gewonnen. Dass es im Modellbahn-Studio "analoge Regler" gibt, ist sicher der Tatsache geschuldet, dass das Modellbahn-Studio dem Bau von virtuellen Modelleisenbahn-Anlagen dient. Und da gehören nun einmal Steuerelemente, mit denen man einen Trafo simulieren kann, einfach dazu. Ich würde deshalb aber nicht die EV "nur als Hilfsmittel" sehen, mit dem man ... Zitat... versucht, eine "digitale Steuerung" mittels "analogen Elementen" umzusetzen. Es gibt genügend EV-gesteuerte Anlagenbeispiele, die völlig ohne analoges Steuerelement auskommen. Ich stimme Dir zu, dass die EV nicht trivial und wohl auch deshalb nicht jedermanns Sache ist. Doch wenn man große Anlagen mit vielen Wegen und vielen Zügen (im Prinzip gilt dies  auch für andere Fortbewegungsmittel wie z.B. Autos) betreiben möchte, wird man um die Unterstützung durch EV nicht herum kommen. Was die Komplexität und Handhabbarkeit der EV anbelangt, hat sich hier seit dem alten 3D-Eisenbahnplaner gewaltig was getan. Wenn ich damals beispielsweise schon die Objekt-Variablen zur Verfügung gehabt hätte, wäre ich wahrscheinlich nicht über ein halbes Jahr (fast "Vollzeitjob") an der Realisierung der Automatik-Steuerung für die 18-Zug-Anlage gesessen. Wo die EV meiner Meinung aber noch "Wünsche offen lässt", ist die Möglichkeit, sich wiederholende Steuerungsvorgänge einfach duplizieren und - ohne für jede einzelne Aktion immer durch das komplette EV-Dialog-Menü "durchsteppen" zu müssen - an die spezifischen Gegebenheiten anpassen zu können. Gerade da verspreche ich mir von der von Neo in Aussicht gestellten Script-Sprache erhebliches Vereinfachungs- und Erleichterungs-Potential. Eine Script-Sprache kann auch "einfach" sein. Ich würde sie also nicht schon im Vorhinein (wir kennen sie ja noch gar nicht) als zu kompliziert und daher für viele Anwender uninteressant oder "nicht erlernbar" verdammen.     Zusammengefasst: Bei standardisierten Abläufen stimme ich Dir voll zu, dass einfache Konfigurationsmöglichkeiten der Verwendung der Ereignisverwaltung vorzuziehen sind. Für komplexere Abläufe halte ich die EV jedoch für unverzichtbar. Und von einer einfachen und leicht zu erlernenden Scriptsprache erwarte ich mir erhebliche Erleichterungen bei der Erstellung einer umfangreichen Ereignissteuerung für große Anlagen. Viele Grüße BahnLand
  18. Hallo Quackster, Du hast Ideen ... ... sieht gut aus. Viele Grüße BahnLand
  19. Hallo Kurt, ich habe mal nach Deiner Beschreibung im Ausgangsbeitrag eine kleine Demo-Anlage gebaut, die ich hier als ZIP-Datei beilege, und die Du einfach nur zu importieren brauchst (ich hoffe, dass der Import bei der Standard-Version funktioniert). Hier funktioniert alles mit nur 3 Ereignis-Definitionen und ohne irgend eine Variable. Wenn Du die Anlage importiert hast, starte einfach die Dampflok mit 200 mm/s. Ab dann läuft die Anlage vollautomatisch weiter ... Falls Du die Anlage nicht importieren können solltest: Die Anlage besteht aus einem Kreis mit insgesamt 3 "Bahnhofsgleisen" (Gleis 1 innen, Gleis 2 in der Mitte, Gleis 3 außen). Die Züge starten nach rechts, wo jeweils das zweite Gleisstück hinter der Weiche mit "Gleis 1", "Gleis 2" und "Gleis 3" bezeichnet ist. An der "Bahnhofseinfahrt" links ist die äußere (erste) Weiche mit "Weiche 1" und die innere (zweite) Weiche mit "Weiche 2" bezeichnet. Für jedes der Gleise 1, 2 und 3 gibt es genau eine Ereignisdefinition, die durch "Zug betritt Gleis" ausgelöst wird. Durch den Auslöser werden folgende Aktionen ausgeführt: Zug auf "aktuellem" Gleis anhalten;   Zug auf "nächstem" Gleis starten;   Weiche 1 und Weiche 2 in Richtung "nächstes" Gleis stellen. Das war's. Wenn Du nun von Hand jenen Zug startest, in dessen Gleis die gerade gültige Weichenstellung verzweigt, läuft die Anlage fortan automatisch weiter. Achte bitte darauf, dass der blaue Button oben in der Button-Leiste des Programms gedrückt ist (Animation eingeschaltet). Nur dann kannst Du die Anlage in Bewegung setzen. Und beachte weiter, dass die jeweils anhaltende Lok nicht über das Gleis 1, 2 oder 3 hinaus fährt. Denn nur dann kann sie auch von diesem Gleis aus gestartet werden (der Start läuft ins Leere, wenn die Lok nicht auf diesem Gleis steht). Zum Abschluss hier noch die 3 Definitionen aus der Ereignisverwaltung, die Du, wenn Du die Anlage wie oben beschrieben aufgebaut hast, direkt so übernehmen kannst.   Ereignis:  Gleis 1     Auslöser:  Zug betritt ein Gleis                        Lok='[Alle Loks]'  Gleis='Gleis 1'       Aktion:    Lokgeschwindigkeit setzen                    Lok='[Alle Loks]'  Gleis='Gleis 1'  Geschwindigkeit='0'  Ist-Geschwindigkeit setzen='0'       Aktion:    Lokgeschwindigkeit setzen                    Lok='[Alle Loks]'  Gleis='Gleis 2'  Geschwindigkeit='200'  Ist-Geschwindigkeit setzen='0'       Aktion:    Weiche schalten                              Weiche='Weiche 1'  Position='1'       Aktion:    Weiche schalten                              Weiche='Weiche 2'  Position='1'       Ereignis:  Gleis 2     Auslöser:  Zug betritt ein Gleis                        Lok='[Alle Loks]'  Gleis='Gleis 2'       Aktion:    Lokgeschwindigkeit setzen                    Lok='[Alle Loks]'  Gleis='Gleis 2'  Geschwindigkeit='0'  Ist-Geschwindigkeit setzen='0'       Aktion:    Lokgeschwindigkeit setzen                    Lok='[Alle Loks]'  Gleis='Gleis 3'  Geschwindigkeit='200'  Ist-Geschwindigkeit setzen='0'       Aktion:    Weiche schalten                              Weiche='Weiche 1'  Position='0'       Ereignis:  Gleis 3     Auslöser:  Zug betritt ein Gleis                        Lok='[Alle Loks]'  Gleis='Gleis 3'       Aktion:    Lokgeschwindigkeit setzen                    Lok='[Alle Loks]'  Gleis='Gleis 3'  Geschwindigkeit='0'  Ist-Geschwindigkeit setzen='0'       Aktion:    Lokgeschwindigkeit setzen                    Lok='[Alle Loks]'  Gleis='Gleis 1'  Geschwindigkeit='200'  Ist-Geschwindigkeit setzen='0'       Aktion:    Weiche schalten                              Weiche='Weiche 1'  Position='1'       Aktion:    Weiche schalten                              Weiche='Weiche 2'  Position='0'  Gruppe:    Ereignisse Ich hoffe, dass ich Dir hiermit weiterhelfen konnte. Viele Grüße BahnLand ============================= Quackster war mal wieder schneller als ich ... Einfache_demo-anlage.zip
  20. BahnLand

    Neuer Modelbauer

    Hallo Seehund, Zitat... und ich weiß auch nicht, wie ich diesen Link unter Beschreibung einfügen kann. Das geht ganz einfach: Inhalt der Adresszeile der Internet-Seite, die verlinkt werden soll, wie oben gezeigt in die Modellbeschreibung einfügen. Danach erscheint im Onmline-Katalog bei der Anzeige des Modells das "Link"-Zeichen (siehe Bild unten). Wenn man auf dieses klickt, wird  die verlinkte Seite automatisch geöffnet. Man kann den Link dann aber auch in der Abzeige der Beschreibung selbst aufrufen. Viele Grüße BahnLand -------------------------------------------------------- Jetzt hat mich Neo überholt.
  21. Hallo Dioramag, wenn Du anhand der Selektionsliste nicht unterscheiden kannst, welches der Objekte nun jenes ist, das Du löschen kannst, musst Du die einzelnen Objekte mit demselben Namen einzeln lokalisieren, um dann feststellen zu können, ob dieses Objekt entfernt werden kann. Wiederhole also die nachfolgend beschriebene Vorgehensweise für jedes Objekt mit dem betroffenen Namen so lange, bis Du das "überflüssige" Objekt (oder die überflüssigen Objekte, falls es mehrere sind) identifiziert und gelöscht hast.   Schritt 1: Wähle eines der Objekte mit dem betroffenen Namen aus.   Schritt 2: Der Name des Objekts wird nun im Eigenschaftsfenster rechts unten angezeigt. Klicke nun im Menü "Ansicht" auf "Zentrieren".   Schritt 3: Nun hast Du das Objekt lokalisiert (wird über das Gizmo gekennzeichnet). Falls das Objekt wie im gezeigten Beispiel noch nicht eindeutig identifiziert werden kann, weil es beispielsweise durch ein anderes Objekt (hier die Landschafts-Oberfläche) verdeckt ist, musst Du das verdeckende Objekt ausblenden. Im vorliegenden Beispiel habe ich die Bodenplatten zu einer Ebene zusammengefasst, weshalb ich einfach die Ebene ausblenden kann. Sollte dies in Deinem Fall nicht zutreffen, kannst Du das verdeckende Objekt direkt anklicken und dann über das "Auge" im Eigenschaftsfenster ausblenden. Dann ist danach allerdings Dein gesuchtes Objekt nicht mehr mit dem Gizmo markiert. Du musst dann die Schritte 1 und 2 nochmals wiederholen, damit Dein gesuchtes Objekt erneut markiert wird.   Schritt 4: Nachdem Du das betroffene Objekt identifiziert hast, kannst Du nun entscheiden, ob dieses das überflüssige Objekt ist und daher gelöscht werden kann. Ist es nicht das zu löschende Objekt oder gibt es von diesen mehrere, wiederholst Du diese Schrittfolge für die anderen Objekte aus der Selektionsliste mit demselben Objektnamen so lange, bis alle überflüssigen Objekte mit dieser Bezeichnung gelöscht sind.   Viele Grüße BahnLand
  22. BahnLand

    Neuer Modelbauer

    Hallo Frank, auf keinen Fall von mir als Wunsch auffassen. Es ist mir halt nur aufgefallen, dass der Bagger eben nur "Luft" bewegt (und das auch nicht wirklich ).  Also keine Sorge: Ich weiß, dass man den Aufwand ins Unermessliche anheben kann. Und man muss es ja nicht übertreiben. Also: Mach weiter wie bisher und lass Dich von mir nicht irritieren. Übrigens: ich bin sowieso mehr Eisenbahn-"affin" als ein Straßenfahrzeug-Fan. Ich halte mich daher bei Auto-Modellen meist etwas zurück - es sei denn, dass mich ein Modell besonders beeindruckt. Viele Grüße BahnLand
  23. BahnLand

    Neuer Modelbauer

    Hallo Frank, die Bewegungen Deines Radbaggers sind schon toll! Nur schade, dass er die Erde nicht in der Schaufel behält und in den Laster auskippen kann . Das wäre das Tüpfelchen auf dem i . Aber wie ich Dich kenne, kommt das irgendwann auch noch. Viele Grüße BahnLand
  24. Hallo Modellbahnspass, den Strand von St. Peter-Ording mit den Pfahlbauten hast Du wieder einmal sehr gut getroffen. Nur die Autos hast Du vergessen . Als wir 2011 auf der Rückfahrt von Amrum dort vorbei kamen, war der "Strandparkplatz" ziemlich gefüllt. Zwei Jahre früher sah es ganz anders aus. Da kamen Springflut und Sturmflut zusammen, sodass wir an unserem ursprünglichen Abreisetag überhaupt nicht mehr von der Insel kamen (der Fährverkehr nach Dagebüll war eingestellt).  Zwei Tage später konnten wir dann in St. Peter-Ording anschaulich nachvollziehen, warum die Strandhäuser dort alle auf Pfählen aufgeständert sind. Viele Grüße BahnLand
  25. Hallo fex, wirklich schön gemacht!  ... meint BahnLand
×
×
  • Neu erstellen...