[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [10909] trunk/blender/source/blender:

Brecht Van Lommel brechtvanlommel at pandora.be
Sun Jun 10 16:06:35 CEST 2007


Revision: 10909
          http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=10909
Author:   blendix
Date:     2007-06-10 16:06:34 +0200 (Sun, 10 Jun 2007)

Log Message:
-----------

Patch #6717:
Select Inverse function in the UV editor, by Juho Vepsalainen.

Modified Paths:
--------------
    trunk/blender/source/blender/include/BIF_editsima.h
    trunk/blender/source/blender/src/editsima.c
    trunk/blender/source/blender/src/header_image.c

Modified: trunk/blender/source/blender/include/BIF_editsima.h
===================================================================
--- trunk/blender/source/blender/include/BIF_editsima.h	2007-06-10 12:30:37 UTC (rev 10908)
+++ trunk/blender/source/blender/include/BIF_editsima.h	2007-06-10 14:06:34 UTC (rev 10909)
@@ -52,6 +52,7 @@
 void borderselect_sima(short whichuvs);
 void mouseco_to_curtile(void);
 void mouse_select_sima(void);
+void select_invert_tface_uv(void);
 void select_swap_tface_uv(void);
 void mirrormenu_tface_uv(void);
 void mirror_tface_uv(char mirroraxis);

Modified: trunk/blender/source/blender/src/editsima.c
===================================================================
--- trunk/blender/source/blender/src/editsima.c	2007-06-10 12:30:37 UTC (rev 10908)
+++ trunk/blender/source/blender/src/editsima.c	2007-06-10 14:06:34 UTC (rev 10909)
@@ -430,6 +430,31 @@
 	else if(mode==2 || mode==3) BIF_undo_push("Align UV");
 }
 
+void select_invert_tface_uv(void)
+{
+	Mesh *me;
+	MTFace *tface;
+	MFace *mface;
+	int a;
+	
+	if( is_uv_tface_editing_allowed()==0 ) return;
+	me= get_mesh(OBACT);
+	mface= me->mface;
+
+	for(a=me->totface, tface= me->mtface; a>0; a--, tface++, mface++) {
+		if(mface->flag & ME_FACE_SEL) {	
+			tface->flag ^= TF_SEL1;
+			tface->flag ^= TF_SEL2;
+			tface->flag ^= TF_SEL3;
+			if(mface->v4) tface->flag ^= TF_SEL4;
+		}
+	}
+
+	BIF_undo_push("Select Inverse UV");
+
+	allqueue(REDRAWIMAGE, 0);
+}
+
 void select_swap_tface_uv(void)
 {
 	Mesh *me;
@@ -1033,10 +1058,14 @@
 	me= get_mesh(OBACT);
 
 	mface= me->mface;
-	for(a=me->totface, tface= me->mtface; a>0; a--, tface++, mface++)
-		if(!(mface->flag & ME_HIDE))
-			if(!(mface->flag & ME_FACE_SEL))
+	for(a=me->totface, tface= me->mtface; a>0; a--, tface++, mface++) {
+		if(!(mface->flag & ME_HIDE)) {
+			if(!(mface->flag & ME_FACE_SEL)) {
+				mface->flag |= ME_FACE_SEL;
 				tface->flag |= (TF_SEL1|TF_SEL2|TF_SEL3|TF_SEL4);
+			}
+		}
+	}
 	
 	BIF_undo_push("Reveal UV");
 

Modified: trunk/blender/source/blender/src/header_image.c
===================================================================
--- trunk/blender/source/blender/src/header_image.c	2007-06-10 12:30:37 UTC (rev 10908)
+++ trunk/blender/source/blender/src/header_image.c	2007-06-10 14:06:34 UTC (rev 10909)
@@ -524,6 +524,9 @@
 	case 1: /* Select/Deselect All */
 		select_swap_tface_uv();
 		break;
+	case 9: /* Select Inverse */
+		select_invert_tface_uv();
+		break;
 	case 2: /* Unlink Selection */
 		unlink_selection();
 		break;
@@ -591,6 +594,8 @@
 
 	uiDefIconTextBut(block, BUTM, 1, ICON_BLANK1, "Select/Deselect All|A", 0, yco-=20, menuwidth, 19, NULL, 0.0, 0.0, 0, 1, "");
 
+	uiDefIconTextBut(block, BUTM, 1, ICON_BLANK1, "Inverse", 0, yco-=20, menuwidth, 19, NULL, 0.0, 0.0, 0, 9, "");
+
 	uiDefIconTextBut(block, BUTM, 1, ICON_BLANK1, "Unlink Selection|Alt L", 0, yco-=20, menuwidth, 19, NULL, 0.0, 0.0, 0, 2, "");
 	
 	uiDefBut(block, SEPR, 0, "", 0, yco-=6, menuwidth, 6, NULL, 0.0, 0.0, 0, 0, "");	





More information about the Bf-blender-cvs mailing list