[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [45647] trunk/blender/source/blender/ editors: Fix #30949: live unwrap when marking seams did not work with bmesh .

Brecht Van Lommel brechtvanlommel at pandora.be
Sun Apr 15 11:20:42 CEST 2012


Revision: 45647
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=45647
Author:   blendix
Date:     2012-04-15 09:20:42 +0000 (Sun, 15 Apr 2012)
Log Message:
-----------
Fix #30949: live unwrap when marking seams did not work with bmesh.

Modified Paths:
--------------
    trunk/blender/source/blender/editors/include/ED_uvedit.h
    trunk/blender/source/blender/editors/mesh/editmesh_select.c
    trunk/blender/source/blender/editors/mesh/editmesh_tools.c
    trunk/blender/source/blender/editors/uvedit/uvedit_unwrap_ops.c

Modified: trunk/blender/source/blender/editors/include/ED_uvedit.h
===================================================================
--- trunk/blender/source/blender/editors/include/ED_uvedit.h	2012-04-15 08:48:11 UTC (rev 45646)
+++ trunk/blender/source/blender/editors/include/ED_uvedit.h	2012-04-15 09:20:42 UTC (rev 45647)
@@ -78,6 +78,8 @@
 void ED_uvedit_live_unwrap_re_solve(void);
 void ED_uvedit_live_unwrap_end(short cancel);
 
+void ED_uvedit_live_unwrap(struct Scene *scene, struct Object *obedit);
+
 /* single call up unwrap using scene settings, used for edge tag unwrapping */
 void ED_unwrap_lscm(struct Scene *scene, struct Object *obedit, const short sel);
 

Modified: trunk/blender/source/blender/editors/mesh/editmesh_select.c
===================================================================
--- trunk/blender/source/blender/editors/mesh/editmesh_select.c	2012-04-15 08:48:11 UTC (rev 45646)
+++ trunk/blender/source/blender/editors/mesh/editmesh_select.c	2012-04-15 09:20:42 UTC (rev 45647)
@@ -56,6 +56,7 @@
 
 #include "ED_mesh.h"
 #include "ED_screen.h"
+#include "ED_uvedit.h"
 #include "ED_view3d.h"
 
 #include "BIF_gl.h"
@@ -1399,6 +1400,7 @@
 			
 			case EDGE_MODE_TAG_SEAM:
 				me->drawflag |= ME_DRAWSEAMS;
+				ED_uvedit_live_unwrap(vc.scene, vc.obedit);
 				break;
 			case EDGE_MODE_TAG_SHARP:
 				me->drawflag |= ME_DRAWSHARP;

Modified: trunk/blender/source/blender/editors/mesh/editmesh_tools.c
===================================================================
--- trunk/blender/source/blender/editors/mesh/editmesh_tools.c	2012-04-15 08:48:11 UTC (rev 45646)
+++ trunk/blender/source/blender/editors/mesh/editmesh_tools.c	2012-04-15 09:20:42 UTC (rev 45647)
@@ -58,10 +58,11 @@
 #include "WM_types.h"
 
 #include "ED_mesh.h"
-#include "ED_view3d.h"
+#include "ED_object.h"
 #include "ED_screen.h"
 #include "ED_transform.h"
-#include "ED_object.h"
+#include "ED_uvedit.h"
+#include "ED_view3d.h"
 
 #include "RE_render_ext.h"
 
@@ -1056,6 +1057,7 @@
 
 static int edbm_mark_seam(bContext *C, wmOperator *op)
 {
+	Scene *scene = CTX_data_scene(C);
 	Object *obedit = CTX_data_edit_object(C);
 	Mesh *me = ((Mesh *)obedit->data);
 	BMEditMesh *em = BMEdit_FromObject(obedit);
@@ -1085,6 +1087,7 @@
 		}
 	}
 
+	ED_uvedit_live_unwrap(scene, obedit);
 	EDBM_update_generic(C, em, TRUE);
 
 	return OPERATOR_FINISHED;

Modified: trunk/blender/source/blender/editors/uvedit/uvedit_unwrap_ops.c
===================================================================
--- trunk/blender/source/blender/editors/uvedit/uvedit_unwrap_ops.c	2012-04-15 08:48:11 UTC (rev 45646)
+++ trunk/blender/source/blender/editors/uvedit/uvedit_unwrap_ops.c	2012-04-15 09:20:42 UTC (rev 45647)
@@ -268,7 +268,7 @@
 
 		BLI_addfilledge(firstv, v);
 		
-		/*mode 2 enables faster handling of tri/quads*/
+		/* mode 2 enables faster handling of tri/quads */
 		BLI_edgefill(2);
 		for (sefa = fillfacebase.first; sefa; sefa = sefa->next) {
 			ls[0] = sefa->v1->tmp.p;
@@ -829,6 +829,16 @@
 	}
 }
 
+void ED_uvedit_live_unwrap(Scene *scene, Object *obedit)
+{
+	BMEditMesh *em = BMEdit_FromObject(obedit);
+
+    if (scene->toolsettings->edge_mode_live_unwrap &&
+        CustomData_has_layer(&em->bm->ldata, CD_MLOOPUV)) {
+        ED_unwrap_lscm(scene, obedit, FALSE); /* unwrap all not just sel */
+    }
+}
+
 /*************** UV Map Common Transforms *****************/
 
 #define VIEW_ON_EQUATOR 0




More information about the Bf-blender-cvs mailing list