From 60a3f21b9f9cf36f72db813f23cbf6228abb0c86 Mon Sep 17 00:00:00 2001 From: Zeno Rogue Date: Mon, 24 Oct 2022 09:39:36 +0200 Subject: [PATCH] compute_cell_color factored out --- pattern2.cpp | 22 +++++++++++++--------- 1 file changed, 13 insertions(+), 9 deletions(-) diff --git a/pattern2.cpp b/pattern2.cpp index 32815efb..19009354 100644 --- a/pattern2.cpp +++ b/pattern2.cpp @@ -1758,6 +1758,18 @@ EX namespace patterns { } } + EX color_t compute_cell_color(cell *c) { + color_t res; + for(int i=0; i<4; i++) { + ld v = real(compute_map_function(c, 1+i, color_formula)); + if(i == 3) part(res, i) = (v > 0); + else if(v < 0) part(res, i) = 0; + else if(v > 1) part(res, i) = 255; + else part(res, i) = int(v * 255 + .5); + } + return res; + } + EX hookset hooks_generate_canvas; EX color_t apeirogonal_color = 0xFFFFFFFF; @@ -1957,15 +1969,7 @@ EX namespace patterns { return r; } case 'f': { - color_t res; - for(int i=0; i<4; i++) { - ld v = real(compute_map_function(c, 1+i, color_formula)); - if(i == 3) part(res, i) = (v > 0); - else if(v < 0) part(res, i) = 0; - else if(v > 1) part(res, i) = 255; - else part(res, i) = int(v * 255 + .5); - } - return res; + return compute_cell_color(c); } case 'k': { /* just keep the old color */