mit dem folgenden Code kann man wunderbar von HSV zu RGB umrechnen.
Bedingung: Hue [0...360], Sat [0...100], Val [0...100]
Code: Alles auswählen
import colorsys
Code: Alles auswählen
def hsv_to_rgb(hue, sat, val):
hue = hue / 360
sat = sat / 100
val = val / 100
return = tuple(round(i * 255) for i in colorsys.hsv_to_rgb(hue,sat,val))
nur mit der Umrechnung in die andere Richtung tue ich mich schwer. Hat jemand da einen anderen guten Ansatz?
Colorsys gibt eine Tuple zurück.
Code: Alles auswählen
def rgb_to_hsv(r,g,b):
r = r / 255
g = g / 255
b = b / 255
hsv_value = list(round(i * 100) for i in colorsys.rgb_to_hsv(value_r, value_g, value_b))
hsv_value[0] = round(hsv_value[0] * 3.6) # Hue muss mit 360 multipliziert werden, der Rest mit 100
return tuple(hsv_value)