void nblend( CRGB* existing, CRGB* overlay, uint16_t count, fract8 amountOfOverlay) { for( uint16_t i = count; i; i--) { nblend( *existing, *overlay, amountOfOverlay); existing++; overlay++; } }
void nblend( CHSV* existing, CHSV* overlay, uint16_t count, fract8 amountOfOverlay, TGradientDirectionCode directionCode ) { for( uint16_t i = count; i; i--) { nblend( *existing, *overlay, amountOfOverlay, directionCode); existing++; overlay++; } }
CRGB blend( const CRGB& p1, const CRGB& p2, fract8 amountOfP2 ) { CRGB nu(p1); nblend( nu, p2, amountOfP2); return nu; }
CHSV blend( const CHSV& p1, const CHSV& p2, fract8 amountOfP2, TGradientDirectionCode directionCode ) { CHSV nu(p1); nblend( nu, p2, amountOfP2, directionCode); return nu; }