From 1ca02a8d29b2500b324794b5193be92d6cfe6c4d Mon Sep 17 00:00:00 2001 From: Sergey Sharybin Date: Thu, 22 Sep 2011 15:46:34 +0000 Subject: Fix rest of #28693: Proportional edit hangs on mesh object with high scale Patchy by Juha Maki-Kanto --- source/blender/editors/transform/transform_conversions.c | 6 +++--- 1 file 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; } -- cgit v1.2.3