diff options
author | Campbell Barton <ideasman42@gmail.com> | 2017-04-29 17:01:16 +0300 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2017-04-29 17:01:16 +0300 |
commit | 47769b5f402503d602e532b9c4dfb89173e5fc06 (patch) | |
tree | 8f9555186500fdd56130e1e7fa437c6604b31666 /source | |
parent | 6d73e2d3cf3c9a8fa4c73e04d02caecfd716e962 (diff) |
Curve Fitting: minor change to re-fitting method
Avoid calculating a new split-index when re-fitting.
While checking if a knot can be removed, the index with the highest error
can be used as a candidate to replace the knot
(in the case it can't be removed).
Diffstat (limited to 'source')
-rw-r--r-- | source/blender/editors/curve/editcurve.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/source/blender/editors/curve/editcurve.c b/source/blender/editors/curve/editcurve.c index 648fe930030..a69264cd012 100644 --- a/source/blender/editors/curve/editcurve.c +++ b/source/blender/editors/curve/editcurve.c @@ -5850,6 +5850,7 @@ static int curve_dissolve_exec(bContext *C, wmOperator *UNUSED(op)) BLI_assert(points_stride + dims == points + (points_len * dims)); float tan_l[3], tan_r[3], error_sq_dummy; + unsigned int error_index_dummy; sub_v3_v3v3(tan_l, bezt_prev->vec[1], bezt_prev->vec[2]); normalize_v3(tan_l); @@ -5860,7 +5861,7 @@ static int curve_dissolve_exec(bContext *C, wmOperator *UNUSED(op)) points, points_len, NULL, dims, FLT_EPSILON, tan_l, tan_r, bezt_prev->vec[2], bezt_next->vec[0], - &error_sq_dummy); + &error_sq_dummy, &error_index_dummy); if (!ELEM(bezt_prev->h2, HD_FREE, HD_ALIGN)) { bezt_prev->h2 = (bezt_prev->h2 == HD_VECT) ? HD_FREE : HD_ALIGN; |