diff options
author | Campbell Barton <ideasman42@gmail.com> | 2016-07-25 07:12:17 +0300 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2016-07-25 07:55:08 +0300 |
commit | 2418daede5913c54bd9675eb23624487f6b0ad4c (patch) | |
tree | b3759b8bc89833aa4b8883d9690874e16a5c9bac /source | |
parent | f23fecf3061a63d24815a63a378a636832a40ccd (diff) |
Curve Fitting: Add alternate 'refit' method
This is an alternative method for fitting a curve which incrementally simplifies the curve, then re-fits.
Generally gives better results, also improves corner detection.
Diffstat (limited to 'source')
-rw-r--r-- | source/blender/editors/curve/editcurve.c | 2 | ||||
-rw-r--r-- | source/blender/editors/curve/editcurve_paint.c | 2 |
2 files changed, 2 insertions, 2 deletions
diff --git a/source/blender/editors/curve/editcurve.c b/source/blender/editors/curve/editcurve.c index 72b48a32477..e40dde24ce2 100644 --- a/source/blender/editors/curve/editcurve.c +++ b/source/blender/editors/curve/editcurve.c @@ -5843,7 +5843,7 @@ static int curve_dissolve_exec(bContext *C, wmOperator *UNUSED(op)) normalize_v3(tan_r); curve_fit_cubic_to_points_single_fl( - points, points_len, dims, FLT_EPSILON, + points, points_len, NULL, dims, FLT_EPSILON, tan_l, tan_r, bezt_prev->vec[2], bezt_next->vec[0], &error_sq_dummy); diff --git a/source/blender/editors/curve/editcurve_paint.c b/source/blender/editors/curve/editcurve_paint.c index 38018541929..ac0dc2a0c26 100644 --- a/source/blender/editors/curve/editcurve_paint.c +++ b/source/blender/editors/curve/editcurve_paint.c @@ -912,7 +912,7 @@ static int curve_draw_exec(bContext *C, wmOperator *op) const int result = curve_fit_cubic_to_points_fl( coords, stroke_len, dims, error_threshold, CURVE_FIT_CALC_HIGH_QUALIY, - corners, corners_len, + corners, NULL, corners_len, &cubic_spline, &cubic_spline_len, NULL, &corners_index, &corners_index_len); |