Fix #27217: B├ęzier control points moves bizarre
authorSergey Sharybin <sergey.vfx@gmail.com>
Tue, 10 May 2011 14:38:55 +0000 (14:38 +0000)
committerSergey Sharybin <sergey.vfx@gmail.com>
Tue, 10 May 2011 14:38:55 +0000 (14:38 +0000)
Re-calculate handles after applying transform matrix on curve object

This commit is'n fixing changing of curve shape whe nyou're deforming it (as
it was intially reported) but just adds needed handles recalculation.

Handles are calculated correct in that "unneded deformed" curve.

source/blender/editors/curve/editcurve.c
source/blender/editors/object/object_transform.c

index cb73f20fe7b54478d7e32a5504cd2453f08433ce..01a39cf208c84d135b2afcc3943fa5d55272b03a 100644 (file)
@@ -6118,6 +6118,7 @@ int join_curve_exec(bContext *C, wmOperator *UNUSED(op))
                                                                mul_m4_v3(cmat, bezt->vec[2]);
                                                                bezt++;
                                                        }
+                                                       calchandlesNurb(newnu);
                                                }
                                                if( (bp= newnu->bp) ) {
                                                        a= newnu->pntsu*nu->pntsv;
index bce16ceeed22d0caa40aa48fccff7808287abd6c..f7c6ff99bde04f879fece5bc498556fd8fdfecc2 100644 (file)
@@ -515,6 +515,7 @@ static int apply_objects_internal(bContext *C, ReportList *reports, int apply_lo
                                                mul_m4_v3(mat, bezt->vec[2]);
                                                bezt->radius *= scale;
                                        }
+                                       calchandlesNurb(nu);
                                }
                                else {
                                        a= nu->pntsu*nu->pntsv;