38 {
39 uint16_t outputWidth =
xyMap.getWidth();
40 uint16_t outputHeight =
xyMap.getHeight();
41 const bool wontFit = (outputWidth !=
xyMap.getWidth() || outputHeight !=
xyMap.getHeight());
42
43
44 if (wontFit || (inputWidth & (inputWidth - 1)) || (inputHeight & (inputHeight - 1))) {
46 } else {
48 }
49}
XYMap xyMap(HEIGHT, WIDTH, SERPENTINE)
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.