Jump to content

EASY

Mitglieder
  • Gesamte Inhalte

    3040
  • Benutzer seit

  • Letzter Besuch

Beiträge erstellt von EASY

  1. Hallo,

    vor einer Stunde schrieb Atrus:

    Aber es funktioniert nicht. Sie werden von der Lok leider nicht erkannt. Sonst wäre es perfekt. Wirklich schade. Was mache ich falsch?

    Du machst nichts falsch. Mit der Aufhebung der Verknüpfung des Wagons löst Du den Wagon gleichzeitig aus dem Zugverband. Nur die erneute Verknüpfung mit dem Gleis bringt den Wagon nicht zurück in den Zugverband. Der Wagon wird erst wieder als "gültig" erkannt, wenn er leicht bewegt wird oder neu auf das Gleis gesetzt wird.

    In lua wäre eine Lösung:

    $("Wagon").transformation.position=$("Wagon").transformation.position 

    Gruß
    EASY

  2. Hallo,

    ich habe die Lösung von @prinz für mich auch schon mal in einem anderen Zusammenhang benutzt...

    vor einer Stunde schrieb bigrala:

    @ Prinz ..... ja auch Deine Lösung geht ganz gut, ist jedoch aufwendiger als die Lösung von Kaffeeschlürfer. Sollte das Gleis minimal verschoben werden, was beim Bau ja immerwieder mal vorkommt, darf man nicht vergessen auch die Koordinaten anzupassen.
    Ist aber eine sehr interessante Geschichte für Gimmicks ...... ;)

    ... zum einen kann man als Referenzkoordinaten das "Ablagegleis" selbst benutzen (man muß nur die z-Position um die Gleishöhe korrigieren) oder man setzt einen Gleiskontakt auf das Gleis und nimmt dessen Parameter (Position und evtl. Rotation) als Referenz für SX1...

    Gruß
    EASY

  3. Hallo,

    vor 4 Stunden schrieb Hawkeye:

    Gibt es da einen Trick?

    Der Trick liegt im Unterschied der beiden Bilder...
    Bei diesem Bild wird im Gleiseditor als Typ "Virtuell (Mitte,Spur)" angezeigt...
    image.jpeg.b9520a8d8f98801e5198c1c53edef520.jpeg

    Bei diesem Bild wird im Gleiseditor als Typ "Virtuell (Drehpunkt)" angezeigt...
    image.jpeg.c36bf2a0c7451a040abfb77d0c5a41ce.jpeg

    ... für die Spur über die Brücke mußt Du also nur beim Typ "Virtuell (Mitte,Spur)" auswählen9_9...

    Anmerkung: "Virtuell (Drehpunkt)" wird zwar in der Liste "Typ" angezeigt, ist allerdings nur ein Animationsname und hat mit der Vergabe der Spuren nichts zu tun (aber das kannst weder Du noch das MBS wissen;))

    vor 4 Stunden schrieb Hawkeye:

    die Übergänge zu den Anschlussgleisen sind etwas holprig.

    Das Modell stammt noch als "alten Zeiten"... damals waren die Standartschienen noch etwas höher...

    Gruß
    EASY

  4. Hallo,

    vor einer Stunde schrieb Roter Brummer:

    Kreis hat als Animation nur Rotation - Gerade hat Rotation und Position als Animation?

    Der Kreis hat als Mittelpunkt die Drehachse und muß nur rotiert werden. Die Mittelpunkt der Geraden folgt von der Position her einem Teilkreis mit dem
    Radius r=r(Kreis)+Länge Gerade / 2 und als Drehbewegung die Gegendrehung zur Drehung von Kreis so daß die Ausrichtung wieder stimmt.

    vor einer Stunde schrieb Roter Brummer:

    Wie viele Animationsschritte nehme ich am besten für +/- 19°?

    Kommt darauf an, wie schnell Du Deine Animationsgeschwindigkeit (fps) definierst. In meinem Demomodell sind es 48 Animationsschritte bei 24 fps. So dauert die Animation von der Weichenstellung 0 (-22,5°) bis zur Weichenstellung 2 (+22,5°) genau 2 Sekunden.

    Nachtrag: Manchmal dauert es etwas bei mir... Deine Frage bezieht sich auf die Auflösung für die Genauigkeit der der Ausrichtung und Position zueinander... bei +- 19° ist die Abweichung von einer linearen Bewegung noch nicht sehr groß (r*sin(19°) bzw. r*cos(19°)) so daß Du mit wahrscheinlich weniger als 48 Stützpunkten zurecht kommst...
    So sehen die beiden Positionskurven bei mir aus...
    Bild004.thumb.jpg.14bf7c402753d4831003afb985ecb557.jpg

    Gruß
    EASY

  5. Hallo @Roter Brummer,

    eine Möglichkeit wäre das Modell aus 2 Teilobjekten zu bauen, die jeweils eine Animation der Drehbewegung haben...
    Bild002.jpg.b4798d06ccfcdad7fbac54e43063b540.jpg

    ... da "Gerade" dem Mittelpunkt in der Mitte des Objektes hat, besteht die Animation aus einer Positions- und einer Rotationsangabe.

    Damit können der Animation "Kreis" und der Animation "Gerade" jeweils die entsprechenden Spuren zugeordnet werden....
    Bild003.jpg.8d690c3793fca4b9478188e1569c3590.jpg

    Einfaches Demomodell als Entwurf hochgeladen 76667EF1-EB85-42CF-AAEF-A3251A7D54A1

    Gruß
    EASY

  6. Hallo @Hawkeye,

    ... eine kleine Demoanlage zu Deinem Anliegen...
    Bild001.thumb.jpg.44b96630c0e87116ad65a72effc7bfda.jpg

    Gleiskontakt wird betreten sieht so aus...

    * Die Funktion teilt einen String am Seperator in Teilstrings auf
    Beispiel: Gleiskuntaktname: "GK-1" -> Seperator="-"
    ergibt die beiden Teilstrings "GK" (a[1]) und "1" (a[2])
    a[2] dient als Zahlengrundlage für das zyklische Anlegen der Ausgabeliste
    
    Achtung: Mit diesem Verfahren liegt die Referenzzahl im Namen des Gleiskontaktes!
    -> der Name darf im MBS Projekt nur einmal vorkommen!
    
    ** alternativ kann auch eine Zahlenvariable im Gleiskontakt verwendet werden
    die Zeile **(a) entfällt und bei **(b) a[2] durch die Variable ersetzen.
    --]]
    
    local ausgabe={}-- Ausgabeliste
    local a={}-- teporäre Liste für GK-x Namen zerlegen
    local gk=contact.name -- Name des Gleiskontaktes
    print("Gleiskontakt: "..gk.." hat ausgelöst")
    gk:gsub("[^-]+",function(c) table.insert(a,c) end)--* / **(a)
    local gkx=$("Kreuzung 1").variables["GK x"]--Liste in der Kreuzung
    n=#gkx --Anzahl der Einträge in der Liste
    print("Liste:")
    for i=1+a[2],n+a[2]do --Liste vom Anfangswert her zyklisch erstellen **(b)
      local x=math.tointeger((i % n))-- Ergibt den Rest einer Division
      if x==0 then -- Rest=0
        table.insert(ausgabe,gkx[n])-- maximalen Wert nehmen
      else -- Rest>0
        table.insert(ausgabe,gkx[x])-- Restwert nehmen
      end
    end
    for i,v in ipairs(ausgabe)do --Ausgabetabelle
      print(v.name)
    end

    Anmerkung: Ich habe das Ereignis allen 4 Gleiskontakten zugeordnet (sinnvoll wäre evtl. mit Schlagworten zu arbeiten)...

    2024-02-18-Zyklische Liste erstellen 01.mbp

    Gruß
    EASY2024-02-18-Zyklische Liste erstellen 01.mbp2024-02-18-Zyklische Liste erstellen 01.mbp2024-02-18-Zyklische Liste erstellen 01.mbp2024-02-18-Zyklische Liste erstellen 01.mbp

  7. Hallo,

    ich habe ein Ereignis...

    local a=$("Benutzerdefiniert"):invoke()
    print(a)

    ... und ein benutzerdefiniertes Ereignis...

    local b=123
    return b

    ... der Aufruf bringt mir das gewünschte Ergebnis...
    Bild001.jpg.9938c3df97b79cf9bc667b85ccedb850.jpg

    Nun habe ich dieses Ereignis...

    local a=$("Benutzerdefiniert"):invoke()
    print(#a)

    ... mit diesem benutzerdefinierten Ereignis...

    local b={1,2,3}
    return b

    ... dies ergibt eine Fehlermeldung...
    Bild002.jpg.ca2f5f2350c710fde1c07a29070f2090.jpg

    Wenn ich das benutzerdefinierte Ereignis als Funktion in das Ereignis schreibe...

    local function test()
      local b={1,2,3}
      return b
    end
    
    local a=test()
    print(#a)

    ... kommt das gewünschte Ergebnis...
    Bild003.jpg.6183184cbfd39d8677a2de023dbd6d11.jpg

    Nun ist meine Frage @Neo (oder wer etwas weiß)...
    Mache ich einen Fehler oder kann ein benutzerdefiniertes Ereignis keine Tabelle zurückgeben?

    Gruß
    EASY

  8. Hallo @Hawkeye,

    Ich könnte Dir folgende (logische) Reihe anbieten:

    [16:54:04] Gleiskontakt wird ausgelöst -> GK-1, Golf 1, 1
    [16:54:04]     Gleiskontakt wird ausgelöst
    [16:54:04]         Gleiskontakt: GK-1 hat ausgelöst
    [16:54:04]         Liste:
    [16:54:04]         GK-2
    [16:54:04]         GK-3
    [16:54:04]         GK-4
    [16:54:04]         GK-1
    [16:54:16] Gleiskontakt wird ausgelöst -> GK-2, Golf 1, 1
    [16:54:16]     Gleiskontakt wird ausgelöst
    [16:54:16]         Gleiskontakt: GK-2 hat ausgelöst
    [16:54:16]         Liste:
    [16:54:16]         GK-3
    [16:54:16]         GK-4
    [16:54:16]         GK-1
    [16:54:16]         GK-2
    [16:54:24] Gleiskontakt wird ausgelöst -> GK-3, Golf 1, 1
    [16:54:24]     Gleiskontakt wird ausgelöst
    [16:54:24]         Gleiskontakt: GK-3 hat ausgelöst
    [16:54:24]         Liste:
    [16:54:24]         GK-4
    [16:54:24]         GK-1
    [16:54:24]         GK-2
    [16:54:24]         GK-3
    [16:54:31] Gleiskontakt wird ausgelöst -> GK-4, Golf 1, 1
    [16:54:31]     Gleiskontakt wird ausgelöst
    [16:54:31]         Gleiskontakt: GK-4 hat ausgelöst
    [16:54:31]         Liste:
    [16:54:31]         GK-1
    [16:54:31]         GK-2
    [16:54:31]         GK-3
    [16:54:31]         GK-4

    ... dies wäre allerdings eine andere Reihenfolge bei GK-3 als Du angegeben hast.

    vor 3 Stunden schrieb Hawkeye:

    GK-3: Rückgabe in der Reihenfolge 4; 3; 2; 1

    Hast Du Dich da vertippt oder muß es die von Dir angegebene Reihenfolge sein?

    Gruß
    EASY

  9. Hallo,

    vor 4 Stunden schrieb Hawkeye:

    An einer Ampel z.B. muss jeder "virtuelle" Fahrer eines Fahrzeuges beim Umschalten von Grün auf Gelb eine Entscheidung in Abhängigkeit seiner Geschwindigkeit und dem aktuellen Abstand zur Ampel treffen. Soller er bremsen, um noch rechtzeitig an der Haltelinie der Ampel zum Stehen zu kommen oder soll er beschleunigen, um vor dem Umschalten der Ampelphase von Gelb auf Rot noch über die Ampel zu huschen. ;)

    vor 4 Stunden schrieb Hawkeye:

    Hast du nicht Lust, dich auch mal mit solchen Aufgabestellungen zu beschäftigen? 

    ... habe ich mal aus Spaß an der Freude gemacht...

    Bild001.thumb.jpg.7f0a5407df3953471d38d7622fad9b3c.jpg

    --[[
    * -> in die Klammer entsprechende Referenzspur eintragen
    
    ** Verknüpfte Objekte mit Referenzspur:
       (Gleiskontakte und Fahrzeuge werden mit der Referenzspur automalisch verknüpft!)
       Gleiskontakt "GKe" mit Schlagwort "GKref" sehr nahe am Ende der
       Referenzspur (nicht am Übergang) plazieren, so daß die Zuordnung zu Referenzspur
       eindeutig gegeben ist.
    
    *** wenn zu stark abgebremst werden müßte -> durchfahren
    --]]
    
    local blink=layout:getEntitiesLinkedTo($("Bremsspur 1"))-- * ; **
    local ref=0 -- Dummyeintrag
    local auto=0 -- Dummyeintrag
    for i,v in ipairs(blink) do -- verknüpfte Objekte
      if v.variables["GKref"]==keyword then -- Referenzkontakt?
        ref=v
      end
      local res=false
      res,auto=pcall(function(x) x:hasEngine() return x end,v)-- Fahrzeug mit Antrieb?
    end
    if auto~=0 and ref~=0 then
      auto.currentSpeed=auto.currentSpeed -- evtl. Beschleunigung abbrechen
      -- Bremsweg berechnen (Vorderkante Auto -> Ende Spur)
      local pos1=ref.transformation.position
      local pos2=auto.transformation.position
      local dx=pos1.x-pos2.x
      local dy=pos1.y-pos2.y
      local la=auto.length/2
      local l=math.sqrt(dx^2+dy^2)-la
    
      -- benötigte Verzögerung berechnen...
      local v=auto.currentSpeedAbs
      v=v/3.6
      local a=(v^2)/(2*l)
      vehicle.deceleration=a
      if a<20 then -- ***
        vehicle.targetSpeed=0
      end
    end


    Bremsversuch 01.mbp

    Gruß
    EASY

  10. Hallo,

    der Ursprung dieses Versuches liegt hier.
    @bigrala wollte Loks aus einem Ringlokschuppen entlassen, die entweder das Schlagwort "Dampf" oder "Diesel" haben, und es sollte die Möglichkeit bestehen die Lok entweder in den Schuppen zurück zu fahren oder sie im Kreis fahren zu lassen...
    Bild001.thumb.jpg.e556f62bcdba1de7bfd08a7d185600dd.jpg

    Die bisherigen Lösungsansätze arbeiten ohne Fahrstraßen, weshalb ich mich für eine (Teil-) Lösung mit Fahrstraßen entschieden habe.
    Eine weitere Problemstellung war, wie man eine Lok in der Mitte der Drehscheibe anhalten kann. Bei einer einzelnen Lok ist es kein Problem, da man mit einem Gleiskontakt arbeiten kann, der auf "Mitte" reagiert. Bei einer Lok mit Tender, funktioniert dies aber nicht, da für das MBS die Mitte der Lok gültig ist.
    Ich bin es mathematisch angegangen: Wenn die Lok (oder Lok+Tender) den Gleiskontakt betritt, muß noch um eine halbe Zuglänge weiter gefahren werden damit der Zug mittig zum stehen kommt. Bei bekannter Geschwindigkeit, kann die Bremszeit berechnet werden...

    --[[
    * -> sonst Probleme, wenn Loklänge knapp auf Drehscheibe passt,
         Lok hält zu früh an!
    --]]
    
    if not deferredCall then
      local s=layout:getVehicleGroupLength(vehicle)/2 -- Halbe Länge Zugverband (evtl. Lok+Tender)
      local v=vehicle.currentSpeedAbs -- Lokgeschwindigkeit
      local t=s*3.6/v -- Bremszeit ermitteln für halbe Länge Zugverband
      vehicle.autoDeceleration=false -- Automatisches Bremsen deaktivieren (siehe oben)*
      defer(t,"vz1") -- Verzögerung mit Bremszeit
    
    elseif deferredCall=="vz1" then -- Lok in der Mitte der Drehscheibe anhalten
      vehicle.currentSpeed=0
      vehicle.autoDeceleration=true -- Automatisches Bremsen wieder aktivieren

    Hinweis: Da der Versuchsaufbau nicht weiter abgesichert ist, werden die Auswahltaster ausgeblendet, wenn 2 Züge aus dem Schuppen angefordert wurden (2 Strecken, 2 Einfahrten)...

    Anmerkung: Da die Steuerung in lua geschrieben ist, wollte ich den Thread von @bigrala damit nicht "belasten"...

    Ringlokschuppen 1c.mbp

    Gruß
    EASY

  11. Hallo,

    vor 2 Stunden schrieb bigrala:

    Eine Drehscheibe arbeitet zwar wie Weichen, aber in eine Fahrstrasse läßt sie sich nicht einbinden - oder ?

    das geht schon, du mußt nur die Drehscheibe vor dem Einrichten der Fahrstraße auf die jeweils gültige Stellung setzen.
    (Achtung beim Gleiskontakt auf der Drehscheibe: auf aktivierte Pfeilrichtung des Gleiskontaktes achten. Fahrstraßen sind richtungsbezogen.)

    Gruß
    EASY

  12. Hallo @HWB,

    danke!:)

    Besonders die .pdf ist ja sehr informativ.
    Nur ob ich "die 2 verstellbaren Rutschverlängerungen die je über einen Kettenzug an der Zahnstange in der gewünschten Höhenlage einstellbar sind" so bauen werde... muß ich mir noch überlegen9_9.

    Gruß
    EASY

  13. Hallo,

    Durch Zufall bin ich auf dieses Modell gestoßen.
    4a.thumb.jpg.5dfb3f27044f224e1c0b5dbc58db46c4.jpg

     

    Irgendwie hat mir die Funktion gefallen und ich habe angefangen zu bauen...
    zBild001.jpg.6ed19ae46934b2486705d476aba21374.jpg

    Da ich (mal wieder) keine Ahnung habe, ergibt sich für mich folgendes Problem:

    Nach was muß ich im Internet suchen um evtl. auf technische Daten oder Fotos zu stoßen?
    Ich lande immer bei Bildern, die das Modell von Liliput oder Arnold darstellen, aber nie beim Original.
    Für Hilfestellung wäre ich dankbar.

    Gruß
    EASY

  14. Hallo,

    Beim Umgang mit GBS Bausteinen gibt es das Problem, daß man sehr schnell viele Objekte hat, die den gleichen Namen haben.

    Auf der Suche nach Lösungen bin ich auf diese Anlage (12FBFA21-6D56-444E-A59B-E7A4655EFE2D) von @Goetz gestoßen in der eine prinzipielle Lösung des Problems steckt. Ich habe mir die Idee also nur abgeschaut und mir überlegt was man noch etwas verbessern könnte.

    Die Ausgangslage...
    Bild001.thumb.jpg.2ec8fdef4adeb5fc089e1cbf46f41e89.jpg

    ... und viele gleiche Namen...
    Bild002.jpg.82406413886addfcb444cf0719665b73.jpg

    In der beigefügten Beispielanlage:
    ...zuerst werden zwei Listen angelegt...
    Bild003.thumb.jpg.7d893cbbeb48ab77cb78c8d6f8b76047.jpg

    ... zum Ausfüllen der Liste (z.B. Bahnhof unten)...
    ... alle entsprechenden GBS Bausteine markieren...
    Bild004.thumb.jpg.3d3a3c8a76c5f65c8ca98d9333989b03.jpg

    und Strg+c (kopieren).

    Die Liste "GBS Bahnhof unten" -> "Bearbeiten" und mit Strg+v (Einfügen).
    Bild006.thumb.jpg.be31d07ec964bad7f8579e1c53b8202b.jpg

    Bild007.thumb.jpg.ac563ef109c2619fd0a06fd8be38eb89.jpg

    ... desgleichen für "GBS Bahnhof oben"

    Bild008.thumb.jpg.007263d396f8805c937d0539f65b3ed7.jpg

    Das Benutzerdefinierte Ereignis "Namen setzen (B)" legt ein Raster an...
    Bild010.thumb.jpg.011ef52ea2b2b4664801ce7428ff2068.jpg

    ...und vergibt die Namen nach Zeilen und Spalten (und der Anzahl der Spuren...)
    Bild011.jpg.1602776315b35de608433fc07125fe8e.jpg

    Ich habe das Skript dahingehend erweitert, daß es auch für andere Objektreihen anwendbar ist, bei denen die Grundform nicht quadratisch ist,
    z.B. die "Abstellfläche" 4EBBA477-BB3F-4C8F-9AAF-2CC7AB6E19EF...
    Bild012.jpg.33977c63cb9fbaa5bd9f6ea73c543ae2.jpg

    So sieht der Aufruf von "Namen setzen (B)" aus (mit Beschreibung der Parameter)...
    Bild013.thumb.jpg.06f9cb6f684299b8ca8fc25f46266214.jpg

    ... ergibt für die Abstellflächen...
    Bild014.jpg.5a22f2c8d0c932b4de14a00098aa7273.jpg

    Die Anlage mit dem Skript...
    Objektreihen Namen 01.mbp

    Gruß
    EASY

  15. Hallo,

    Werden noch mehr Farben gewünscht? Dann bitte hier die noch zu ergänzenden Farbtöne angeben.

    Deine Farben und meine zusätzlichen Farben sehen bei mit im Texturkatalog so aus (als Vorschlag...)
    Bild005.jpg.2385853f8f3f9ddeaaa2a13954cc91d6.jpg

    ... und da ich die Texturen schon habe als .zip
    Farben.zip

    vor 1 Stunde schrieb BahnLand:

    Theoretisch könnte ich natürlich auch die vorhandenen Modelle um entsprechende Variationen mit den zusätzlichen Farben erweitern. Bei heute 7 verschiedenen Farben (vielleicht sind es ja in Zukunft mehr)  und bei heute pro Modell bereits vorhandenen bis zu 14 Variationen in der einen Farbe Grau (das wären bei der Unterstützung der 7 hier gezeigten Farben dann pro Modell bis zu 98 Variationen) würde ich jedoch die heute gültige Obergrenze von 50 Variationen nicht einhalten können.

    ... da wäre man ja mehr mit der Auswahl der Varianten als mit dem Setzen der Bausteine beschäftigt...:(

    vor 1 Stunde schrieb BahnLand:

    Ich würde daher die Texturen lieber im Texturen-Katalog zur Verfügung stellen, als die sich aus der Multiplikation der heute vorhandenen Variationen mit den Anzahl der angebotenen Farben ergebende Gesamtzahl von Variationen anzubieten.

    (y)

    Gruß
    EASY

  16. Hallo,

    aus Neugier habe ich mich mit der Ansteuerung der GBS0 Bausteine beschäftigt...
    Bild000.thumb.jpg.1fb33e586ed776cf04943aad319d7a37.jpg

    Bei der 3-Wegeweiche hatte ich mich schon gefreut, daß es einen direkten Zusammenhang zwischen Weichenstellung und Signalstellung GBS0 gibt...
    Bild001.jpg.3ae105f8cf405dfe60212cbfa016aee1.jpg

    ... 2*WS+1 für reserviert und 2*WS+2 für belegt (WS=Weichenstellung)

    ... bei der 2-Wegeweiche funktionierte die Formel leider schon wieder nicht mehr...
    Bild002.jpg.26b78d61a4d6051a00415842de58bbfa.jpg

    Da ich die Formel beibehalten wollte, habe ich dem GBS0 Baustein eine Tabelle mit auf den Weg gegeben...
    Bild003.jpg.d8914c8ab531209081049b7bf213d9de.jpg
    ... die das Ergebnis der Weichenstellung entsprechend anpasst...
    Bild004.jpg.6a405635df8a8dd8d8ff41edcb65edc2.jpg

    Damit es einen Zusammenhang von GBS0 und Weiche gibt (zum Auslesen der Weichenstellung) habe ich im GBS0 eine Verknüpfung zur Weiche gesetzt...
    Bild005.jpg.c226149f03d4b582d874126b3df7b246.jpg

    Die entsprechenden GBS0 Bausteine für eine Fahrstraße...
    Bild007.thumb.jpg.ad1d5f23a40d90617ba8ac7883db8cc9.jpg

    ... habe ich in einer Variablen "GBS0" in der Fahrstraße in einer Liste hinterlegt...
    Bild006.thumb.jpg.02007b5ed3414644dddea285d2f55daa.jpg


    Das benutzerdefinierte Ereignis für die GBS0 Ansteuerung sieht dann so aus...

    --[[
    Ansteuerung GBS0 Bausteine
    --]]
    
    local gba=FS.variables["GBS0"] -- GBS0 Bausteine in der FS-Variablen "GBS0"
    local st=Anzeige -- 1=reserviert, 2=belegt
    if FS.state==0 then  -- FS wurde aufgelöst?
     for _,gb in ipairs(gba) do -- alle GBS0 der FS Bausteine..
      gb.state=0 -- ..Anzeige 0=frei
     end
    else
     for _,gb in ipairs(gba) do -- alle GBS0 der FS Bausteine
      local l=gb.link -- Verknüpfung GBS0 Baustein
      if l~=nil then -- Verknüpfung vorhanden (Weiche)?
        local s1=l.state -- Weichenstellung auslesen
        if gb.variables["cs"]~=nil then -- Variable cs für Korrektur Weichenstellung vorhanden?
         s1=gb.variables["cs"][s1] -- Weichenstellung korrigieren
        end
        gb.state=2*s1+st -- Anzeige GBS0 Baustein in Abhängigkeit von Weichenstellung setzen
      else -- -- Verknüpfung nicht vorhanden (keine Weiche)!
        gb.state=st -- Anzeige GBS0 Baustein setzen
      end
     end
    end

    ... und der Aufruf für Fahrstraße wird aktiviert/deaktiviert sieht so aus...
    Bild008.jpg.23011827e38bb01c0d5efb29c009f188.jpg

    --[[
    Fahrstraße Ausfahrt HFS
    Anzeige=1 -> reserviert
    Anzeige=2 -> belegt
    --]]
    
    $("FS GBS0 (B)"):invoke(2,route)

    Der Vollständigkeit halber noch die Versuchsanlage.
    2024-02-04-Ansteuerung GBS0-Bausteine.mbp

    Gruß
    EASY

  17. Hallo @Neo,

    den leeren GBS0 Baustein gibt es in folgenden Farbvarianten...
    Bild001.jpg.0adbb88b3be2e54205a754f856214d9e.jpg

    ... da Tauschtextur habe ich die (Farb-) Texturen exportiert...
    Bild002.thumb.jpg.64fb3de026ad56b4330207f774871db7.jpg

    ... mir in meinen Texturkatalog geladen...
    Bild003.thumb.jpg.62b4064d867c0446e4539e054b1738d9.jpg

    ... und mir die GBS0 Bausteine (die keine Farbvarianten besitzen) thematisch über die Tauschtextur eingefärbt. So habe ich im Gleisbildstellpult einen besseren Überblick...
    Bild004.thumb.jpg.97f87e4ffd73fa80ceed4d977ba23a7a.jpg

    Damit diese Information auch bei einer Weitergabe oder Veröffentlichung erhalten bleibt, fände ich es gut, wenn es im Texturkatalog eben diesen Ordner "GBS Bausteine Farben" geben würde, damit man dort die Farben hinterlegen kann.

    Gruß
    EASY

×
×
  • Neu erstellen...