[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [53809] trunk/blender/source/blender: Follow general mathutils rules for naming straight<->premul functions

Sergey Sharybin sergey.vfx at gmail.com
Tue Jan 15 09:37:22 CET 2013


Revision: 53809
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=53809
Author:   nazgul
Date:     2013-01-15 08:37:17 +0000 (Tue, 15 Jan 2013)
Log Message:
-----------
Follow general mathutils rules for naming straight<->premul functions

Modified Paths:
--------------
    trunk/blender/source/blender/blenlib/BLI_math_color.h
    trunk/blender/source/blender/blenlib/intern/math_color_inline.c
    trunk/blender/source/blender/imbuf/intern/colormanagement.c
    trunk/blender/source/blender/imbuf/intern/divers.c
    trunk/blender/source/blender/imbuf/intern/png.c

Modified: trunk/blender/source/blender/blenlib/BLI_math_color.h
===================================================================
--- trunk/blender/source/blender/blenlib/BLI_math_color.h	2013-01-15 08:19:30 UTC (rev 53808)
+++ trunk/blender/source/blender/blenlib/BLI_math_color.h	2013-01-15 08:37:17 UTC (rev 53809)
@@ -102,8 +102,10 @@
 
 /**************** Alpha Transformations *****************/
 
-MINLINE void premul_to_straight_v4(float straight[4], const float premul[4]);
-MINLINE void straight_to_premul_v4(float straight[4], const float premul[4]);
+MINLINE void premul_to_straight_v4_v4(float straight[4], const float premul[4]);
+MINLINE void premul_to_straight_v4(float color[4]);
+MINLINE void straight_to_premul_v4_v4(float straight[4], const float premul[4]);
+MINLINE void straight_to_premul_v4(float color[4]);
 MINLINE void straight_uchar_to_premul_float(float result[4], const unsigned char color[4]);
 MINLINE void premul_float_to_straight_uchar(unsigned char *result, const float color[4]);
 

Modified: trunk/blender/source/blender/blenlib/intern/math_color_inline.c
===================================================================
--- trunk/blender/source/blender/blenlib/intern/math_color_inline.c	2013-01-15 08:19:30 UTC (rev 53808)
+++ trunk/blender/source/blender/blenlib/intern/math_color_inline.c	2013-01-15 08:37:17 UTC (rev 53809)
@@ -270,7 +270,7 @@
 
 /**************** Alpha Transformations *****************/
 
-MINLINE void premul_to_straight_v4(float straight[4], const float premul[4])
+MINLINE void premul_to_straight_v4_v4(float straight[4], const float premul[4])
 {
 	if (premul[3] == 0.0f || premul[3] == 1.0f) {
 		straight[0] = premul[0];
@@ -287,8 +287,13 @@
 	}
 }
 
-MINLINE void straight_to_premul_v4(float premul[4], const float straight[4])
+MINLINE void premul_to_straight_v4(float color[4])
 {
+	premul_to_straight_v4_v4(color, color);
+}
+
+MINLINE void straight_to_premul_v4_v4(float premul[4], const float straight[4])
+{
 	float alpha = straight[3];
 	premul[0] = straight[0] * alpha;
 	premul[1] = straight[1] * alpha;
@@ -296,6 +301,11 @@
 	premul[3] = straight[3];
 }
 
+MINLINE void straight_to_premul_v4(float color[4])
+{
+	straight_to_premul_v4_v4(color, color);
+}
+
 MINLINE void straight_uchar_to_premul_float(float result[4], const unsigned char color[4])
 {
 	float alpha = color[3] / 255.0f;

Modified: trunk/blender/source/blender/imbuf/intern/colormanagement.c
===================================================================
--- trunk/blender/source/blender/imbuf/intern/colormanagement.c	2013-01-15 08:19:30 UTC (rev 53808)
+++ trunk/blender/source/blender/imbuf/intern/colormanagement.c	2013-01-15 08:37:17 UTC (rev 53809)
@@ -1222,7 +1222,7 @@
 			}
 			else if (channels == 4) {
 				rgba_uchar_to_float(fp, cp);
-				straight_to_premul_v4(fp, fp);
+				straight_to_premul_v4(fp);
 			}
 			else {
 				BLI_assert(!"Buffers of 3 or 4 channels are only supported here");
@@ -2347,7 +2347,7 @@
 			else if (byte_buffer) {
 				rgba_uchar_to_float(pixel, byte_buffer + linear_index);
 				IMB_colormanagement_colorspace_to_scene_linear_v3(pixel, rect_colorspace);
-				straight_to_premul_v4(pixel, pixel);
+				straight_to_premul_v4(pixel);
 			}
 
 			if (!is_data) {
@@ -2361,7 +2361,7 @@
 			}
 			else {
 				float pixel_straight[4];
-				premul_to_straight_v4(pixel_straight, pixel);
+				premul_to_straight_v4_v4(pixel_straight, pixel);
 				rgba_float_to_uchar(display_buffer + display_index, pixel_straight);
 			}
 		}

Modified: trunk/blender/source/blender/imbuf/intern/divers.c
===================================================================
--- trunk/blender/source/blender/imbuf/intern/divers.c	2013-01-15 08:19:30 UTC (rev 53808)
+++ trunk/blender/source/blender/imbuf/intern/divers.c	2013-01-15 08:37:17 UTC (rev 53809)
@@ -255,7 +255,7 @@
 				/* no color space conversion */
 				if (dither && predivide) {
 					for (x = 0; x < width; x++, from += 4, to += 4) {
-						premul_to_straight_v4(straight, from);
+						premul_to_straight_v4_v4(straight, from);
 						float_to_byte_dither_v4(to, straight, di);
 					}
 				}
@@ -265,7 +265,7 @@
 				}
 				else if (predivide) {
 					for (x = 0; x < width; x++, from += 4, to += 4) {
-						premul_to_straight_v4(straight, from);
+						premul_to_straight_v4_v4(straight, from);
 						rgba_float_to_uchar(to, straight);
 					}
 				}
