[CGSG] SVN Commit r419 - user/kintel/opengl/effects

kintel at metalab.at kintel at metalab.at
Sun Apr 20 04:41:42 CEST 2008


Author: kintel
Date: 2008-04-20 04:41:42 +0200 (Sun, 20 Apr 2008)
New Revision: 419

Added:
   user/kintel/opengl/effects/colors.cpp
   user/kintel/opengl/effects/colors.h
Modified:
   user/kintel/opengl/effects/moebius.cpp
Log:
color utility function -> separate file

Added: user/kintel/opengl/effects/colors.cpp
===================================================================
--- user/kintel/opengl/effects/colors.cpp	                        (rev 0)
+++ user/kintel/opengl/effects/colors.cpp	2008-04-20 02:41:42 UTC (rev 419)
@@ -0,0 +1,33 @@
+#include "colors.h"
+
+void hsv2rgb(float h, float s, float v, 
+             float &r, float &g, float &b)
+{
+  int sector = 6*h;
+  float f = 6*h-sector;
+  float p = v * ( 1 - s );
+  float q = v * ( 1 - s * f );
+  float t = v * ( 1 - s * ( 1 - f ) );
+  
+  switch (sector) {
+  case 0:
+    r = v;    g = t;    b = p;
+    break;
+  case 1:
+    r = q;    g = v;    b = p;
+    break;
+  case 2:
+    r = p;    g = v;    b = t;
+    break;
+  case 3:
+    r = p;    g = q;    b = v;
+    break;
+  case 4:
+    r = t;    g = p;    b = v;
+    break;
+  default:
+    r = v;    g = p;    b = q;
+    break;
+  }
+}
+

Added: user/kintel/opengl/effects/colors.h
===================================================================
--- user/kintel/opengl/effects/colors.h	                        (rev 0)
+++ user/kintel/opengl/effects/colors.h	2008-04-20 02:41:42 UTC (rev 419)
@@ -0,0 +1,7 @@
+#ifndef COLORS_H_
+#define COLORS_H_
+
+void hsv2rgb(float h, float s, float v, float &r, float &g, float &b);
+
+
+#endif

Modified: user/kintel/opengl/effects/moebius.cpp
===================================================================
--- user/kintel/opengl/effects/moebius.cpp	2008-04-20 01:46:32 UTC (rev 418)
+++ user/kintel/opengl/effects/moebius.cpp	2008-04-20 02:41:42 UTC (rev 419)
@@ -28,6 +28,9 @@
 #include "Grid.h"
 class Grid *grid;
 
+// Colors
+#include "colors.h"
+
 // Moebius
 std::complex<float> abcd[4] = {
   std::complex<float>(1,0),
@@ -42,37 +45,6 @@
   timecounter += 0.001*step;
 }
 
-static void hsv2rgb(float h, float s, float v, 
-                    float &r, float &g, float &b)
-{
-  int sector = 6*h;
-  float f = 6*h-sector;
-  float p = v * ( 1 - s );
-  float q = v * ( 1 - s * f );
-  float t = v * ( 1 - s * ( 1 - f ) );
-  
-  switch (sector) {
-  case 0:
-    r = v;    g = t;    b = p;
-    break;
-  case 1:
-    r = q;    g = v;    b = p;
-    break;
-  case 2:
-    r = p;    g = v;    b = t;
-    break;
-  case 3:
-    r = p;    g = q;    b = v;
-    break;
-  case 4:
-    r = t;    g = p;    b = v;
-    break;
-  default:
-    r = v;    g = p;    b = q;
-    break;
-  }
-}
-
 static Texture *initTexture(int width, int height)
 {
   Texture *tx = new Texture(width, height, GL_RGBA);



More information about the CGSG mailing list