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>2014-02-28 14:10:32 +0400
committerCampbell Barton <ideasman42@gmail.com>2014-02-28 14:26:19 +0400
commit771b0e354c3ce3fbce5f73c3ca42e8ce0465659a (patch)
treee2033178ce60e29bf21142317654a04cdcd55b61 /source/blender/editors/util/crazyspace.c
parent433b20b7eab28a9fdf0eecea990e667fd9072a26 (diff)
Fix Crazyspace with proportional editing
Diffstat (limited to 'source/blender/editors/util/crazyspace.c')
-rw-r--r--source/blender/editors/util/crazyspace.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/source/blender/editors/util/crazyspace.c b/source/blender/editors/util/crazyspace.c
index 67b805943bf..86d2017e997 100644
--- a/source/blender/editors/util/crazyspace.c
+++ b/source/blender/editors/util/crazyspace.c
@@ -152,7 +152,8 @@ float (*crazyspace_get_mapped_editverts(Scene *scene, Object *obedit))[3]
return vertexcos;
}
-void crazyspace_set_quats_editmesh(BMEditMesh *em, float (*origcos)[3], float (*mappedcos)[3], float (*quats)[4])
+void crazyspace_set_quats_editmesh(BMEditMesh *em, float (*origcos)[3], float (*mappedcos)[3], float (*quats)[4],
+ const bool use_select)
{
BMFace *f;
BMIter iter;
@@ -172,8 +173,12 @@ void crazyspace_set_quats_editmesh(BMEditMesh *em, float (*origcos)[3], float (*
l_iter = l_first = BM_FACE_FIRST_LOOP(f);
do {
- if (!BM_elem_flag_test(l_iter->v, BM_ELEM_SELECT) || BM_elem_flag_test(l_iter->v, BM_ELEM_HIDDEN))
+ if (BM_elem_flag_test(l_iter->v, BM_ELEM_HIDDEN) ||
+ BM_elem_flag_test(l_iter->v, BM_ELEM_TAG) ||
+ (use_select && !BM_elem_flag_test(l_iter->v, BM_ELEM_SELECT)))
+ {
continue;
+ }
if (!BM_elem_flag_test(l_iter->v, BM_ELEM_TAG)) {
const float *co_prev, *co_curr, *co_next; /* orig */