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:
authorCampbell Barton <ideasman42@gmail.com>2011-12-08 07:47:45 +0400
committerCampbell Barton <ideasman42@gmail.com>2011-12-08 07:47:45 +0400
commit2b8249854499199299a4a067f9edfa691a14bbe9 (patch)
tree6bd8992da5c84fee2b76ca3ec7dac85cce2a9aeb /source/blender/modifiers/intern/MOD_weightvg_util.c
parenta5fb261016f0dd9a1393da4aadc76272a0c248b0 (diff)
minor refactor of vertex group functions,
- defvert_remove_index's index wasnt used anywhere, rename to defvert_remove_group - defvert_add_to_group was local in MOD_weightvg_util.c, moved to deform.c and renamed to defvert_add_index_notest real fix coming next...
Diffstat (limited to 'source/blender/modifiers/intern/MOD_weightvg_util.c')
-rw-r--r--source/blender/modifiers/intern/MOD_weightvg_util.c20
1 files changed, 2 insertions, 18 deletions
diff --git a/source/blender/modifiers/intern/MOD_weightvg_util.c b/source/blender/modifiers/intern/MOD_weightvg_util.c
index e206000f41d..5631b7e716a 100644
--- a/source/blender/modifiers/intern/MOD_weightvg_util.c
+++ b/source/blender/modifiers/intern/MOD_weightvg_util.c
@@ -222,23 +222,7 @@ void weightvg_do_mask(int num, const int *indices, float *org_w, const float *ne
}
}
-/* Adds the given vertex to the specified vertex group, with given weight. */
-static void defvert_add_to_group(MDeformVert *dv, int defgrp_idx, const float weight)
-{
- /* TODO, move into deform.c as a generic function. This assumes the vertex
- * groups have already been checked, so this has to remain low level. */
- MDeformWeight *newdw;
- newdw = MEM_callocN(sizeof(MDeformWeight)*(dv->totweight+1), "defvert_add_to group, new deformWeight");
- if(dv->dw) {
- memcpy(newdw, dv->dw, sizeof(MDeformWeight)*dv->totweight);
- MEM_freeN(dv->dw);
- }
- dv->dw = newdw;
- dv->dw[dv->totweight].weight = weight;
- dv->dw[dv->totweight].def_nr = defgrp_idx;
- dv->totweight++;
-}
/* Applies weights to given vgroup (defgroup), and optionnaly add/remove vertices from the group.
@@ -264,7 +248,7 @@ void weightvg_update_vg(MDeformVert *dvert, int defgrp_idx, MDeformWeight **dws,
/* If the vertex is in this vgroup, remove it if needed, or just update it. */
if(dw != NULL) {
if(do_rem && w < rem_thresh) {
- defvert_remove_index(dv, defgrp_idx, dw);
+ defvert_remove_group(dv, dw);
}
else {
dw->weight = w;
@@ -272,7 +256,7 @@ void weightvg_update_vg(MDeformVert *dvert, int defgrp_idx, MDeformWeight **dws,
}
/* Else, add it if needed! */
else if(do_add && w > add_thresh) {
- defvert_add_to_group(dv, defgrp_idx, w);
+ defvert_add_index_notest(dv, defgrp_idx, w);
}
}
}