64 template <
typename XYVisitor>
66 for (u16
x = 0;
x < 2; ++
x) {
67 for (u16
y = 0;
y < 2; ++
y) {
72 if (
xymap.has(xx, yy)) {
74 u16 ux =
static_cast<u16
>(xx);
75 u16 uy =
static_cast<u16
>(yy);
76 int index =
xymap.mapToIndex(ux, uy);
78 u32 uindex =
static_cast<u32
>(index);
80 visitor.draw(pt, uindex,
value);
fl::pair< vec2< u16 >, u8 > Entry
static vector_fixed< Tile2x2_u8_wrap, 2 > Interpolate(const Tile2x2_u8_wrap &a, const Tile2x2_u8_wrap &b, float t)
Tile2x2_u8_wrap() FL_NOEXCEPT
const u8 & at(int x, int y) const
static Tile2x2_u8 MaxTile(const Tile2x2_u8 &a, const Tile2x2_u8 &b)
const u8 & upper_left() const
void draw(const CRGB &color, const XYMap &xymap, fl::span< CRGB > out) const
const u8 & lower_right() const
Tile2x2_u8(Tile2x2_u8 &&) FL_NOEXCEPT=default
static void Rasterize(const span< const Tile2x2_u8 > &tiles, XYRasterU8Sparse *output)
void setOrigin(u16 x, u16 y)
const u8 & upper_right() const
Tile2x2_u8(const Tile2x2_u8 &) FL_NOEXCEPT=default
Tile2x2_u8 & operator=(const Tile2x2_u8 &) FL_NOEXCEPT=default
u8 & operator()(int x, int y)
const u8 & lower_left() const
vec2< u16 > origin() const
void draw(const XYMap &xymap, XYVisitor &visitor) const
Tile2x2_u8() FL_NOEXCEPT=default
rect< u16 > bounds() const
bounds => [begin_x, end_x) (where end_x is exclusive)
constexpr int type_rank< T >::value
FixedVector< T, INLINED_SIZE > vector_fixed
Base definition for an LED controller.
Representation of an 8-bit RGB pixel (Red, Green, Blue)