From 66d6d89aebd810d86ae2a1a3f57ab0eed27107be Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Th=C3=A9ophile=20Bastian?= Date: Tue, 6 Feb 2018 21:26:18 +0100 Subject: [PATCH] Randomizing face colour for each face Allows to easily identify each face. --- render/GlutRender.cpp | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/render/GlutRender.cpp b/render/GlutRender.cpp index 7107b30..28a4d74 100644 --- a/render/GlutRender.cpp +++ b/render/GlutRender.cpp @@ -3,6 +3,8 @@ #include #include #include +#include +#include GlutRender& GlutRender::get_instance() { static GlutRender instance; @@ -67,6 +69,10 @@ void GlutRender::display() { glLoadIdentity(); glTranslatef(0., 0., -6.); + std::default_random_engine rand_engine(time(NULL)); + std::uniform_real_distribution distribution; + auto rand_color = std::bind(distribution, rand_engine); + for(Mesh* mesh: meshes) { const Point& mesh_center = mesh->get_center(); @@ -77,7 +83,7 @@ void GlutRender::display() { Point p0 = face.pt(0, points) + mesh_center, p1 = face.pt(1, points) + mesh_center, p2 = face.pt(2, points) + mesh_center; - glColor3f(1.0f, 1.0f, 0.0f); + glColor3f(rand_color(), rand_color(), rand_color()); glVertex3f(p0[0], p0[1], p0[2]); glVertex3f(p1[0], p1[1], p1[2]); glVertex3f(p2[0], p2[1], p2[2]);