@@ -281,7 +281,7 @@
 
 				if (dither && predivide) {
 					for (x = 0; x < width; x++, from += 4, to += 4) {
-						premul_to_straight_v4(straight, from);
+						premul_to_straight_v4_v4(straight, from);
 						linearrgb_to_srgb_ushort4(us, from);
 						ushort_to_byte_dither_v4(to, us, di);
 					}
@@ -294,7 +294,7 @@
 				}
 				else if (predivide) {
 					for (x = 0; x < width; x++, from += 4, to += 4) {
-						premul_to_straight_v4(straight, from);
+						premul_to_straight_v4_v4(straight, from);
 						linearrgb_to_srgb_ushort4(us, from);
 						ushort_to_byte_v4(to, us);
 					}
@@ -690,20 +690,20 @@
 void IMB_buffer_float_unpremultiply(float *buf, int width, int height)
 {
 	int total = width * height;
-	float *cp = buf;
+	float *fp = buf;
 	while (total--) {
-		premul_to_straight_v4(cp, cp);
-		cp += 4;
+		premul_to_straight_v4(fp);
+		fp += 4;
 	}
 }
 
 void IMB_buffer_float_premultiply(float *buf, int width, int height)
 {
 	int total = width * height;
-	float *cp = buf;
+	float *fp = buf;
 	while (total--) {
-		straight_to_premul_v4(cp, cp);
-		cp += 4;
+		straight_to_premul_v4(fp);
+		fp += 4;
 	}
 }
 

Modified: trunk/blender/source/blender/imbuf/intern/png.c
===================================================================
--- trunk/blender/source/blender/imbuf/intern/png.c	2013-01-15 08:19:30 UTC (rev 53808)
+++ trunk/blender/source/blender/imbuf/intern/png.c	2013-01-15 08:37:17 UTC (rev 53809)
@@ -204,7 +204,7 @@
 			if (is_16bit) {
 				if (has_float) {
 					for (i = ibuf->x * ibuf->y; i > 0; i--) {
-						premul_to_straight_v4(from_straight, from_float);
+						premul_to_straight_v4_v4(from_straight, from_float);
 						to16[0] = ftoshort(chanel_colormanage_cb(from_straight[0]));
 						to16[1] = ftoshort(chanel_colormanage_cb(from_straight[1]));
 						to16[2] = ftoshort(chanel_colormanage_cb(from_straight[2]));
@@ -237,7 +237,7 @@
 			if (is_16bit) {
 				if (has_float) {
 					for (i = ibuf->x * ibuf->y; i > 0; i--) {
-						premul_to_straight_v4(from_straight, from_float);
+						premul_to_straight_v4_v4(from_straight, from_float);
 						to16[0] = ftoshort(chanel_colormanage_cb(from_straight[0]));
 						to16[1] = ftoshort(chanel_colormanage_cb(from_straight[1]));
 						to16[2] = ftoshort(chanel_colormanage_cb(from_straight[2]));
@@ -267,7 +267,7 @@
 			if (is_16bit) {
 				if (has_float) {
 					for (i = ibuf->x * ibuf->y; i > 0; i--) {
-						premul_to_straight_v4(from_straight, from_float);
+						premul_to_straight_v4_v4(from_straight, from_float);
 						to16[0] = ftoshort(chanel_colormanage_cb(from_straight[0]));
 						to16++; from_float += 4;
 					}




More information about the Bf-blender-cvs mailing list