From 25223a71460075b9b4f1cf8df82d89dafde24423 Mon Sep 17 00:00:00 2001 From: quou Date: Tue, 1 Oct 2024 20:37:59 +1000 Subject: ren_rect --- render.c | 18 ++++++++++++++++++ render.h | 4 ++++ 2 files changed, 22 insertions(+) diff --git a/render.c b/render.c index 9a504a0..07af8cf 100644 --- a/render.c +++ b/render.c @@ -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; + } +} + diff --git a/render.h b/render.h index 98a8cc7..e41572e 100644 --- a/render.h +++ b/render.h @@ -27,5 +27,9 @@ void ren_map( const struct Rect* re, const Bitmap* bm ); +void ren_rect( + Renderer* r, + const struct Rect* re +); #endif -- cgit v1.2.3-54-g00ecf