Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. Blockly
  5. HUE Farbwert (HSV?) nach HEX konvertieren

NEWS

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    11
    1
    511

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    24
    1
    1.7k

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    9.6k

HUE Farbwert (HSV?) nach HEX konvertieren

Geplant Angeheftet Gesperrt Verschoben Blockly
25 Beiträge 4 Kommentatoren 2.3k Aufrufe 4 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • T tklein

    @armilar besten dank dafür.

    Dann muss ich noch sehen, wie ich das in mein Blockly bekomme.
    Wahrscheinlich per eigener Funktionen mit dem Code von oben

    ArmilarA Offline
    ArmilarA Offline
    Armilar
    Most Active Forum Testing
    schrieb am zuletzt editiert von Armilar
    #4

    @tklein

    Jap - 2 Funktionsblöcke mit Rückgabe im Blockly...

    Vielleicht können da ja ein paar Blockly-Geeks helfen

    Installationsanleitung, Tipps, Alias-Definitionen, FAQ für das Sonoff NSPanel mit lovelace UI unter ioBroker
    https://github.com/joBr99/nspanel-lovelace-ui/wiki

    Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

    1 Antwort Letzte Antwort
    0
    • T Offline
      T Offline
      tklein
      schrieb am zuletzt editiert von
      #5

      bis hierher komme ich:

      af3383a7-5ebf-4386-9bb2-08cabf7dc8db-grafik.png

      Code:

      hue /= 60;
          let chroma = value * saturation;
          let x = chroma * (1 - Math.abs((hue % 2) - 1));
          let rgb: [number, number, number] = hue <= 1 ? [chroma, x, 0] :
              hue <= 2 ? [x, chroma, 0] :
                  hue <= 3 ? [0, chroma, x] :
                      hue <= 4 ? [0, x, chroma] :
                          hue <= 5 ? [x, 0, chroma] :
                              [chroma, 0, x];
      
          return rgb.map(v => (v + value - chroma) * 255) as [number, number, number];
      
      ArmilarA 1 Antwort Letzte Antwort
      0
      • T tklein

        bis hierher komme ich:

        af3383a7-5ebf-4386-9bb2-08cabf7dc8db-grafik.png

        Code:

        hue /= 60;
            let chroma = value * saturation;
            let x = chroma * (1 - Math.abs((hue % 2) - 1));
            let rgb: [number, number, number] = hue <= 1 ? [chroma, x, 0] :
                hue <= 2 ? [x, chroma, 0] :
                    hue <= 3 ? [0, chroma, x] :
                        hue <= 4 ? [0, x, chroma] :
                            hue <= 5 ? [x, 0, chroma] :
                                [chroma, 0, x];
        
            return rgb.map(v => (v + value - chroma) * 255) as [number, number, number];
        
        ArmilarA Offline
        ArmilarA Offline
        Armilar
        Most Active Forum Testing
        schrieb am zuletzt editiert von
        #6

        @tklein

        versuche mal das:

        function hsv2rgb(hue: number, saturation: number, value: number) {
            hue /= 60;
            let chroma = value * saturation;
            let x = chroma * (1 - Math.abs((hue % 2) - 1));
            let rgb = hue <= 1 ? [chroma, x, 0] :
                hue <= 2 ? [x, chroma, 0] :
                    hue <= 3 ? [0, chroma, x] :
                        hue <= 4 ? [0, x, chroma] :
                            hue <= 5 ? [x, 0, chroma] :
                                [chroma, 0, x];
        
            return rgb.map(v => (v + value - chroma) * 255);
        }
        

        Installationsanleitung, Tipps, Alias-Definitionen, FAQ für das Sonoff NSPanel mit lovelace UI unter ioBroker
        https://github.com/joBr99/nspanel-lovelace-ui/wiki

        Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

        T 1 Antwort Letzte Antwort
        1
        • ArmilarA Armilar

          @tklein

          versuche mal das:

          function hsv2rgb(hue: number, saturation: number, value: number) {
              hue /= 60;
              let chroma = value * saturation;
              let x = chroma * (1 - Math.abs((hue % 2) - 1));
              let rgb = hue <= 1 ? [chroma, x, 0] :
                  hue <= 2 ? [x, chroma, 0] :
                      hue <= 3 ? [0, chroma, x] :
                          hue <= 4 ? [0, x, chroma] :
                              hue <= 5 ? [x, 0, chroma] :
                                  [chroma, 0, x];
          
              return rgb.map(v => (v + value - chroma) * 255);
          }
          
          T Offline
          T Offline
          tklein
          schrieb am zuletzt editiert von
          #7

          @armilar klappt. Zumindest keine Fehlermeldung :-)

          ArmilarA 1 Antwort Letzte Antwort
          1
          • T tklein

            @armilar klappt. Zumindest keine Fehlermeldung :-)

            ArmilarA Offline
            ArmilarA Offline
            Armilar
            Most Active Forum Testing
            schrieb am zuletzt editiert von
            #8

            @tklein

            Blockly verträgt da nur JS...

            Jetzt noch die andere Funktion, dann die Funktionsblöcke hintereinanderschalten und fertig...

            Installationsanleitung, Tipps, Alias-Definitionen, FAQ für das Sonoff NSPanel mit lovelace UI unter ioBroker
            https://github.com/joBr99/nspanel-lovelace-ui/wiki

            Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

            1 Antwort Letzte Antwort
            0
            • T Offline
              T Offline
              tklein
              schrieb am zuletzt editiert von
              #9

              das seht glaube ich noch nicht so gut aus. Aus negativen RGB Werte Hexwerte.

              3adea787-374c-4b8a-bfa5-871b69782c55-grafik.png

              Da darf ich noch einges lernen. Z.b. wie ich mit der Rückgabe der HSV2RGB die andere Funktion RGB2HEX mit den Parametern aufrufe.

              ArmilarA 1 Antwort Letzte Antwort
              0
              • T tklein

                das seht glaube ich noch nicht so gut aus. Aus negativen RGB Werte Hexwerte.

                3adea787-374c-4b8a-bfa5-871b69782c55-grafik.png

                Da darf ich noch einges lernen. Z.b. wie ich mit der Rückgabe der HSV2RGB die andere Funktion RGB2HEX mit den Parametern aufrufe.

                ArmilarA Offline
                ArmilarA Offline
                Armilar
                Most Active Forum Testing
                schrieb am zuletzt editiert von Armilar
                #10

                @tklein

                Sehe jetzt erst, dass deine Eingangsparameter lustig aussehen ;-)

                Teile enhancehue durch 360 und saturation durch 100

                HUE kann maximal 360° haben - würde demnach mit 32896/360 = 91,38° in die Funktion gehen

                Installationsanleitung, Tipps, Alias-Definitionen, FAQ für das Sonoff NSPanel mit lovelace UI unter ioBroker
                https://github.com/joBr99/nspanel-lovelace-ui/wiki

                Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                T 1 Antwort Letzte Antwort
                0
                • ArmilarA Armilar

                  @tklein

                  Sehe jetzt erst, dass deine Eingangsparameter lustig aussehen ;-)

                  Teile enhancehue durch 360 und saturation durch 100

                  HUE kann maximal 360° haben - würde demnach mit 32896/360 = 91,38° in die Funktion gehen

                  T Offline
                  T Offline
                  tklein
                  schrieb am zuletzt editiert von
                  #11

                  @armilar mhhmm

                  das hier

                  {"enhancehue":24415,"saturation":254,"transtime":5}
                  

                  ergibt leider

                  [1275,-1963.4999999999998,258.47083333333]
                  

                  da ist noch der wurm drin:

                     hue = hue/360;
                      saturation = saturation/100;
                  
                      let chroma = value * saturation;
                  
                      let x = chroma * (1 - Math.abs((hue % 2) - 1));
                  
                      let rgb = hue <= 1 ? [chroma, x, 0] :
                  
                          hue <= 2 ? [x, chroma, 0] :
                  
                              hue <= 3 ? [0, chroma, x] :
                  
                                  hue <= 4 ? [0, x, chroma] :
                  
                                      hue <= 5 ? [x, 0, chroma] :
                  
                                          [chroma, 0, x];
                  
                   
                  
                      return rgb.map(v => (v + value - chroma) * 255);
                  
                  ArmilarA 1 Antwort Letzte Antwort
                  0
                  • T tklein

                    @armilar mhhmm

                    das hier

                    {"enhancehue":24415,"saturation":254,"transtime":5}
                    

                    ergibt leider

                    [1275,-1963.4999999999998,258.47083333333]
                    

                    da ist noch der wurm drin:

                       hue = hue/360;
                        saturation = saturation/100;
                    
                        let chroma = value * saturation;
                    
                        let x = chroma * (1 - Math.abs((hue % 2) - 1));
                    
                        let rgb = hue <= 1 ? [chroma, x, 0] :
                    
                            hue <= 2 ? [x, chroma, 0] :
                    
                                hue <= 3 ? [0, chroma, x] :
                    
                                    hue <= 4 ? [0, x, chroma] :
                    
                                        hue <= 5 ? [x, 0, chroma] :
                    
                                            [chroma, 0, x];
                    
                     
                    
                        return rgb.map(v => (v + value - chroma) * 255);
                    
                    ArmilarA Offline
                    ArmilarA Offline
                    Armilar
                    Most Active Forum Testing
                    schrieb am zuletzt editiert von Armilar
                    #12

                    @tklein

                    function hsv2rgb(hue, saturation, value) {
                        hue /= 60;
                        let chroma = value * saturation;
                        let x = chroma * (1 - Math.abs((hue % 2) - 1));
                        let rgb = hue <= 1 ? [chroma, x, 0] :
                            hue <= 2 ? [x, chroma, 0] :
                                hue <= 3 ? [0, chroma, x] :
                                    hue <= 4 ? [0, x, chroma] :
                                        hue <= 5 ? [x, 0, chroma] :
                                            [chroma, 0, x];
                     
                        return rgb.map(v => (v + value - chroma) * 255);
                    }
                    
                    
                    function ConvertRGBtoHex(red, green, blue) {
                        return '#' + ColorToHex(red) + ColorToHex(green) + ColorToHex(blue);
                    }
                    
                    //Helper
                    function ColorToHex(color) {
                        let hexadecimal = color.toString(16);
                        return hexadecimal.length == 1 ? '0' + hexadecimal : hexadecimal;
                    }
                    
                    let enhancehue = 32896;
                    let saturation = 254;
                    let transtime =  5;
                    log(hsv2rgb(enhancehue/360, saturation/254 , 1))
                    let rgb = hsv2rgb(enhancehue/360, saturation/254, 1)
                    log(String(ConvertRGBtoHex(Math.round(rgb[0]*1)/1, Math.round(rgb[1]*1)/1, Math.round(rgb[2]*1)/1)));
                    

                    So kommen bei mir sinnvolle Werte raus:

                    script.js.common.DEV.Beispiele.HSV2HEX: [ 121.64444444444442, 255, 0 ]
                    script.js.common.DEV.Beispiele.HSV2HEX: #7aff00
                    

                    a1d572e2-a57c-4903-a06b-ae9c77408fba-image.png

                    Würde bedeuten
                    hsv2rgb(enhancehue/360, saturation/254 , 1)

                    value immer auf 1

                    P.S.: Was ist denn das für ein Adapter, der so merkwürdige Werte liefert?

                    Installationsanleitung, Tipps, Alias-Definitionen, FAQ für das Sonoff NSPanel mit lovelace UI unter ioBroker
                    https://github.com/joBr99/nspanel-lovelace-ui/wiki

                    Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                    T ArmilarA 3 Antworten Letzte Antwort
                    0
                    • ArmilarA Armilar

                      @tklein

                      function hsv2rgb(hue, saturation, value) {
                          hue /= 60;
                          let chroma = value * saturation;
                          let x = chroma * (1 - Math.abs((hue % 2) - 1));
                          let rgb = hue <= 1 ? [chroma, x, 0] :
                              hue <= 2 ? [x, chroma, 0] :
                                  hue <= 3 ? [0, chroma, x] :
                                      hue <= 4 ? [0, x, chroma] :
                                          hue <= 5 ? [x, 0, chroma] :
                                              [chroma, 0, x];
                       
                          return rgb.map(v => (v + value - chroma) * 255);
                      }
                      
                      
                      function ConvertRGBtoHex(red, green, blue) {
                          return '#' + ColorToHex(red) + ColorToHex(green) + ColorToHex(blue);
                      }
                      
                      //Helper
                      function ColorToHex(color) {
                          let hexadecimal = color.toString(16);
                          return hexadecimal.length == 1 ? '0' + hexadecimal : hexadecimal;
                      }
                      
                      let enhancehue = 32896;
                      let saturation = 254;
                      let transtime =  5;
                      log(hsv2rgb(enhancehue/360, saturation/254 , 1))
                      let rgb = hsv2rgb(enhancehue/360, saturation/254, 1)
                      log(String(ConvertRGBtoHex(Math.round(rgb[0]*1)/1, Math.round(rgb[1]*1)/1, Math.round(rgb[2]*1)/1)));
                      

                      So kommen bei mir sinnvolle Werte raus:

                      script.js.common.DEV.Beispiele.HSV2HEX: [ 121.64444444444442, 255, 0 ]
                      script.js.common.DEV.Beispiele.HSV2HEX: #7aff00
                      

                      a1d572e2-a57c-4903-a06b-ae9c77408fba-image.png

                      Würde bedeuten
                      hsv2rgb(enhancehue/360, saturation/254 , 1)

                      value immer auf 1

                      P.S.: Was ist denn das für ein Adapter, der so merkwürdige Werte liefert?

                      T Offline
                      T Offline
                      tklein
                      schrieb am zuletzt editiert von
                      #13

                      @armilar danke schaue ich mir an und versuche es zu verstehen

                      1 Antwort Letzte Antwort
                      0
                      • ArmilarA Armilar

                        @tklein

                        function hsv2rgb(hue, saturation, value) {
                            hue /= 60;
                            let chroma = value * saturation;
                            let x = chroma * (1 - Math.abs((hue % 2) - 1));
                            let rgb = hue <= 1 ? [chroma, x, 0] :
                                hue <= 2 ? [x, chroma, 0] :
                                    hue <= 3 ? [0, chroma, x] :
                                        hue <= 4 ? [0, x, chroma] :
                                            hue <= 5 ? [x, 0, chroma] :
                                                [chroma, 0, x];
                         
                            return rgb.map(v => (v + value - chroma) * 255);
                        }
                        
                        
                        function ConvertRGBtoHex(red, green, blue) {
                            return '#' + ColorToHex(red) + ColorToHex(green) + ColorToHex(blue);
                        }
                        
                        //Helper
                        function ColorToHex(color) {
                            let hexadecimal = color.toString(16);
                            return hexadecimal.length == 1 ? '0' + hexadecimal : hexadecimal;
                        }
                        
                        let enhancehue = 32896;
                        let saturation = 254;
                        let transtime =  5;
                        log(hsv2rgb(enhancehue/360, saturation/254 , 1))
                        let rgb = hsv2rgb(enhancehue/360, saturation/254, 1)
                        log(String(ConvertRGBtoHex(Math.round(rgb[0]*1)/1, Math.round(rgb[1]*1)/1, Math.round(rgb[2]*1)/1)));
                        

                        So kommen bei mir sinnvolle Werte raus:

                        script.js.common.DEV.Beispiele.HSV2HEX: [ 121.64444444444442, 255, 0 ]
                        script.js.common.DEV.Beispiele.HSV2HEX: #7aff00
                        

                        a1d572e2-a57c-4903-a06b-ae9c77408fba-image.png

                        Würde bedeuten
                        hsv2rgb(enhancehue/360, saturation/254 , 1)

                        value immer auf 1

                        P.S.: Was ist denn das für ein Adapter, der so merkwürdige Werte liefert?

                        T Offline
                        T Offline
                        tklein
                        schrieb am zuletzt editiert von
                        #14

                        @armilar said in HUE Farbwert (HSV?) nach HEX konvertieren:

                        function ConvertRGBtoHex(red, green, blue) {

                        das ist der zigbee adapter.

                        Ich komme leider immer noch nicht weiter :-(

                        Ausgabe:

                        fd6dd193-9365-4b2e-86e2-8ff2f55cfb46-grafik.png

                        Funktion:
                        30796049-62c8-4055-83e9-24eb5a4885ca-grafik.png

                        AsgothianA 1 Antwort Letzte Antwort
                        0
                        • T tklein

                          @armilar said in HUE Farbwert (HSV?) nach HEX konvertieren:

                          function ConvertRGBtoHex(red, green, blue) {

                          das ist der zigbee adapter.

                          Ich komme leider immer noch nicht weiter :-(

                          Ausgabe:

                          fd6dd193-9365-4b2e-86e2-8ff2f55cfb46-grafik.png

                          Funktion:
                          30796049-62c8-4055-83e9-24eb5a4885ca-grafik.png

                          AsgothianA Offline
                          AsgothianA Offline
                          Asgothian
                          Developer
                          schrieb am zuletzt editiert von
                          #15

                          @tklein sagte in HUE Farbwert (HSV?) nach HEX konvertieren:

                          Hallo,

                          wie kann ich aus den Werten

                          {
                            "type": "commandEnhancedMoveToHueAndSaturation",
                            "data": {
                              "enhancehue": 32896,
                              "saturation": 254,
                              "transtime": 5
                            },
                          

                          eine HEX-Wert konvertieren? Ist das angegebene Format im JSON HSV?

                          Falls ja, ist die Zuordnung so korrekt?

                          • H = enhancehue

                          • S = saturation

                          • V = transtime

                          Nebenbei, die Segmente des “HSV” Modells heißen Hue, Saturation, Value.

                          Die transtime ist bei dem verwendeten Befehl eine Zeit in der der Wechsel stattfinden soll.

                          ioBroker auf RPi4 - Hardware soweit wie möglich via Zigbee.
                          "Shit don't work" ist keine Fehlermeldung, sondern ein Fluch.

                          T 1 Antwort Letzte Antwort
                          0
                          • AsgothianA Asgothian

                            @tklein sagte in HUE Farbwert (HSV?) nach HEX konvertieren:

                            Hallo,

                            wie kann ich aus den Werten

                            {
                              "type": "commandEnhancedMoveToHueAndSaturation",
                              "data": {
                                "enhancehue": 32896,
                                "saturation": 254,
                                "transtime": 5
                              },
                            

                            eine HEX-Wert konvertieren? Ist das angegebene Format im JSON HSV?

                            Falls ja, ist die Zuordnung so korrekt?

                            • H = enhancehue

                            • S = saturation

                            • V = transtime

                            Nebenbei, die Segmente des “HSV” Modells heißen Hue, Saturation, Value.

                            Die transtime ist bei dem verwendeten Befehl eine Zeit in der der Wechsel stattfinden soll.

                            T Offline
                            T Offline
                            tklein
                            schrieb am zuletzt editiert von
                            #16

                            @asgothian

                            hi,

                            ob das ein hsv wert ist, kann ich leider nicht sagen. Ich bekomme nur das json aus dem zigbee adapter für die fernbedienung. Eigentlich ist es nicht das korrekte modell. Meine wird derzeit nicht unterstützt. Die Befehle scheinen
                            jedoch idenitsch zu sein.

                            1803ba11-bd55-42ed-a1f9-6a9461c4aa50-grafik.png

                            19acc3d4-f008-4352-a002-a1b5173c4fba-grafik.png

                            Ist V denn nun mit Value = Transtime?

                            LG
                            Thomas

                            HomoranH 1 Antwort Letzte Antwort
                            0
                            • T tklein

                              @asgothian

                              hi,

                              ob das ein hsv wert ist, kann ich leider nicht sagen. Ich bekomme nur das json aus dem zigbee adapter für die fernbedienung. Eigentlich ist es nicht das korrekte modell. Meine wird derzeit nicht unterstützt. Die Befehle scheinen
                              jedoch idenitsch zu sein.

                              1803ba11-bd55-42ed-a1f9-6a9461c4aa50-grafik.png

                              19acc3d4-f008-4352-a002-a1b5173c4fba-grafik.png

                              Ist V denn nun mit Value = Transtime?

                              LG
                              Thomas

                              HomoranH Nicht stören
                              HomoranH Nicht stören
                              Homoran
                              Global Moderator Administrators
                              schrieb am zuletzt editiert von
                              #17

                              @tklein sagte in HUE Farbwert (HSV?) nach HEX konvertieren:

                              Transtime

                              ist die Zeit für den Übergang zur neuen Einstellung.
                              hat nichts mit dem Farbwert zu tun

                              kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                              Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                              der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                              T 1 Antwort Letzte Antwort
                              0
                              • HomoranH Homoran

                                @tklein sagte in HUE Farbwert (HSV?) nach HEX konvertieren:

                                Transtime

                                ist die Zeit für den Übergang zur neuen Einstellung.
                                hat nichts mit dem Farbwert zu tun

                                T Offline
                                T Offline
                                tklein
                                schrieb am zuletzt editiert von
                                #18

                                @homoran dann fehlt mir also der wert vom "v", um einen rgb bzw hex wert berechnen zu können so wie es aussieht

                                HomoranH AsgothianA 2 Antworten Letzte Antwort
                                0
                                • T tklein

                                  @homoran dann fehlt mir also der wert vom "v", um einen rgb bzw hex wert berechnen zu können so wie es aussieht

                                  HomoranH Nicht stören
                                  HomoranH Nicht stören
                                  Homoran
                                  Global Moderator Administrators
                                  schrieb am zuletzt editiert von
                                  #19

                                  @tklein sagte in HUE Farbwert (HSV?) nach HEX konvertieren:

                                  @homoran dann fehlt mir also der wert vom "v", um einen rgb bzw hex wert berechnen zu können so wie es aussieht

                                  nein! den hast du anscheinend
                                  https://de.m.wikipedia.org/wiki/HSV-Farbraum

                                  kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                                  Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                                  der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                                  1 Antwort Letzte Antwort
                                  0
                                  • T tklein

                                    @homoran dann fehlt mir also der wert vom "v", um einen rgb bzw hex wert berechnen zu können so wie es aussieht

                                    AsgothianA Offline
                                    AsgothianA Offline
                                    Asgothian
                                    Developer
                                    schrieb am zuletzt editiert von
                                    #20

                                    @tklein Normalerweise wird der “brightness” Wert als “V” im HSV Modell genutzt, wobei du schauen musst ob der 0-1 oder 0-100 ist.

                                    ioBroker auf RPi4 - Hardware soweit wie möglich via Zigbee.
                                    "Shit don't work" ist keine Fehlermeldung, sondern ein Fluch.

                                    T 1 Antwort Letzte Antwort
                                    0
                                    • AsgothianA Asgothian

                                      @tklein Normalerweise wird der “brightness” Wert als “V” im HSV Modell genutzt, wobei du schauen musst ob der 0-1 oder 0-100 ist.

                                      T Offline
                                      T Offline
                                      tklein
                                      schrieb am zuletzt editiert von
                                      #21

                                      @asgothian sorry, aber da bin ich momentan bildungsresistent. Wo finde ich denn den Wert, oder kann ich den immer mit 1 annehmen, so wie @Armilar geschrieben hatte?

                                      1 Antwort Letzte Antwort
                                      0
                                      • HomoranH Nicht stören
                                        HomoranH Nicht stören
                                        Homoran
                                        Global Moderator Administrators
                                        schrieb am zuletzt editiert von
                                        #22

                                        @tklein sagte in HUE Farbwert (HSV?) nach HEX konvertieren:

                                        finde ich denn den Wert

                                        @asgothian sagte in HUE Farbwert (HSV?) nach HEX konvertieren:

                                        brightness

                                        ist doch auch bei dir

                                        @tklein sagte in HUE Farbwert (HSV?) nach HEX konvertieren:

                                        sein.

                                        im Screenshot

                                        kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                                        Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                                        der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                                        1 Antwort Letzte Antwort
                                        0
                                        • ArmilarA Armilar

                                          @tklein

                                          function hsv2rgb(hue, saturation, value) {
                                              hue /= 60;
                                              let chroma = value * saturation;
                                              let x = chroma * (1 - Math.abs((hue % 2) - 1));
                                              let rgb = hue <= 1 ? [chroma, x, 0] :
                                                  hue <= 2 ? [x, chroma, 0] :
                                                      hue <= 3 ? [0, chroma, x] :
                                                          hue <= 4 ? [0, x, chroma] :
                                                              hue <= 5 ? [x, 0, chroma] :
                                                                  [chroma, 0, x];
                                           
                                              return rgb.map(v => (v + value - chroma) * 255);
                                          }
                                          
                                          
                                          function ConvertRGBtoHex(red, green, blue) {
                                              return '#' + ColorToHex(red) + ColorToHex(green) + ColorToHex(blue);
                                          }
                                          
                                          //Helper
                                          function ColorToHex(color) {
                                              let hexadecimal = color.toString(16);
                                              return hexadecimal.length == 1 ? '0' + hexadecimal : hexadecimal;
                                          }
                                          
                                          let enhancehue = 32896;
                                          let saturation = 254;
                                          let transtime =  5;
                                          log(hsv2rgb(enhancehue/360, saturation/254 , 1))
                                          let rgb = hsv2rgb(enhancehue/360, saturation/254, 1)
                                          log(String(ConvertRGBtoHex(Math.round(rgb[0]*1)/1, Math.round(rgb[1]*1)/1, Math.round(rgb[2]*1)/1)));
                                          

                                          So kommen bei mir sinnvolle Werte raus:

                                          script.js.common.DEV.Beispiele.HSV2HEX: [ 121.64444444444442, 255, 0 ]
                                          script.js.common.DEV.Beispiele.HSV2HEX: #7aff00
                                          

                                          a1d572e2-a57c-4903-a06b-ae9c77408fba-image.png

                                          Würde bedeuten
                                          hsv2rgb(enhancehue/360, saturation/254 , 1)

                                          value immer auf 1

                                          P.S.: Was ist denn das für ein Adapter, der so merkwürdige Werte liefert?

                                          ArmilarA Offline
                                          ArmilarA Offline
                                          Armilar
                                          Most Active Forum Testing
                                          schrieb am zuletzt editiert von
                                          #23

                                          @armilar sagte in HUE Farbwert (HSV?) nach HEX konvertieren:

                                          hsv2rgb(enhancehue/360, saturation/254 , 1)

                                          wie schon beschrieben müsste

                                          • H = enhancedhue durch 360 geteilt werden
                                          • S = saturation durch 254 geteilt werden oder direkt mit 1 in die Funktion (= sattere Farben)
                                          • V = 1 (immer)

                                          ein akzeptables Ergebnis liefern...

                                          Installationsanleitung, Tipps, Alias-Definitionen, FAQ für das Sonoff NSPanel mit lovelace UI unter ioBroker
                                          https://github.com/joBr99/nspanel-lovelace-ui/wiki

                                          Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                                          T 1 Antwort Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          409

                                          Online

                                          32.5k

                                          Benutzer

                                          81.8k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe