[Bf-blender-cvs] [a5cc113c7b5] sculpt-dev: Sculpt-dev: Code cleanup

Joseph Eagar noreply at git.blender.org
Thu Feb 24 05:59:34 CET 2022


Commit: a5cc113c7b574507c798dd7a57fa3fc1d7c1fbef
Author: Joseph Eagar
Date:   Tue Feb 8 20:09:25 2022 -0800
Branches: sculpt-dev
https://developer.blender.org/rBa5cc113c7b574507c798dd7a57fa3fc1d7c1fbef

Sculpt-dev: Code cleanup

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

M	release/scripts/startup/bl_ui/properties_data_mesh.py
M	source/blender/blenkernel/BKE_brush_engine.h
M	source/blender/blenkernel/BKE_brush_engine.hh
M	source/blender/blenkernel/intern/brush_engine.c
M	source/blender/blenkernel/intern/dyntopo.c
M	source/blender/blenkernel/intern/mesh_validate.c
M	source/blender/blenloader/intern/versioning_300.c
M	source/blender/bmesh/intern/bmesh_core.c
M	source/blender/bmesh/intern/bmesh_mods.c
M	source/blender/bmesh/intern/bmesh_structure.c
M	source/blender/bmesh/operators/bmo_removedoubles.c
M	source/blender/makesdna/DNA_sculpt_brush_types.h
M	source/blender/makesrna/intern/rna_brush_engine.c

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

diff --git a/release/scripts/startup/bl_ui/properties_data_mesh.py b/release/scripts/startup/bl_ui/properties_data_mesh.py
index b19bd65e977..55d395bdace 100644
--- a/release/scripts/startup/bl_ui/properties_data_mesh.py
+++ b/release/scripts/startup/bl_ui/properties_data_mesh.py
@@ -489,7 +489,7 @@ class MESH_UL_color_attributes(UIList):
 
 
 class DATA_PT_vertex_colors(MeshButtonsPanel, Panel):
-    bl_label = "Vertex Colors"
+    bl_label = "Color Attributes"
     bl_options = {'DEFAULT_CLOSED'}
     COMPAT_ENGINES = {'BLENDER_RENDER', 'BLENDER_EEVEE', 'BLENDER_WORKBENCH'}
 
