JSFiddle - React, Tailwind, and code Playground
by Felipe Alfaro
TypeScript
type RGBColor = [number, number, number];
const interpolateColors = (
startRGB: RGBColor,
finishRGB: RGBColor,
steps: number
) => {
const stepFactor = 1 / (steps - 1);
const colorInterpolationArray: RGBColor[] = [];
for (var i = 0; i < steps; i++) {
const resultRGB: RGBColor = [startRGB[0], startRGB[1], startRGB[2]];
for (var i = 0; i < resultRGB.length; i++) {
resultRGB[i] = Math.round(resultRGB[i] + (stepFactor * i) * (finishRGB[i] - startRGB[i]));
}
colorInterpolationArray.push(resultRGB);
}
return colorInterpolationArray;
};
console.log('asd', interpolateColors([], [], 5))