Получить шестнадцатеричный цвет в зависимости от влажности - PullRequest
1 голос
/ 07 июня 2019

Я пытаюсь найти формальный способ вычисления шестнадцатеричного цвета на основе значения относительной влажности, выраженного в процентах.

Здесь - это пример цветовой гаммы, которую я хотел бы использовать, которая наиболее часто используется

Можно ли использовать какой-либо метод?

1 Ответ

0 голосов
/ 07 июня 2019

Учитывая комментарий с изображением, я бы сказал, что лучший способ сделать это так:

Найдите компоненты цвета RGB для начального значения (влажность 0%) и конечного значения (влажность 100%). Затем для каждого цветового компонента вы можете сделать линейную карту от начала до конца. В псевдокоде:

int startRed = 50; // I made up all these numbers!
int endRed = 100;
int startBlue = 75;
int endBlue = 125;
int startGreen = 100;
int endGreen = 255;
function percentToColor(double percent) { // percent is a double in [0.0, 1.0]
    int redValue = startRed + (endRed - startRed) * percent;
    int greenValue = startGreen + (endGreen - startGreen) * percent;
    int blueValue = startBlue + (endBlue - startBlue) * percent;
    return [redValue, greenValue, blueValue];
}

Опять же, это был псевдокод. Вам нужно будет заставить его работать на любом языке, который вы хотите, и учитывать типы различных переменных.

Я также не уверен на 100%, что это даст тот же градиент, что и на изображении, которое вы связали, но в целом он делает градиент , даже если он не совпадает идеально.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...