Skip to content
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • 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

  • Default (No Skin)
  • No Skin
Collapse
Logo
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. [Gelöst] HSL zu RGB konvertieren

NEWS

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

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    1.8k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    15
    1
    2.0k

[Gelöst] HSL zu RGB konvertieren

Scheduled Pinned Locked Moved Skripten / Logik
4 Posts 2 Posters 707 Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • R Offline
    R Offline
    rom.wagner80
    wrote on last edited by
    #1

    Hallo zusammen,

    Kann mir eventuell jemand dabei helfen folgenden Quellcode in einen für den iobroker verständliches Script zu wandeln ?

    Will damit sagen, dass ich eigentlich nur noch die Variablen beschreiben muss und die Berechnung dann den Rest erledigt 😉

    mit "createState" würde ich mir drei Eingangsvariablen erstellen (h, s, und l) und als Ausgangsvariable dann r, g und b.

    Den Return-Befehl brauche ich, wenn ich dann eine erstellte Variable beschreibe auch nicht mehr, oder ?

    vielen Dank für euere Hilfe

    <code>function hslToRgb(h, s, l){
            var r, g, b;
    
            if(s === 0){
                r = g = b = l; // achromatic
            }else{
                var hue2rgb = function hue2rgb(p, q, t){
                    if(t < 0) t += 1;
                    if(t > 1) t -= 1;
                    if(t < 1/6) return p + (q - p) * 6 * t;
                    if(t < 1/2) return q;
                    if(t < 2/3) return p + (q - p) * (2/3 - t) * 6;
                    return p;
                }
    
                var q = l < 0.5 ? l * (1 + s) : l + s - l * s;
                var p = 2 * l - q;
                r = hue2rgb(p, q, h + 1/3);
                g = hue2rgb(p, q, h);
                b = hue2rgb(p, q, h - 1/3);
            }
    
            return [Math.round(r * 255), Math.round(g * 255), Math.round(b * 255)];
        }/code]</code>
    
    1 Reply Last reply
    0
    • wendy2702W Online
      wendy2702W Online
      wendy2702
      wrote on last edited by
      #2

      Hilft das:

      viewtopic.php?f=21&t=12740&p=137114#p137114

      !?

      Bitte keine Fragen per PN, die gehören ins Forum!

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

      1 Reply Last reply
      0
      • R Offline
        R Offline
        rom.wagner80
        wrote on last edited by
        #3

        @wendy2702:

        Hilft das:

        viewtopic.php?f=21&t=12740&p=137114#p137114

        !? `

        Genau das war es.

        musste das Script noch ein wenig nach meinen Bedürfnissen anpassen, aber jetzt klappt es 🙂

        vielen Dank

        1 Reply Last reply
        0
        • wendy2702W Online
          wendy2702W Online
          wendy2702
          wrote on last edited by
          #4

          Kannst du dann noch bitte vor den Titel im ersten Post ein````
          [Gelöst]

          
          Danke!

          Bitte keine Fragen per PN, die gehören ins Forum!

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

          1 Reply Last reply
          0
          Reply
          • Reply as topic
          Log in to reply
          • Oldest to Newest
          • Newest to Oldest
          • Most Votes


          Support us

          ioBroker
          Community Adapters
          Donate

          613

          Online

          32.4k

          Users

          81.4k

          Topics

          1.3m

          Posts
          Community
          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
          ioBroker Community 2014-2025
          logo
          • Login

          • Don't have an account? Register

          • Login or register to search.
          • First post
            Last post
          0
          • Recent
          • Tags
          • Unread 0
          • Categories
          • Unreplied
          • Popular
          • GitHub
          • Docu
          • Hilfe