diff options
author | Johnny Matthews <johnny.matthews@gmail.com> | 2005-10-24 22:17:35 +0400 |
---|---|---|
committer | Johnny Matthews <johnny.matthews@gmail.com> | 2005-10-24 22:17:35 +0400 |
commit | a021181b5b0fbb6a39b10310da9bce1b90512c76 (patch) | |
tree | ef5ed7d24888ba0aa7707161a8cb963222cd7c05 /source | |
parent | df84b87fd0b6f7bea4be6bca0097196d85fd6f49 (diff) |
Fix for Bug #3217
Just needed to mark a few more edges.
Diffstat (limited to 'source')
-rw-r--r-- | source/blender/src/editmesh_tools.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/source/blender/src/editmesh_tools.c b/source/blender/src/editmesh_tools.c index 9ce646aaa48..0a85a06f862 100644 --- a/source/blender/src/editmesh_tools.c +++ b/source/blender/src/editmesh_tools.c @@ -1126,6 +1126,7 @@ void fill_mesh(void) #define EDGENEW 2 #define FACENEW 2 #define EDGEINNER 4 +#define EDGEOLD 8 static void alter_co(float* co,EditEdge *edge,float rad,int beauty,float perc) { @@ -2326,7 +2327,12 @@ void esubdivideflag(int flag, float rad, int beauty, int numcuts, int seltype) // eed->f |= eed->v1->f; // } eed->f2 = 0; + if(eed->f & flag){ + eed->f2 |= EDGEOLD; + } } + + // We store an array of verts for each edge that is subdivided, // we put this array as a value in a ghash which is keyed by the EditEdge* @@ -2497,7 +2503,7 @@ void esubdivideflag(int flag, float rad, int beauty, int numcuts, int seltype) if(seltype == SUBDIV_SELECT_ORIG && G.qual != LR_CTRLKEY){ for(eed = em->edges.first;eed;eed = eed->next){ - if(eed->f2 & EDGENEW){ + if(eed->f2 & EDGENEW || eed->f2 & EDGEOLD){ eed->f |= flag; EM_select_edge(eed,1); |