[Bf-blender-cvs] [836c07f29c7] master: UV: grab tool supports live unwrap

Chris Blackbourn noreply at git.blender.org
Wed Aug 17 04:48:45 CEST 2022


Commit: 836c07f29c76cd2c2743f72865b22e6fd2e01b03
Author: Chris Blackbourn
Date:   Wed Aug 17 14:46:57 2022 +1200
Branches: master
https://developer.blender.org/rB836c07f29c76cd2c2743f72865b22e6fd2e01b03

UV: grab tool supports live unwrap

Differential Revision: https://developer.blender.org/D15709

===================================================================

M	source/blender/editors/include/ED_mesh.h
M	source/blender/editors/sculpt_paint/sculpt_uv.c

===================================================================

diff --git a/source/blender/editors/include/ED_mesh.h b/source/blender/editors/include/ED_mesh.h
index a0eaf4232c0..740a736b784 100644
--- a/source/blender/editors/include/ED_mesh.h
+++ b/source/blender/editors/include/ED_mesh.h
@@ -133,7 +133,6 @@ void EDBM_update(struct Mesh *me, const struct EDBMUpdate_Params *params);
 void EDBM_update_extern(struct Mesh *me, bool do_tessellation, bool is_destructive);
 
 /**
- *
  * A specialized vert map used by stitch operator.
  */
 struct UvElementMap *BM_uv_element_map_create(struct BMesh *bm,
diff --git a/source/blender/editors/sculpt_paint/sculpt_uv.c b/source/blender/editors/sculpt_paint/sculpt_uv.c
index 936fde8ac59..8135da1eb9c 100644
--- a/source/blender/editors/sculpt_paint/sculpt_uv.c
+++ b/source/blender/editors/sculpt_paint/sculpt_uv.c
@@ -31,6 +31,7 @@
 #include "ED_image.h"
 #include "ED_mesh.h"
 #include "ED_screen.h"
+#include "ED_uvedit.h"
 
 #include "WM_api.h"
 #include "WM_types.h"
@@ -579,11 +580,19 @@ static void uv_sculpt_stroke_apply(bContext *C,
         copy_v2_v2(luv->uv, sculptdata->uv[uvindex].uv);
       }
     }
+    SpaceImage *sima = CTX_wm_space_image(C);
+    if (sima->flag & SI_LIVE_UNWRAP) {
+      ED_uvedit_live_unwrap_re_solve();
+    }
   }
 }
 
 static void uv_sculpt_stroke_exit(bContext *C, wmOperator *op)
 {
+  SpaceImage *sima = CTX_wm_space_image(C);
+  if (sima->flag & SI_LIVE_UNWRAP) {
+    ED_uvedit_live_unwrap_end(false);
+  }
   UvSculptData *data = op->customdata;
   if (data->timer) {
     WM_event_remove_timer(CTX_wm_manager(C), CTX_wm_window(C), data->timer);
@@ -895,6 +904,9 @@ static UvSculptData *uv_sculpt_stroke_init(bContext *C, wmOperator *op, const wm
       }
 
       data->initial_stroke->totalInitialSelected = counter;
+      if (sima->flag & SI_LIVE_UNWRAP) {
+        ED_uvedit_live_unwrap_begin(scene, obedit);
+      }
     }
   }



More information about the Bf-blender-cvs mailing list