Lichtschalter

!!! Please ensure, that your contribution or question is placed into the relevant section !!!
Questions about rolling stock, for example, do not belong in "Questions about the Forum". Following is perhaps the right area where your question will be better looked after:
General questions to EEP , Splines, rolling stock, Structures in EEP, landscape elements, Signalling system and controlling, designers, Europe-wide EEP meetings , Gossip
Your cooperation to keep the forum clear is appreciated.
  • Kann man irgendwie in EEP festlegen ab wann, bzw. zu welcher Uhrzeit das Licht eingeschaltet wird, ab wann wird es denn überhaupt eingeschaltet ?

    EEP muß ja zwangsläufig intern eine Möglichkeit haben, das Licht aller Immobilien zum gleichen Zeitpunkt einzuschalten wenn man z.B. in den Umwelteinstellungen auf Nacht umschaltet, kann man das auch per Lua Script erledigen, ohne EEPStructureSetLight für jede Immobilie einzeln aufzurufen. So etwas wäre Sinnvoll, wenn z.B. im Winter bei Nebel oder starkem Schneefall zur Mittagszeit die Lichter angehen sollen.

    Einen Computer hat man, um damit Arbeiten zu erledigen, die man ohne Computer nicht hätte.


    EEP 15


    Windows 7 Home Premium 64 Bit

  • Kann man irgendwie in EEP festlegen […] zu welcher Uhrzeit das Licht eingeschaltet wird ..?

    Nein, das ist festgelegt. Die Zeiten sind:

    • Frühling 19:30 - 5:30
    • Sommer 20:30 - 4:30
    • Herbst 19:30 - 5:30
    • Winter 18:30 - 6:30


    EEPStructureSetLight für jede Immobilie einzeln aufzurufen

    benötigt nicht mehr als drei Zeilen Code für alle Immobilien:

    LUA Source Code
    1. for i = 1, 100000 do
    2. EEPStructureSetLight("#"..i, true)
    3. end
  • ... ohne EEPStructureSetLight für jede Immobilie einzeln aufzurufen. So etwas wäre Sinnvoll, wenn z.B. im Winter bei Nebel oder starkem Schneefall zur Mittagszeit die Lichter angehen sollen.

    Guten Morgen Rudi_ ,


    wenn man schon darüber nachdenkt im EEP-Land die Lichter realitätsgetreu wegen Wetterbedingungen schalten zu müssen, dann müsste sich man auch überlegen dass die Lichter aller Immobilien nie gleichzeitig an- bzw. ausgeschaltet werden. Das wäre mir dann in diesem Fall doch wichtiger. Und dafür bräuchte man doch mehr als 3 Zeilen.


    Stell dir mal vor, wieviel Codes für Miniatur Wunderland geschrieben wurden um die Tausende von LED-Lichter asynchron schalten zu können.


    M.f.G.

    Patrick

    AKTUELLES PROJEKT | Fleischmanns H0-wunderland '76


    Desktop | Intel Core i7 | ASUS X99 Mainboard | Zalman CNPS12X | ASUS GeForce GTX 1070 8GB | 32 GB DDR4 RAM

    Software | WIN 7 Ultimate 64Bit | EEP 13 Expert-Plugin 1 & 2| Home-Nostruktor 13.0 | EEP 13.2, Pl. 1-2 | EEP 15.0 (Deutsch) | Blender | GIMP | Inkscape

    Laptop | Asus VivoBook Pro | Intel Core i7 6700 HQ | Nvidia GTX 950M | 32 GB DDR4 RAM

    Software | WIN 10 | EEP 15.0 (English) | Blender | GIMP | Inkscape

  • Stell dir mal vor, wieviel Codes für Miniatur Wunderland geschrieben wurden um die Tausende von LED-Lichter asynchron schalten zu können.

    Zehn?

    Ein Dutzend vielleicht?


    Viel mehr braucht es jedenfalls nicht, wenn man den Zufall entscheiden lässt, wann welches Licht geschaltet wird.

  • Goetz

    LUA
    for i = 1, 100000 do
    EEPStructureSetLight("#"..i, true)
    end

    Hi Goetz, an so eine Schleife habe ich gedacht, allerdings dachte ich man müßte die ID's aller Immobilien dazu kennen, bei anderen Programmiersprachen gibt es eine Fehlermeldung wenn man ID's anspricht, die nicht angelegt sind. Aber einfach mal Prophylaktisch alle durchackern ist natürlich komfortabel.


    Ansonsten hätte man mit einer Art Get_Id Funktion alle vorhandenen ID's auslesen und in ein Array schreiben müssen und danach erst eine Schleife mit den Daten aus dem Array laufen lassen müßen

    Einen Computer hat man, um damit Arbeiten zu erledigen, die man ohne Computer nicht hätte.


    EEP 15


    Windows 7 Home Premium 64 Bit

  • bei anderen Programmiersprachen gibt es eine Fehlermeldung wenn man ID's anspricht, die nicht angelegt sind.

    Du musst verstehen, dass du die ID in einer Funktion ansprichst, die in EEP definiert ist, nicht in Lua.

    Und in diesen Funktionen steckt unter anderem die Prüfung, ob die ID existiert. Falls nicht, dann gibt die Funktion ein false zurück.


    Überhaupt muss man sich immer vor Augen halten, dass Lua hier nicht alleine läuft, sondern auch Funktionen aufruft, die in EEP definiert sind.


    Nachtrag

    Sauberer wäre folgende Variante:

    Du fragst zuerst alle Nummern mit EEPStructureGetLight(ID) ab. Diese Funktion liefert zusätzlich zum Licht-Satus ebenfalls ein true zurück, wenn die Abfrage erfolgreich war. Und dafür muss die ID existieren. Dabei trägst du alle IDs in eine Tabelle ein. Und die Tabelle kannst du anschließend benutzen, um deine Lichter zu schalten. Wahlweise komplett oder alle 10 Minuten einen Teilbereich etc.

  • Hallo zusammen

    Ich war nun wegen einer doofen Krankheitsgeschichte in meiner Familie gezwungen länger (genau seit April) nicht mehr ins Forum zu gehen.

    Abgesehen davon, dass ich von Goetz neuem Bild überrascht wurde (wie man jünger werden kann - alle Achtung), scheint alles beim alten


    Also. Wie Goetz das in seinem Funktionsvorschlag, mache ich es ähnlich. Ich merke mir halt die Ober- und die Untergrenze der ID's und ermittle mittels eine Zufallszahl, die ich dann prüfe, ob es die Structure-ID gibt (wie Goetz das macht) gibt. Wenn ja, ändere ich den Zustand des Lichtes.

    Dabei habe ich noch ne Zusatzfunktion, die die mir ein Fenster definiert, ab wann Lichter angehen sollen und wann es hell genug ist, dass sie ausgehen können.

    Ursprünglich habe ich das mal gebraucht für Fackeln, die angehen sollen, wenn es dunkel wird. Das sind kleine Feuerbausteine, die NICHT über die Licht Funktion gesteuert werden.


    Daraufhin habe ich das ganze immer mehr erweitert.


    Mir ist nämlich in der Realwelt aufgefallen, dass zum Beispiel Straßenlaternen oder Bahnhofbeleuchtungen viel früher angehen, als die von Büros oder Häusern.

    Mit dem Zufallsgenerator kann ich bei einzelnen gezielten Häusern das Licht an oder ausschalten. Dabei sollen aber Straßenlaternen und Bahhofsbeleuchtungen stetig (die Nacht über) an bleiben.


    Was dann noch fehlt ist eine Art Timerfunktion, damit das Licht auch eine bestimmte Zeit an, bzw. ausbleibt.


    Mit derselben Funktion steuere ich jetzt auch die Rauchfunktion. In der Realität läuft ja eine Heizung auch nicht rund um die Uhr, sondern sporadisch eine Zeit und geht dann wieder aus.


    Liebe Grüße, Alex

    Rechner:


    CPU: 2 mal AMD A4-3600 APU / Speicher: 16 GB / Graphik: AMD Radeon R7 370 4G / Windows 7 64-bit

    EEP:

    EEP 5.0: Patch 2; PLugins 1, 2, 3 /EEP 10 /12.1 Expert: Patch 1; Plugin 1 / EEP 13.1 Expert: Patch 1; Plugin 1 / EEP 14.1 Expert: Patch 1, 2, 3, 4; Plugin 1 Patch 1, 2 / EEP 15: Patch 1, 2, 3

    Derzeitiges Projekt:

    Nachbau des Bahnhofs von Plattling (Niederbayern)