Какова формула RGB для градиента от белого к синему? - PullRequest
6 голосов
/ 11 ноября 2009

Мне нужна кнопка с номерами в диапазоне 0 ... 255. Мне бы хотелось, чтобы цвет кнопки был белым, когда он равен нулю, и синим (RGB = (0,0,255)), когда он 255. Как мне это сделать? Сначала я пытался сделать его RGB = (0,0,0) в начале, но он только сделает его черным.

Как мне это сделать?

Ответы [ 5 ]

10 голосов
/ 11 ноября 2009

Подойдет простая линейная интерполяция между белым (255,255,255) и синим (0,0,255).

7 голосов
/ 11 ноября 2009

Градиент от синего к белому будет начинаться с:

0,0,255

со значениями R и G, увеличивающимися с той же скоростью: 1,1,255 ... 10,10,255 ... 255255255

Цвета между двумя начнут появляться как пастельно-синий, затем серовато-синий.

2 голосов
/ 11 ноября 2009
whitebluegradient(n):
    if n <   0: n = 0
    if n > 255: n = 255
    r = 255-n
    g = r
    b = 255
    return rgb (r,g,b)

Это даст (255,255,255 = белый) для n = 0 и (0,0,255 = синий) для n = 255.

1 голос
/ 11 ноября 2009

Установите R & G на (255 - значение кнопки).

255,255,255 = белый 0,0255 = синий

1 голос
/ 11 ноября 2009

белый в RGB - 255,255,255

Итак, просто уменьшите красный и зеленый

...