28 #ifndef _NANO_GFX_TYPES_H_ 29 #define _NANO_GFX_TYPES_H_ 35 #define min(a,b) ((a)<(b)?(a):(b)) 40 #define max(a,b) ((a)>(b)?(a):(b)) 104 void setPos(uint8_t x, uint8_t y);
129 return (((uint8_t)(x-lx)<w) || ((uint8_t)(lx-x)<w)) &&
130 (((uint8_t)(y-ly)<8) || ((uint8_t)(ly-
y)<8));
143 uint8_t right = ((x + w - 1)>>3);
144 uint8_t bottom = ((y + 7)>>3);
145 uint8_t left = x>>3; left = left < right ? left: 0;
146 uint8_t top = y>>3; top = top < bottom ? top: 0;
161 uint8_t right = (uint8_t)(lx + w - 1);
162 uint8_t bottom = (uint8_t)(ly + 7);
163 left = left < right ? left: 0;
164 top = top < bottom ? top: 0;
176 uint8_t left =
min(x,lx);
177 uint8_t top =
min(y,ly);
178 uint8_t right =
max((uint8_t)(x + w - 1), (uint8_t)(lx + w - 1));
179 if (((uint8_t)(lx + w - 1) < w) && (right > 2*w))
181 right = (uint8_t)(lx + w - 1);
183 uint8_t bottom =
max((uint8_t)(y + 7), (uint8_t)(ly + 7));
184 if (((uint8_t)(ly + 7) < 8) && (bottom > 16))
186 bottom = (uint8_t)(ly + 7);
188 if ( left > right ) left = 0;
189 if ( top > bottom ) top = 0;
196 #endif // _NANO_GFX_TYPES_H_
const uint8_t * data
Pointer to PROGMEM data, representing sprite image.
const uint8_t * transparentMask
Pointer to PROGMEM data, representing sprite transparencyMask (can be nullptr)
void setPos(uint8_t x, uint8_t y)
uint8_t y
draw position Y on the screen
uint8_t width
width in pixels
SSD1306_RECT getUpdateRect() const
uint8_t x
draw position X on the screen
SSD1306_RECT getRect() const
uint8_t lx
last draw position X on the screen
const uint8_t * data
font chars bits
uint8_t pages
height in pages
uint8_t ly
last draw position Y on the screen
SSD1306_RECT getLRect() const