forked from bartvdbraak/blender
In CTRL-E menu "Edgeloop Delete" with a valid "inner" edgeloop selected, this function calls other tools to delete that edgeloop by doing the following
Edgeslide to one side 100% CTRL + to select "more" Remove Doubles Leaves you with new faceloop selected.
This commit is contained in:
parent
f333f124ca
commit
bfcc67267b
@ -173,6 +173,7 @@ extern void fill_mesh(void);
|
||||
extern void bevel_menu();
|
||||
void edge_rotate_selected(int dir);
|
||||
int EdgeSlide(short immediate, float imperc);
|
||||
void EdgeLoopDelete(void);
|
||||
|
||||
#endif
|
||||
|
||||
|
@ -1783,7 +1783,7 @@ void editmesh_mark_seam(int clear)
|
||||
void Edge_Menu() {
|
||||
short ret;
|
||||
|
||||
ret= pupmenu("Edge Specials%t|Mark Seam %x1|Clear Seam %x2|Rotate Edge CW%x3|Rotate Edge CCW%x4|Loopcut%x6|Edge Slide%x5");
|
||||
ret= pupmenu("Edge Specials%t|Mark Seam %x1|Clear Seam %x2|Rotate Edge CW%x3|Rotate Edge CCW%x4|Loopcut%x6|Edge Slide%x5|EdgeLoop Delete%x7");
|
||||
|
||||
switch(ret)
|
||||
{
|
||||
@ -1807,6 +1807,10 @@ void Edge_Menu() {
|
||||
CutEdgeloop(1);
|
||||
BIF_undo_push("Loopcut New");
|
||||
break;
|
||||
case 7:
|
||||
EdgeLoopDelete();
|
||||
BIF_undo_push("Edgeloop Remove");
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -4264,6 +4264,14 @@ static float Dist2s(short* d1,short* d2){
|
||||
return sqrt(pow(d1[0]-d2[0],2)+pow(d1[1]-d2[1],2));
|
||||
}
|
||||
|
||||
void EdgeLoopDelete(){
|
||||
EdgeSlide(1, 1);
|
||||
select_more();
|
||||
removedoublesflag(1,0.001);
|
||||
EM_select_flush();
|
||||
DAG_object_flush_update(G.scene, G.obedit, OB_RECALC_DATA);
|
||||
}
|
||||
|
||||
int EdgeSlide(short immediate, float imperc)
|
||||
{
|
||||
EditMesh *em = G.editMesh;
|
||||
|
Loading…
Reference in New Issue
Block a user