24 uint16_t inputWidth, uint16_t inputHeight,
37inline void bilinearExpand(
const CRGB *input,
CRGB *output, uint16_t inputWidth,
39 uint16_t outputWidth = xyMap.getWidth();
40 uint16_t outputHeight = xyMap.getHeight();
41 const bool wontFit = (outputWidth != xyMap.getWidth() || outputHeight != xyMap.getHeight());
44 if (wontFit || (inputWidth & (inputWidth - 1)) || (inputHeight & (inputHeight - 1))) {
51void bilinearExpandFloat(
const CRGB *input,
CRGB *output,
52 uint8_t inputWidth, uint8_t inputHeight,
55void bilinearExpandArbitraryFloat(
const CRGB *input,
CRGB *output,
56 uint16_t inputWidth, uint16_t inputHeight,
59uint8_t bilinearInterpolateFloat(uint8_t v00, uint8_t v10, uint8_t v01,
60 uint8_t v11,
float dx,
float dy);
Defines the red, green, and blue (RGB) pixel struct.
Implements the FastLED namespace macros.
Implements a simple red square effect for 2D LED grids.
void bilinearExpandArbitrary(const CRGB *input, CRGB *output, uint16_t inputWidth, uint16_t inputHeight, XYMap xyMap)
Performs bilinear interpolation for upscaling an image.
void bilinearExpandPowerOf2(const CRGB *input, CRGB *output, uint8_t inputWidth, uint8_t inputHeight, XYMap xyMap)
Performs bilinear interpolation for upscaling an image.
Representation of an RGB pixel (Red, Green, Blue)