Я хотел бы реализовать что-то вроде изображения PowerPoint ниже. Градиент, который идет между тремя значениями.
Начинается с A (-1)
, средняя точка - B (0)
, а конец - C (1)
.
Я понял, что могу сэкономить некоторые усилия, рассчитав «начало» как a-to-b, а «конец» - как b-to-c. Я могу сделать как 2 набора из 2 градиентов, вместо одного градиента с тремя значениями.
Но я в тупик (несмотря на поиск в Google) о том, как перейти от одного цвета к другому - в идеале в цветовом пространстве RGB.
Я бы хотел иметь что-то вроде этого -
const colourSpace = (value, startColor, endColor) => {...}
colorSpace(-0.25, red, yellow) // some sort of orangey color
colorSpace(1, yellow, green) // fully green
colorSpace(0.8, yellow, green) // mostly green
Это не интерфейсное приложение, поэтому нет CSS-градиентов - это то, на что Google в основном ссылался.
Спасибо всем,
Олли
![a three point gradient](https://i.stack.imgur.com/W3WYe.png)