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:
authorSergey Sharybin <sergey.vfx@gmail.com>2011-09-22 19:46:34 +0400
committerSergey Sharybin <sergey.vfx@gmail.com>2011-09-22 19:46:34 +0400
commit1ca02a8d29b2500b324794b5193be92d6cfe6c4d (patch)
treef11a977798148bec3dcc8735af741a88a07a64dd
parent402f583abdc0e306da0c7dd86352f5c6823691f8 (diff)
Fix rest of #28693: Proportional edit hangs on mesh object with high scale
Patchy by Juha Maki-Kanto
-rw-r--r--source/blender/editors/transform/transform_conversions.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/source/blender/editors/transform/transform_conversions.c b/source/blender/editors/transform/transform_conversions.c
index 77d2e6e7ff0..83f79eae4f2 100644
--- a/source/blender/editors/transform/transform_conversions.c
+++ b/source/blender/editors/transform/transform_conversions.c
@@ -1807,7 +1807,7 @@ void flushTransParticles(TransInfo *t)
/* ********************* mesh ****************** */
/* proportional distance based on connectivity */
-#define THRESHOLD 0.0001f
+#define THRESHOLDFACTOR (1.0f-0.0001f)
static int connectivity_edge(float mtx[][3], EditVert *v1, EditVert *v2)
{
@@ -1828,10 +1828,10 @@ static int connectivity_edge(float mtx[][3], EditVert *v1, EditVert *v2)
if (v1->f2) {
if (v2->f2) {
- if (v2->tmp.fp + edge_len + THRESHOLD < v1->tmp.fp) {
+ if (v2->tmp.fp + edge_len < THRESHOLDFACTOR * v1->tmp.fp) {
v1->tmp.fp = v2->tmp.fp + edge_len;
done = 1;
- } else if (v1->tmp.fp + edge_len + THRESHOLD < v2->tmp.fp) {
+ } else if (v1->tmp.fp + edge_len < THRESHOLDFACTOR * v2->tmp.fp) {
v2->tmp.fp = v1->tmp.fp + edge_len;
done = 1;
}