65 template <
typename XYVisitor>
67 for (uint16_t
x = 0;
x < 2; ++
x) {
68 for (uint16_t
y = 0;
y < 2; ++
y) {
69 uint8_t value =
at(
x,
y);
73 if (
xymap.has(xx, yy)) {
74 int index =
xymap(xx, yy);
102 const Data &
at(uint16_t
x, uint16_t
y)
const;
XYMap xymap(WIDTH, HEIGHT, SERPENTINE)
Data & at(uint16_t x, uint16_t y)
fl::pair< vec2i16, uint8_t > Data
Tile2x2_u8_wrap()=default
void scale(uint8_t scale)
const uint8_t & lower_left() const
static Tile2x2_u8 MaxTile(const Tile2x2_u8 &a, const Tile2x2_u8 &b)
static void Rasterize(const Slice< const Tile2x2_u8 > &tiles, XYRasterU8Sparse *output)
Tile2x2_u8(const Tile2x2_u8 &)=default
const uint8_t & at(int x, int y) const
Tile2x2_u8(const vec2< int16_t > &origin)
uint8_t & operator()(int x, int y)
rect< int16_t > bounds() const
bounds => [begin_x, end_x) (where end_x is exclusive)
const uint8_t & upper_left() const
void setOrigin(int16_t x, int16_t y)
void draw(const CRGB &color, const XYMap &xymap, CRGB *out) const
vec2< int16_t > origin() const
const uint8_t & upper_right() const
Tile2x2_u8(Tile2x2_u8 &&)=default
Tile2x2_u8 & operator=(const Tile2x2_u8 &)=default
void draw(const XYMap &xymap, XYVisitor &visitor) const
const uint8_t & lower_right() const
uint8_t & at(int x, int y)
#define FASTLED_NAMESPACE_END
Implements the FastLED namespace macros.
Implements a simple red square effect for 2D LED grids.
Representation of an RGB pixel (Red, Green, Blue)