[Bf-blender-cvs] [3673a5a] master: Curve Fitting: Use normalized projection function

Campbell Barton noreply at git.blender.org
Thu Jul 28 10:33:47 CEST 2016


Commit: 3673a5adba1ba2ed9d4d527ca4ba9d81f199b35d
Author: Campbell Barton
Date:   Thu Jul 28 18:33:14 2016 +1000
Branches: master
https://developer.blender.org/rB3673a5adba1ba2ed9d4d527ca4ba9d81f199b35d

Curve Fitting: Use normalized projection function

===================================================================

M	extern/curve_fit_nd/intern/curve_fit_cubic_refit.c

===================================================================

diff --git a/extern/curve_fit_nd/intern/curve_fit_cubic_refit.c b/extern/curve_fit_nd/intern/curve_fit_cubic_refit.c
index 9024296..b51535b 100644
--- a/extern/curve_fit_nd/intern/curve_fit_cubic_refit.c
+++ b/extern/curve_fit_nd/intern/curve_fit_cubic_refit.c
@@ -947,14 +947,17 @@ static uint curve_incremental_simplify_corners(
 				        dims);
 
 				if (split_index != SPLIT_POINT_INVALID) {
+					const double *co_prev  = &params.pd->points[k_prev->index * dims];
+					const double *co_next  = &params.pd->points[k_next->index * dims];
+					const double *co_split = &params.pd->points[split_index * dims];
 
-					project_vn_vnvn(k_proj_ref,   &pd->points[k_prev->index * dims], k_prev->tan[1], dims);
-					project_vn_vnvn(k_proj_split, &pd->points[split_index   * dims], k_prev->tan[1], dims);
+					project_vn_vnvn_normalized(k_proj_ref,   co_prev, k_prev->tan[1], dims);
+					project_vn_vnvn_normalized(k_proj_split, co_split, k_prev->tan[1], dims);
 
 					if (len_squared_vnvn(k_proj_ref, k_proj_split, dims) < error_sq_2x_max) {
 
-						project_vn_vnvn(k_proj_ref,   &pd->points[k_next->index * dims], k_next->tan[0], dims);
-						project_vn_vnvn(k_proj_split, &pd->points[split_index   * dims], k_next->tan[0], dims);
+						project_vn_vnvn_normalized(k_proj_ref,   co_next, k_next->tan[0], dims);
+						project_vn_vnvn_normalized(k_proj_split, co_split, k_next->tan[0], dims);
 
 						if (len_squared_vnvn(k_proj_ref, k_proj_split, dims) < error_sq_2x_max) {




More information about the Bf-blender-cvs mailing list