[igt-dev] [PATCH i-g-t 1/2] lib/igt_fb: Add support for drawing rectangles with random colors
André Almeida
andrealmeid at igalia.com
Mon May 16 17:59:26 UTC 2022
Add support for drawing rectangles with random colors, useful for tests
that you don't mind which color will be used.
Signed-off-by: André Almeida <andrealmeid at igalia.com>
---
lib/igt_fb.c | 20 ++++++++++++++++++++
lib/igt_fb.h | 1 +
2 files changed, 21 insertions(+)
diff --git a/lib/igt_fb.c b/lib/igt_fb.c
index eafbe7fd..5ace94cc 100644
--- a/lib/igt_fb.c
+++ b/lib/igt_fb.c
@@ -1465,6 +1465,26 @@ void igt_paint_color(cairo_t *cr, int x, int y, int w, int h,
cairo_fill(cr);
}
+/**
+ * igt_paint_color:
+ * @cr: cairo drawing context
+ * @x: pixel x-coordination of the fill rectangle
+ * @y: pixel y-coordination of the fill rectangle
+ * @w: width of the fill rectangle
+ * @h: height of the fill rectangle
+ *
+ * This functions draws a solid rectangle with random colors using the drawing
+ * context @cr.
+ */
+void igt_paint_color_rand(cairo_t *cr, int x, int y, int w, int h)
+{
+ double r = rand() / (double)RAND_MAX;
+ double g = rand() / (double)RAND_MAX;
+ double b = rand() / (double)RAND_MAX;
+
+ igt_paint_color(cr, x, y, w, h, r, g, b);
+}
+
/**
*
* igt_fill_cts_color_square_framebuffer:
diff --git a/lib/igt_fb.h b/lib/igt_fb.h
index 623a8caa..b3f096fe 100644
--- a/lib/igt_fb.h
+++ b/lib/igt_fb.h
@@ -191,6 +191,7 @@ cairo_t *igt_get_cairo_ctx(int fd, struct igt_fb *fb);
void igt_put_cairo_ctx(cairo_t *cr);
void igt_paint_color(cairo_t *cr, int x, int y, int w, int h,
double r, double g, double b);
+void igt_paint_color_rand(cairo_t *cr, int x, int y, int w, int h);
void igt_paint_color_alpha(cairo_t *cr, int x, int y, int w, int h,
double r, double g, double b, double a);
void igt_paint_color_gradient(cairo_t *cr, int x, int y, int w, int h,
--
2.36.0
More information about the igt-dev
mailing list