diff options
author | Ton Roosendaal <ton@blender.org> | 2004-11-12 02:56:56 +0300 |
---|---|---|
committer | Ton Roosendaal <ton@blender.org> | 2004-11-12 02:56:56 +0300 |
commit | 1c632c40c01d4c0ac88828b7353d9040684e16d4 (patch) | |
tree | 50ab68e29d7d79ab689f03b0008b4efa43268d9e | |
parent | 5989da14420597e945386d9fd56310cb2d88ab00 (diff) |
Fix for error found by aphex;
Some extrusions still use proportional mode when thats on. Was due to
adding transfrom('g') for non-normal extrude. Made it new code 'h'
-rw-r--r-- | source/blender/src/editmesh_lib.c | 10 | ||||
-rw-r--r-- | source/blender/src/editobject.c | 7 |
2 files changed, 9 insertions, 8 deletions
diff --git a/source/blender/src/editmesh_lib.c b/source/blender/src/editmesh_lib.c index 1a69820c97b..aacd6796d2a 100644 --- a/source/blender/src/editmesh_lib.c +++ b/source/blender/src/editmesh_lib.c @@ -623,7 +623,7 @@ short extrudeflag_edges_indiv(short flag) if(eed->v1->f & eed->v2->f & flag) eed->f |= flag; } - if(nor[0]==0.0 && nor[1]==0.0 && nor[2]==0.0) return 'g'; + if(nor[0]==0.0 && nor[1]==0.0 && nor[2]==0.0) return 'h'; // h is grab, for correct undo print return 'n'; } @@ -647,7 +647,7 @@ short extrudeflag_verts_indiv(short flag) for(eve= em->verts.last; eve; eve= eve->prev) if(eve->vn) eve->vn->f |= flag; - return 'g'; + return 'h'; // h is grab, for correct undo print } @@ -818,8 +818,8 @@ static short extrudeflag_edge(short flag) } EM_select_flush(); - - if(nor[0]==0.0 && nor[1]==0.0 && nor[2]==0.0) return 'g'; + + if(nor[0]==0.0 && nor[1]==0.0 && nor[2]==0.0) return 'h'; return 'n'; } @@ -1042,7 +1042,7 @@ short extrudeflag_vert(short flag) // since its vertex select mode now, it also deselects higher order EM_selectmode_flush(); - if(nor[0]==0.0 && nor[1]==0.0 && nor[2]==0.0) return 'g'; + if(nor[0]==0.0 && nor[1]==0.0 && nor[2]==0.0) return 'h'; // h is grab, for correct undo print return 'n'; } diff --git a/source/blender/src/editobject.c b/source/blender/src/editobject.c index 0e2c112f311..a507f431428 100644 --- a/source/blender/src/editobject.c +++ b/source/blender/src/editobject.c @@ -3885,7 +3885,7 @@ void make_trans_verts(float *min, float *max, int mode) EditVert *eve; int a; EditBone *ebo; - + tottrans= 0; // global! INIT_MINMAX(min, max); @@ -4945,6 +4945,7 @@ static char *transform_mode_to_string(int mode) case 'w': return("Warp"); break; case 'd': return("Duplicate"); break; case 'n': return("Extrude"); break; + case 'h': return("Extrude"); break; default: return("Transform"); } } @@ -5014,8 +5015,8 @@ void transform(int mode) if(mode=='r') mode= 'R'; if(mode=='s') mode= 'C'; } - /* from duplicate routines */ - if(mode=='d') mode= 'g'; + /* from duplicate or extrude routines */ + if(mode=='d' || mode=='h') mode= 'g'; /* this can cause floating exception at dec alpha */ d_dvec[0]= d_dvec[1]= d_dvec[2]= 0.0; |