[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