Author: post
Date: 2010-10-12 23:59:07 +0200 (Tue, 12 Oct 2010)
New Revision: 3551

Modified:
   trunk/plugins/dcp/dcp.c
Log:
Avoid banding by curve tool by using correctly interleaved data for 
interpolation.

Modified: trunk/plugins/dcp/dcp.c
===================================================================
--- trunk/plugins/dcp/dcp.c     2010-10-12 17:49:12 UTC (rev 3550)
+++ trunk/plugins/dcp/dcp.c     2010-10-12 21:59:07 UTC (rev 3551)
@@ -226,9 +226,11 @@
                                                value = powf(value, 2.2f);
 
                                                /* Store in table */
-                                               dcp->curve_samples[i*2] = 
dcp->curve_samples[i*2+1] = value;
+                                               if (i>0)
+                                                       
dcp->curve_samples[i*2-1] = value;
+                                               dcp->curve_samples[i*2] = value;
                                        }
-                                       dcp->curve_samples[256*2] = 
dcp->curve_samples[256*2+1] = dcp->curve_samples[255*2];
+                                       dcp->curve_samples[256*2-1] = 
dcp->curve_samples[256*2] = dcp->curve_samples[256*2+1] = 
dcp->curve_samples[255*2];
                                }
                        }
                        if (knots)
@@ -1285,9 +1287,11 @@
        gfloat *tc = rs_spline_sample(dcp->tone_curve, NULL, 1024);
        for (i=0; i< 1024; i++)
        {
-               dcp->tone_curve_lut[i*2] = dcp->tone_curve_lut[i*2+1] = tc[i];
+               if (i>0)
+                       dcp->tone_curve_lut[i*2-1] = tc[i];
+               dcp->tone_curve_lut[i*2] = tc[i];
        }
-       dcp->tone_curve_lut[1024*2] = dcp->tone_curve_lut[1024*2+1] = tc[1023];
+       dcp->tone_curve_lut[1024*2-1] = dcp->tone_curve_lut[1024*2] = 
dcp->tone_curve_lut[1024*2+1] = tc[1023];
        g_free(tc);
 
        /* ForwardMatrix */


_______________________________________________
Rawstudio-commit mailing list
[email protected]
http://rawstudio.org/cgi-bin/mailman/listinfo/rawstudio-commit

Reply via email to