将单个 8 位值 (0-255) 转换为 3 个 8 位值
Convert single 8 bit value (0-255) to 3, 8 bit values
好吧,我能真正解释的最好方法是在这个网站上 https://www.colorspire.com/rgb-color-wheel/ 当你第一次加载网站时有一个色轮,不要将方块中的小指针移动到 select 东西。只需转到您可以拖动的栏并拖动它,您会看到 r g b
值发生变化,但您还会注意到其中一个值始终为 0,我如何重新创建它而不是您拖动的栏您输入一个 8 位值(255 个中的一个),这样我就可以 运行 具有该值的程序可以说是 170,它会以某种方式将其映射到某种颜色。
当你移动条时你实际上是在改变色调所以试试这个
import colorsys
color = input("Enter a value from 0-359:")
test_color = colorsys.hsv_to_rgb(color/360.0, 1, 1)
参考资料
HSV to RGB Color Conversion
test_color = colorsys.hsv_to_rgb(int(value)/255.0, 1, 1)
r, g, b = test_color
r = (r * 255)
r = math.trunc(r)
g = (g * 255)
g = math.trunc(g)
b = (b * 255)
b = math.trunc(b)
fg.orange = Style(RgbFg(r, g, b))
msg = fg.orange + str(f" r = {r}, g = {g}, b = {b}")
print(msg)
好吧,我能真正解释的最好方法是在这个网站上 https://www.colorspire.com/rgb-color-wheel/ 当你第一次加载网站时有一个色轮,不要将方块中的小指针移动到 select 东西。只需转到您可以拖动的栏并拖动它,您会看到 r g b
值发生变化,但您还会注意到其中一个值始终为 0,我如何重新创建它而不是您拖动的栏您输入一个 8 位值(255 个中的一个),这样我就可以 运行 具有该值的程序可以说是 170,它会以某种方式将其映射到某种颜色。
当你移动条时你实际上是在改变色调所以试试这个
import colorsys
color = input("Enter a value from 0-359:")
test_color = colorsys.hsv_to_rgb(color/360.0, 1, 1)
参考资料
HSV to RGB Color Conversion
test_color = colorsys.hsv_to_rgb(int(value)/255.0, 1, 1)
r, g, b = test_color
r = (r * 255)
r = math.trunc(r)
g = (g * 255)
g = math.trunc(g)
b = (b * 255)
b = math.trunc(b)
fg.orange = Style(RgbFg(r, g, b))
msg = fg.orange + str(f" r = {r}, g = {g}, b = {b}")
print(msg)