code: private void HSVtoRGB(float hue, float sat, float bri) {
  
          int i;
          float f;
          float p;
          float q;
          float t;
          if (sat == 0) {
              m_red = bri;
              m_green = bri;
              m_blue = bri;
              return;
          }
          hue /= 60;
          i = (int)Math.floor(hue);
          f = hue - i;
          p = bri * (1 - sat);
          q = bri * (1 - (sat * f));
          t = bri * (1 - (sat * (1 - f)));
          switch (i) {
              case 0:
                  m_red = bri;
                  m_green = t;
                  m_blue = p;
                  break;
              case 1:
                  m_red = q;
                  m_green = bri;
                  m_blue = p;
                  break;
              case 2:
                  m_red = p;
                  m_green = bri;
                  m_blue = t;
                  break;
              case 3:
                  m_red = p;
                  m_green = q;
                  m_blue = bri;
                  break;
              case 4:
                  m_red = t;
                  m_green = p;
                  m_blue = bri;
                  break;
              default: // case 5:
                  m_red = bri;
                  m_green = p;
                  m_blue = q;
                  break;
          }
      }
docs: Converts the HSV into the RGB.<p>
  @param hue value
  @param sat the saturation value
  @param bri the brightness value