Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBrecht Van Lommel <brechtvanlommel@pandora.be>2011-12-03 01:10:29 +0400
committerBrecht Van Lommel <brechtvanlommel@pandora.be>2011-12-03 01:10:29 +0400
commit20620a988a8919116c69b618af04a15535f89c4b (patch)
tree092282a49276b0910a00c557eb54674941bbfea0 /source/blender/editors/armature
parenta097bc6889c0b87c0274111d1f69f0d29254f069 (diff)
Fix #27620: improve mesh deform error message when it fails to bind.
Diffstat (limited to 'source/blender/editors/armature')
-rw-r--r--source/blender/editors/armature/meshlaplacian.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/source/blender/editors/armature/meshlaplacian.c b/source/blender/editors/armature/meshlaplacian.c
index 40d2d80f2b7..502da1be8ac 100644
--- a/source/blender/editors/armature/meshlaplacian.c
+++ b/source/blender/editors/armature/meshlaplacian.c
@@ -1608,7 +1608,7 @@ static void meshdeform_matrix_add_exterior_phi(MeshDeformBind *mdb, int x, int y
mdb->phi[acenter]= phi/totweight;
}
-static void meshdeform_matrix_solve(MeshDeformBind *mdb)
+static void meshdeform_matrix_solve(MeshDeformModifierData *mmd, MeshDeformBind *mdb)
{
NLContext *context;
float vec[3], gridvec[3];
@@ -1710,7 +1710,8 @@ static void meshdeform_matrix_solve(MeshDeformBind *mdb)
}
}
else {
- error("Mesh Deform: failed to find solution");
+ modifier_setError(&mmd->modifier, "Failed to find bind solution (increase precision?).");
+ error("Mesh Deform: failed to find bind solution.");
break;
}
@@ -1819,7 +1820,7 @@ static void harmonic_coordinates_bind(Scene *UNUSED(scene), MeshDeformModifierDa
meshdeform_check_semibound(mdb, x, y, z);
/* solve */
- meshdeform_matrix_solve(mdb);
+ meshdeform_matrix_solve(mmd, mdb);
/* assign results */
if(mmd->flag & MOD_MDEF_DYNAMIC_BIND) {