Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. Wert zu einem Hex-Wert hinzufügen

    NEWS

    • Wir empfehlen: Node.js 22.x

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker goes Matter ... Matter Adapter in Stable

    Wert zu einem Hex-Wert hinzufügen

    This topic has been deleted. Only users with topic management privileges can see it.
    • hg6806
      hg6806 Most Active last edited by

      Hallo zusammen,

      ich habe hier ein Blockly, was mir bei einem bestimmten Tastendruck eine gewünsche Farbe als Hex-Wert (String) an WLED übergibt.
      Das funktioniert soweit.
      f30a1523-f6f0-4684-9afc-ced74dbf3381-image.png

      Jetzt möchte ich aber die beiden letzten Stellen, hier "00" noch über eine Variable beschreiben. Das wäre Weiß.
      Also, entweder den Wert zwischen 0-255 als Hex umwandeln und dem String hier hinzufügen
      Oder man versucht es über den Dezimalen Wert
      z.B. "[171,0,0,223]" und ersetzt bzw. beschreibt den hinteren Wert über eine Variable.

      Da ich mit SW Entwicklung leider nicht viel am Hut habe, komme ich bei beiden Ansätzen nicht weiter.

      Codierknecht 1 Reply Last reply Reply Quote 0
      • Codierknecht
        Codierknecht Developer Most Active @hg6806 last edited by

        @hg6806
        Prinzipiell so?

        283320b8-9570-402d-bc9f-4c867b41312f-image.png

        hg6806 2 Replies Last reply Reply Quote 0
        • hg6806
          hg6806 Most Active @Codierknecht last edited by

          @codierknecht

          Danke!!!

          Sieht recht plausibel aus.
          Ich versuche es später mal nachzubilden und teste es dann.

          1 Reply Last reply Reply Quote 0
          • hg6806
            hg6806 Most Active @Codierknecht last edited by

            @codierknecht

            Der hintere Teil ist leider noch in Dezimal.
            Wie kann ich den vor dem Zusammensetzen auf hex umwandeln?

            paul53 1 Reply Last reply Reply Quote 0
            • paul53
              paul53 @hg6806 last edited by

              @hg6806 sagte: Wie kann ich den vor dem Zusammensetzen auf hex umwandeln?

              Mittels einer JS-Funktion dec2hex(dec) mit folgendem Inhalt:

              return dec.toString(16);
              
              hg6806 1 Reply Last reply Reply Quote 0
              • hg6806
                hg6806 Most Active @paul53 last edited by

                @paul53 sagte in Wert zu einem Hex-Wert hinzufügen:

                return dec.toString(16);

                So?
                0b5d6dae-f16e-46ca-acfd-5fca47cbe88d-image.png

                Wie und wo wäre da input (dec) und Output (hex)?

                paul53 1 Reply Last reply Reply Quote 0
                • paul53
                  paul53 @hg6806 last edited by paul53

                  @hg6806 sagte: So?

                  Nein, so:

                  Blockly_temp.JPG

                  Mit Klick auf die 3 Punkte rechts gelangt man in den Editor zur Eingabe von

                  return dec.toString(16);
                  
                  hg6806 1 Reply Last reply Reply Quote 0
                  • hg6806
                    hg6806 Most Active @paul53 last edited by

                    @paul53

                    Mit den drei Punkten hinten weiß ich.

                    Mir ist aber noch immer nicht klar wie ich meinen dezimalen Datenpunkt dort eingebe.

                    paul53 1 Reply Last reply Reply Quote 0
                    • paul53
                      paul53 @hg6806 last edited by paul53

                      @hg6806 sagte: wie ich meinen dezimalen Datenpunkt dort eingebe.

                      Durch Aufruf der Funktion:

                      Blockly_temp.JPG

                      1 Reply Last reply Reply Quote 0
                      • hg6806
                        hg6806 Most Active last edited by

                        @Codierknecht
                        @paul53

                        Bis auf eine Kleinigkeit läuft es soweit.

                        Ein Problem habe ich nur, wenn der Wert einstellig ist. Die fehlt mir vorne eine Null, da der Gesamtstring dann falsch zusammengesetzt wird.

                        Aber da werde ich schon was finden.

                        Danke nochmals!

                        paul53 1 Reply Last reply Reply Quote 0
                        • paul53
                          paul53 @hg6806 last edited by paul53

                          @hg6806 sagte: wenn der Wert einstellig ist. Die fehlt mir vorne eine Null

                          let hex = dec.toString(16);
                          if(dec > 15) return hex;
                          return '0' + hex;
                          
                          1 Reply Last reply Reply Quote 0
                          • First post
                            Last post

                          Support us

                          ioBroker
                          Community Adapters
                          Donate

                          447
                          Online

                          32.0k
                          Users

                          80.4k
                          Topics

                          1.3m
                          Posts

                          3
                          11
                          167
                          Loading More Posts
                          • Oldest to Newest
                          • Newest to Oldest
                          • Most Votes
                          Reply
                          • Reply as topic
                          Log in to reply
                          Community
                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                          The ioBroker Community 2014-2023
                          logo