Skript zum ein und ausblenden von Nodes auf Basis der Eintragung im ID Feld des Signal Flyout

  • Servus,


    Vorweg ich hab nahezu keine Ahnung von lua Scripten

    Wie im Titel bereits beschrieben, versuche ich mir ein Skript zu erstellen, welches das ID Feld des Signalflyouts ausließt und prüft, ob bestimmt Buchstaben vorhanden sind und je nachdem Nodes der Haupt Geometrie ein bzw. ausblendet.


    Das Skript sieht aktuelle so aus:


    Funktionieren tut das Ausblenden der beiden Halter Wand, jedoch gibt es keine Reaktion, wenn etwas im ID Feld eingetragen wurde.

    Weiß eventuell jemand woran das liegt?

  • Hallo Lukas,


    gern helfe ic h Dir weiter.

    Wenn Sonderzeichen in der ID stehen und diese später nicht in der Mastbezeichnung zu sehen sein sollen, müssen diese herausgefiltert werden.

    Deshalb muss man die ursprüngliche ID wegkopieren. Das nur als Hinweis falls Du etwas mit Sonderzeichen steuern willst.

    Hier ein Beispiel:

    Code
        -- Backup and separate 3D object marker
        gIdPlus = gId
        gId = string.gsub(gId, "%[" .. "+", "")


    Obj ein Sonderzeichen oder Buchstabe in der Variablen enthalten ist, prüft man so am Beispiel des weißen Rahmens:

    Code
            -- 07.04.2018 Show white frame for distant head (default == hide)
            if gRahmen ~= nil then
                local lState = 0
                if string.find(gIdPlus, "%[") ~= nil then
                    lState = 1
                end
                Print(("Set distant head white frame to: " .. lState))
                Call(HP_SIGNAL_HEAD_NAME .. ":ActivateNode", gRahmen, lState)
            end


    Viel Spaß

    Mathias