diff --git a/source/blender/blenkernel/BKE_brush_engine.h b/source/blender/blenkernel/BKE_brush_engine.h
index 6e92dad1274..04e5e0dfa31 100644
--- a/source/blender/blenkernel/BKE_brush_engine.h
+++ b/source/blender/blenkernel/BKE_brush_engine.h
@@ -457,8 +457,8 @@ void BKE_brush_channelset_foreach_id(void *userdata,
 
 /******** brush mapping stuff *******/
 void BKE_brush_mapping_copy_data(BrushMapping *dst, BrushMapping *src);
-const char *BKE_brush_mapping_type_to_str(BrushMappingType mapping);
-const char *BKE_brush_mapping_type_to_typename(BrushMappingType mapping);
+const char *BKE_brush_mapping_type_to_str(eBrushMappingType mapping);
+const char *BKE_brush_mapping_type_to_typename(eBrushMappingType mapping);
 
 /********* misc utility functions *********/
 
diff --git a/source/blender/blenkernel/BKE_brush_engine.hh b/source/blender/blenkernel/BKE_brush_engine.hh
index 42883d506ef..84861ebe5c2 100644
--- a/source/blender/blenkernel/BKE_brush_engine.hh
+++ b/source/blender/blenkernel/BKE_brush_engine.hh
@@ -261,9 +261,9 @@ template<typename T> class BrushChannelIF {
           continue;
         }
 
-        float inputf = (reinterpret_cast<float *>(mapping))[i] * mp->premultiply;
+        float inputf = (reinterpret_cast<float *>(mapping))[i] * mp->premultiply_factor;
 
-        switch ((BrushMappingFunc)mp->mapfunc) {
+        switch ((eBrushMappingFunc)mp->mapfunc) {
           case BRUSH_MAPFUNC_NONE:
             break;
           case BRUSH_MAPFUNC_SAW:
@@ -361,8 +361,8 @@ class BrushChannelSetIF {
   void destroy()
   {
     if (_chset) {
-      if (_chset->namemap) {
-        BLI_ghash_free(_chset->namemap, nullptr, nullptr);
+      if (_chset->channelmap) {
+        BLI_ghash_free(_chset->channelmap, nullptr, nullptr);
       }
 
       LISTBASE_FOREACH (BrushChannel *, ch, &_chset->channels) {
@@ -385,7 +385,7 @@ class BrushChannelSetIF {
   template<typename T> BrushChannelIF<T> lookup(const char *idname)
   {
     BrushChannel *ch = static_cast<BrushChannel *>(
-        BLI_ghash_lookup(_chset->namemap, static_cast<const void *>(idname)));
+        BLI_ghash_lookup(_chset->channelmap, static_cast<const void *>(idname)));
     BrushChannelIF<T> chif(ch);
 
     return chif;
diff --git a/source/blender/blenkernel/intern/brush_engine.c b/source/blender/blenkernel/intern/brush_engine.c
index a26572b519d..368534d9700 100644
--- a/source/blender/blenkernel/intern/brush_engine.c
+++ b/source/blender/blenkernel/intern/brush_engine.c
@@ -538,7 +538,7 @@ void BKE_brush_channel_init(BrushChannel *ch, BrushChannelType *def)
 
     mp->blendmode = !mdef->no_default ? MA_RAMP_MULT : mdef->blendmode;
     mp->factor = mdef->factor == 0.0f ? 1.0f : mdef->factor;
-    mp->premultiply = 1.0f;
+    mp->premultiply_factor = 1.0f;
     mp->func_cutoff = mdef->func_cutoff != 0.0f ? mdef->func_cutoff : 0.5f;
 
     if (i == BRUSH_MAPPING_STROKE_T) {
@@ -616,7 +616,7 @@ BrushChannelSet *BKE_brush_channelset_create(const char *info)
   BrushChannelSet *chset = (BrushChannelSet *)MEM_callocN(sizeof(BrushChannelSet),
                                                           info ? tag : "BrushChannelSet");
 
-  chset->namemap = BLI_ghash_str_new("BrushChannelSet ghash");
+  chset->channelmap = BLI_ghash_str_new("BrushChannelSet ghash");
 
   return chset;
 }
@@ -625,7 +625,7 @@ void BKE_brush_channelset_free(BrushChannelSet *chset)
 {
   BrushChannel *ch, *next;
 
-  BLI_ghash_free(chset->namemap, NULL, NULL);
+  BLI_ghash_free(chset->channelmap, NULL, NULL);
 
   for (ch = chset->channels.first; ch; ch = next) {
     next = ch->next;
@@ -692,22 +692,22 @@ void BKE_brush_channelset_add(BrushChannelSet *chset, BrushChannel *ch)
   BKE_brush_channel_ensure_unque_name(chset, ch);
 
   BLI_addtail(&chset->channels, ch);
-  BLI_ghash_insert(chset->namemap, ch->idname, ch);
+  BLI_ghash_insert(chset->channelmap, ch->idname, ch);
 
   chset->totchannel++;
 }
 
 void BKE_brush_channel_rename(BrushChannelSet *chset, BrushChannel *ch, const char *newname)
 {
-  BLI_ghash_remove(chset->namemap, ch->idname, NULL, NULL);
+  BLI_ghash_remove(chset->channelmap, ch->idname, NULL, NULL);
   BLI_strncpy(ch->idname, newname, sizeof(ch->idname));
   BKE_brush_channel_ensure_unque_name(chset, ch);
-  BLI_ghash_insert(chset->namemap, ch->idname, ch);
+  BLI_ghash_insert(chset->channelmap, ch->idname, ch);
 }
 
 void BKE_brush_channelset_remove(BrushChannelSet *chset, BrushChannel *ch)
 {
-  BLI_ghash_remove(chset->namemap, ch->idname, NULL, NULL);
+  BLI_ghash_remove(chset->channelmap, ch->idname, NULL, NULL);
   BLI_remlink(&chset->channels, ch);
 
   chset->totchannel--;
@@ -742,7 +742,7 @@ void BKE_brush_channelset_add_duplicate(BrushChannelSet *chset, BrushChannel *ch
 
 BrushChannel *BKE_brush_channelset_lookup(BrushChannelSet *chset, const char *idname)
 {
-  return BLI_ghash_lookup(chset->namemap, idname);
+  return BLI_ghash_lookup(chset->channelmap, idname);
 }
 
 BrushChannel *BKE_brush_channelset_lookup_final(BrushChannelSet *child,
@@ -1060,9 +1060,9 @@ double BKE_brush_channel_eval_mappings(BrushChannel *ch,
         continue;
       }
 
-      float inputf = ((float *)mapdata)[i] * mp->premultiply;
+      float inputf = ((float *)mapdata)[i] * mp->premultiply_factor;
 
-      switch ((BrushMappingFunc)mp->mapfunc) {
+      switch ((eBrushMappingFunc)mp->mapfunc) {
         case BRUSH_MAPFUNC_NONE:
           break;
         case BRUSH_MAPFUNC_SAW:
@@ -1085,7 +1085,7 @@ double BKE_brush_channel_eval_mappings(BrushChannel *ch,
           break;
         case BRUSH_MAPFUNC_SQUARE:
           inputf -= floorf(inputf);
-          inputf = inputf > mp->func_cutoff ? 1.0f : 0.0f;  //(float)(inputf > 0.5f);
+          inputf = inputf > mp->func_cutoff ? 1.0f : 0.0f;
           break;
         default:
           break;
@@ -1988,7 +1988,7 @@ void BKE_brush_channelset_read(BlendDataReader *reader, BrushChannelSet *chset)
 {
   BLO_read_list(reader, &chset->channels);
 
-  chset->namemap = BLI_ghash_str_new("BrushChannelSet");
+  chset->channelmap = BLI_ghash_str_new("BrushChannelSet");
 
   BrushChannel *ch;
   // regenerate chset->totchannel just to be safe
@@ -1997,7 +1997,7 @@ void BKE_brush_channelset_read(BlendDataReader *reader, BrushChannelSet *chset)
   for (ch = chset->channels.first; ch; ch = ch->next) {
     chset->totchannel++;
 
-    BLI_ghash_insert(chset->namemap, ch->idname, ch);
+    BLI_ghash_insert(chset->channelmap, ch->idname, ch);
 
     BLO_read_data_address(reader, &ch->curve.curve);
     if (ch->curve.curve) {
@@ -2012,8 +2012,8 @@ void BKE_brush_channelset_read(BlendDataReader *reader, BrushChannelSet *chset)
 
       CurveMapping *curve = mp->curve;
 
-      if (mp->premultiply == 0.0f) {
-        mp->premultiply = 1.0f;
+      if (mp->premultiply_factor == 0.0f) {
+        mp->premultiply_factor = 1.0f;
       }
 
       if (mp->func_cutoff == 0.0f) {
@@ -2084,7 +2084,7 @@ void BKE_brush_channelset_write(BlendWriter *writer, BrushChannelSet *chset)
   }
 }
 
-const char *BKE_brush_mapping_type_to_str(BrushMappingType mapping)
+const char *BKE_brush_mapping_type_to_str(eBrushMappingType mapping)
 {
   switch (mapping) {
     case BRUSH_MAPPING_PRESSURE:
@@ -2108,7 +2108,7 @@ const char *BKE_brush_mapping_type_to_str(BrushMappingType mapping)
   return "Error";
 }
 
-const char *BKE_brush_mapping_type_to_typename(BrushMappingType mapping)
+const char *BKE_brush_mapping_type_to_typename(eBrushMappingType mapping)
 {
   switch (mapping) {
     case BRUSH_MAPPING_PRESSURE:
@@ -2153,13 +2153,10 @@ void BKE_brush_mapping_copy_data(BrushMapping *dst, BrushMapping *src)
   dst->max = src->max;
   dst->factor = src->factor;
   dst->flag = src->flag;
-  dst->input_channel = src->input_channel;
   dst->blendmode = src->blendmode;
   dst->func_cutoff = src->func_cutoff;
   dst->mapfunc = src->mapfunc;
-  dst->premultiply = src->premultiply;
-
-  memcpy(dst->name, src->name, sizeof(dst->name));
+  dst->premultiply_factor = src->premultiply_factor;
 }
 
 void BKE_brush_channelset_to_unified_settings(BrushChannelSet *chset, UnifiedPaintSettings *ups)
diff --git a/source/blender/blenkernel/intern/dyntopo.c b/source/blender/blenkernel/intern/dyntopo.c
index ce808fb593e..7aa75d8bcfd 100644
--- a/source/blender/blenkernel/intern/dyntopo.c
+++ b/source/blender/blenkernel/intern/dyntopo.c
@@ -228,7 +228,7 @@ static void fix_mesh(PBVH *pbvh, BMesh *bm)
   // rebuild disk cycles
   BM_ITER_MESH (e, &iter, bm, BM_EDGES_OF_MESH) {
     if (BM_edge_exists(e->v1, e->v2)) {
-      printf("duplicate edge %p!", e);
+      printf("duplicate edge %p!\n", e);
       bm_kill_only_edge(bm, e);
 
       continue;
@@ -333,6 +333,8 @@ CHECKMESH_ATTR static bool check_face_is_manifold(PBVH *pbvh, BMesh *bm, BMFace
           continue;
         }
 
+        int i = 0;
+
         do {
           if (!e) {
             break;
@@ -340,8 +342,14 @@ CHECKMESH_ATTR static bool check_face_is_manifold(PBVH *pbvh, BMesh *bm, BMFace
 
           bool same = e->v1 == v1 && e->v2 == v2;
           same = same || (e->v1 == v2 && e->v2 == v1);
+
           if (same && e != l->e) {
-            printf("duplicate edges!");
+            // printf("duplicate edges in face!\n");
+          }
+
+          if (i++ > 5000) {
+            printf("infinite loop in edge disk cycle! v: %p, e: %p\n", v, e);
+            break;
           }
         } while ((e = BM_DISK_EDGE_NEXT(e, v)) != v->e);
       }
@@ -450,6 +458,35 @@ static bool validate_edge(PBVH *pbvh, BMesh *bm, BMEdge *e, bool autofix, bool c
   return ret;
 }
 
+CHECKMESH_ATTR bool face_verts_are_same(PBVH *pbvh, BMesh *bm, BMFace *f1, BMFace *f2)
+{
+  BMLoop *l1 = f1->l_

@@ Diff output truncated at 10240 characters. @@



More information about the Bf-blender-cvs mailing list