[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [49018] trunk/blender/source/blender/ editors/mask/mask_ops.c: Fix #32132: Uniformly moving custom feather points does not work

Sergey Sharybin sergey.vfx at gmail.com
Wed Jul 18 11:56:10 CEST 2012


Revision: 49018
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=49018
Author:   nazgul
Date:     2012-07-18 09:56:10 +0000 (Wed, 18 Jul 2012)
Log Message:
-----------
Fix #32132: Uniformly moving custom feather points does not work

Modified Paths:
--------------
    trunk/blender/source/blender/editors/mask/mask_ops.c

Modified: trunk/blender/source/blender/editors/mask/mask_ops.c
===================================================================
--- trunk/blender/source/blender/editors/mask/mask_ops.c	2012-07-18 09:45:50 UTC (rev 49017)
+++ trunk/blender/source/blender/editors/mask/mask_ops.c	2012-07-18 09:56:10 UTC (rev 49018)
@@ -375,7 +375,7 @@
 	MaskSplinePointUW *uw;
 	float handle[2], no[2], feather[2];
 	int width, height;
-	float weight;
+	float weight, weight_scalar;
 
 	short curvature_only, accurate;
 	short initial_feather, overall_feather;
@@ -460,6 +460,7 @@
 			float weight_scalar = BKE_mask_point_weight_scalar(spline, point, uw->u);
 
 			customdata->weight = uw->w;
+			customdata->weight_scalar = weight_scalar;
 			BKE_mask_point_segment_co(spline, point, uw->u, co);
 			BKE_mask_point_normal(spline, point, uw->u, customdata->no);
 
@@ -469,6 +470,7 @@
 			BezTriple *bezt = &point->bezt;
 
 			customdata->weight = bezt->weight;
+			customdata->weight_scalar = 1.0f;
 			BKE_mask_point_normal(spline, point, 0.0f, customdata->no);
 
 			madd_v2_v2v2fl(customdata->feather, bezt->vec[1], customdata->no, bezt->weight);
@@ -710,13 +712,13 @@
 						if (dot_v2v2(no, vec) <= 0.0f)
 							w = -w;
 
-						delta = w - data->weight;
+						delta = w - data->weight * data->weight_scalar;
 
 						if (data->orig_spline == NULL) {
 							/* restore weight for currently sliding point, so orig_spline would be created
 							 * with original weights used
 							 */
-							*weight = data->weight * weight_scalar;
+							*weight = data->weight;
 
 							data->orig_spline = BKE_mask_spline_copy(data->spline);
 						}




More information about the Bf-blender-cvs mailing list