diff options
-rw-r--r-- | render.c | 18 | ||||
-rw-r--r-- | render.h | 4 |
2 files changed, 22 insertions, 0 deletions
@@ -114,3 +114,21 @@ void ren_map( } } +void ren_rect( + Renderer* r, + const struct Rect* re +) { + Rect rect = *re; + int i, j; + int ex, ey; + rect_clipr(&rect, r->clip); + ex = rect.x + rect.w; + ey = rect.y + rect.h; + for (j = rect.y; j < ey; j++) + for (i = rect.x; i < ex; i++) { + int idx = i + j * r->w; + int bit = 1 << (idx & 0x1f); + r->t[idx >> 5] ^= bit; + } +} + @@ -27,5 +27,9 @@ void ren_map( const struct Rect* re, const Bitmap* bm ); +void ren_rect( + Renderer* r, + const struct Rect* re +); #endif |