]> granicus.if.org Git - graphviz/commitdiff
simplify color printing in mm2gv
authorMatthew Fernandez <matthew.fernandez@gmail.com>
Sat, 24 Apr 2021 16:24:48 +0000 (09:24 -0700)
committerMatthew Fernandez <matthew.fernandez@gmail.com>
Sat, 1 May 2021 18:18:52 +0000 (11:18 -0700)
This is a shorter, more efficient way to accomplish the same thing.

cmd/tools/mm2gv.c

index 907c0847186b00c28b198ad24db7f53dd017e34f..8ed2114e1bdb8fea7ca0437734a9be7b72cd2c4b 100644 (file)
@@ -53,10 +53,6 @@ static real Hue2RGB(real v1, real v2, real H)
     return v1;
 }
 
-char *hex[16] =
-    { "0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "a", "b", "c", "d",
-"e", "f" };
-
 static char *hue2rgb(real hue, char *color)
 {
     real v1, v2, lightness = .5, saturation = 1;
@@ -72,14 +68,7 @@ static char *hue2rgb(real hue, char *color)
     red = (int) (255.0 * Hue2RGB(v1, v2, hue + (1.0 / 3.0)) + 0.5);
     green = (int) (255.0 * Hue2RGB(v1, v2, hue) + 0.5);
     blue = (int) (255.0 * Hue2RGB(v1, v2, hue - (1.0 / 3.0)) + 0.5);
-    color[0] = '#';
-    sprintf(color + 1, "%s", hex[red / 16]);
-    sprintf(color + 2, "%s", hex[red % 16]);
-    sprintf(color + 3, "%s", hex[green / 16]);
-    sprintf(color + 4, "%s", hex[green % 16]);
-    sprintf(color + 5, "%s", hex[blue / 16]);
-    sprintf(color + 6, "%s", hex[blue % 16]);
-    color[7] = '\0';
+    sprintf(color, "#%02x%02x%02x", red, green, blue);
     return color;
 }