[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [54266] trunk/blender/source/blender: improve BMesh api use from r54265, no need to do edge lookups from the faces verts since the face stores these already .

Campbell Barton ideasman42 at gmail.com
Sun Feb 3 03:54:27 CET 2013


Revision: 54266
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=54266
Author:   campbellbarton
Date:     2013-02-03 02:54:24 +0000 (Sun, 03 Feb 2013)
Log Message:
-----------
improve BMesh api use from r54265, no need to do edge lookups from the faces verts since the face stores these already.

also remove ScrArea.cursor, historic runtime variable.

Revision Links:
--------------
    http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=54265

Modified Paths:
--------------
    trunk/blender/source/blender/bmesh/intern/bmesh_log.c
    trunk/blender/source/blender/makesdna/DNA_screen_types.h

Modified: trunk/blender/source/blender/bmesh/intern/bmesh_log.c
===================================================================
--- trunk/blender/source/blender/bmesh/intern/bmesh_log.c	2013-02-02 16:54:18 UTC (rev 54265)
+++ trunk/blender/source/blender/bmesh/intern/bmesh_log.c	2013-02-03 02:54:24 UTC (rev 54266)
@@ -252,24 +252,21 @@
 		void *key = BLI_ghashIterator_getKey(&gh_iter);
 		unsigned int id = GET_INT_FROM_POINTER(key);
 		BMFace *f = bm_log_face_from_id(log, id);
-		BMVert *v_tri[3];
 		BMEdge *e_tri[3];
+		BMLoop *l_iter;
 		int i;
 
-		/* Remove any unused edges */
-		BM_face_as_array_vert_tri(f, v_tri);
-		for (i = 0; i < 3; i++) {
-			BMVert *v1 = v_tri[i];
-			BMVert *v2 = v_tri[i == 2 ? 0 : i + 1];
-			e_tri[i] = BM_edge_exists(v1, v2);
+		l_iter = BM_FACE_FIRST_LOOP(f);
+		for (i = 0; i < 3; i++, l_iter = l_iter->next) {
+			e_tri[i] = l_iter->e;
 		}
 
+		/* Remove any unused edges */
 		BM_face_kill(bm, f);
-
 		for (i = 0; i < 3; i++) {
-			BMEdge *e = e_tri[i];
-			if (BM_edge_face_count(e) == 0)
-				BM_edge_kill(bm, e);
+			if (BM_edge_is_wire(e_tri[i])) {
+				BM_edge_kill(bm, e_tri[i]);
+			}
 		}
 	}
 }

Modified: trunk/blender/source/blender/makesdna/DNA_screen_types.h
===================================================================
--- trunk/blender/source/blender/makesdna/DNA_screen_types.h	2013-02-02 16:54:18 UTC (rev 54265)
+++ trunk/blender/source/blender/makesdna/DNA_screen_types.h	2013-02-03 02:54:24 UTC (rev 54266)
@@ -143,9 +143,10 @@
 	
 	short headertype;				/* OLD! 0=no header, 1= down, 2= up */
 	short do_refresh;				/* private, for spacetype refresh callback */
-	short cursor, flag;
+	short flag;
 	short region_active_win;		/* index of last used region of 'RGN_TYPE_WINDOW'
 									 * runtuime variable, updated by executing operators */
+	short pad;
 	
 	struct SpaceType *type;		/* callbacks for this space type */
 	




More information about the Bf-blender-cvs mailing list