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:
authorTon Roosendaal <ton@blender.org>2005-06-11 16:56:39 +0400
committerTon Roosendaal <ton@blender.org>2005-06-11 16:56:39 +0400
commit3d9833982b200c76232392ff63812b1fe2b5572e (patch)
treed2445aa3870f39ffac4d2be42040a9e8e5c93875 /source/blender/src
parent6cec51b259a25a54b2aa553633994fe79541eaca (diff)
Bug fix #2726
Adjustment in wire frame optimizer, it only removes edges with 'valence' 2, meaning 2 faces sharing edge. Bug was that it removed edges having 3 faces.
Diffstat (limited to 'source/blender/src')
-rw-r--r--source/blender/src/editmesh.c17
1 files changed, 11 insertions, 6 deletions
diff --git a/source/blender/src/editmesh.c b/source/blender/src/editmesh.c
index c00c7a952c6..39e6973a8d0 100644
--- a/source/blender/src/editmesh.c
+++ b/source/blender/src/editmesh.c
@@ -568,10 +568,10 @@ static void edge_drawflags(void)
e2= efa->e2;
e3= efa->e3;
e4= efa->e4;
- if(e1->f2<3) e1->f2+= 1;
- if(e2->f2<3) e2->f2+= 1;
- if(e3->f2<3) e3->f2+= 1;
- if(e4 && e4->f2<3) e4->f2+= 1;
+ if(e1->f2<4) e1->f2+= 1;
+ if(e2->f2<4) e2->f2+= 1;
+ if(e3->f2<4) e3->f2+= 1;
+ if(e4 && e4->f2<4) e4->f2+= 1;
if(e1->vn==0) e1->vn= (EditVert *)efa;
if(e2->vn==0) e2->vn= (EditVert *)efa;
@@ -606,10 +606,15 @@ static void edge_drawflags(void)
efa= em->faces.first;
while(efa) {
if(efa->e1->f2==2) edge_normal_compare(efa->e1, efa);
+ else efa->e1->f2= 1;
if(efa->e2->f2==2) edge_normal_compare(efa->e2, efa);
+ else efa->e2->f2= 1;
if(efa->e3->f2==2) edge_normal_compare(efa->e3, efa);
- if(efa->e4 && efa->e4->f2==2) edge_normal_compare(efa->e4, efa);
-
+ else efa->e3->f2= 1;
+ if(efa->e4) {
+ if(efa->e4->f2==2) edge_normal_compare(efa->e4, efa);
+ else efa->e4->f2= 1;
+ }
efa= efa->next;
}