[Bf-blender-cvs] [e61ddf3c038] temp-pbvh-seam-texturing-tweaks: Cleanup: Standardize variable names, use spans

Hans Goudey noreply at git.blender.org
Wed Sep 28 05:04:27 CEST 2022


Commit: e61ddf3c038f1a8dd43dfbb565913c0a66d0853a
Author: Hans Goudey
Date:   Tue Sep 27 15:56:15 2022 -0500
Branches: temp-pbvh-seam-texturing-tweaks
https://developer.blender.org/rBe61ddf3c038f1a8dd43dfbb565913c0a66d0853a

Cleanup: Standardize variable names, use spans

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

M	source/blender/blenkernel/intern/pbvh_pixels.cc
M	source/blender/blenkernel/intern/pbvh_uv_islands.cc
M	source/blender/blenkernel/intern/pbvh_uv_islands.hh

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

diff --git a/source/blender/blenkernel/intern/pbvh_pixels.cc b/source/blender/blenkernel/intern/pbvh_pixels.cc
index 2f65f6b02ab..5cb1b9374c0 100644
--- a/source/blender/blenkernel/intern/pbvh_pixels.cc
+++ b/source/blender/blenkernel/intern/pbvh_pixels.cc
@@ -361,8 +361,10 @@ static void update_pixels(PBVH *pbvh, Mesh *mesh, Image *image, ImageUser *image
     return;
   }
 
-  uv_islands::MeshData mesh_data(
-      pbvh->looptri, pbvh->totprim, pbvh->totvert, pbvh->mloop, ldata_uv);
+  uv_islands::MeshData mesh_data({pbvh->looptri, pbvh->totprim},
+                                 {pbvh->mloop, pbvh->totprim},
+                                 pbvh->totvert,
+                                 {ldata_uv, pbvh->totprim});
   uv_islands::UVIslands islands(mesh_data);
 
   uv_islands::UVIslandsMask uv_masks;
@@ -385,7 +387,7 @@ static void update_pixels(PBVH *pbvh, Mesh *mesh, Image *image, ImageUser *image
   islands.extend_borders(uv_masks);
   update_geom_primitives(*pbvh, mesh_data);
 
-  UVPrimitiveLookup uv_primitive_lookup(mesh_data.looptri_len, islands);
+  UVPrimitiveLookup uv_primitive_lookup(mesh_data.looptris.size(), islands);
 
   EncodePixelsUserData user_data;
   user_data.pbvh = pbvh;
diff --git a/source/blender/blenkernel/intern/pbvh_uv_islands.cc b/source/blender/blenkernel/intern/pbvh_uv_islands.cc
index 4c9b52ac958..3303a3623fb 100644
--- a/source/blender/blenkernel/intern/pbvh_uv_islands.cc
+++ b/source/blender/blenkernel/intern/pbvh_uv_islands.cc
@@ -95,8 +95,8 @@ rctf MeshPrimitive::uv_bounds() const
 
 static void mesh_data_init_vertices(MeshData &mesh_data)
 {
-  mesh_data.vertices.reserve(mesh_data.vert_len);
-  for (int64_t i = 0; i < mesh_data.vert_len; i++) {
+  mesh_data.vertices.reserve(mesh_data.verts_num);
+  for (int64_t i = 0; i < mesh_data.verts_num; i++) {
     MeshVertex vert;
     vert.v = i;
     mesh_data.vertices.append(vert);
@@ -105,9 +105,9 @@ static void mesh_data_init_vertices(MeshData &mesh_data)
 
 static void mesh_data_init_primitives(MeshData &mesh_data)
 {
-  mesh_data.primitives.reserve(mesh_data.looptri_len);
-  for (int64_t i = 0; i < mesh_data.looptri_len; i++) {
-    const MLoopTri &tri = mesh_data.looptri[i];
+  mesh_data.primitives.reserve(mesh_data.looptris.size());
+  for (int64_t i = 0; i < mesh_data.looptris.size(); i++) {
+    const MLoopTri &tri = mesh_data.looptris[i];
     MeshPrimitive primitive;
     primitive.index = i;
     primitive.poly = tri.poly;
@@ -115,7 +115,7 @@ static void mesh_data_init_primitives(MeshData &mesh_data)
     for (int j = 0; j < 3; j++) {
       MeshUVVert uv_vert;
       uv_vert.loop = tri.tri[j];
-      uv_vert.vertex = &mesh_data.vertices[mesh_data.mloop[uv_vert.loop].v];
+      uv_vert.vertex = &mesh_data.vertices[mesh_data.loops[uv_vert.loop].v];
       uv_vert.uv = mesh_data.mloopuv[uv_vert.loop].uv;
       primitive.vertices.append(uv_vert);
     }
@@ -125,14 +125,14 @@ static void mesh_data_init_primitives(MeshData &mesh_data)
 
 void mesh_data_init_edges(MeshData &mesh_data)
 {
-  mesh_data.edges.reserve(mesh_data.looptri_len * 2);
-  EdgeHash *eh = BLI_edgehash_new_ex(__func__, mesh_data.looptri_len * 3);
-  for (int64_t i = 0; i < mesh_data.looptri_len; i++) {
-    const MLoopTri &tri = mesh_data.looptri[i];
+  mesh_data.edges.reserve(mesh_data.looptris.size() * 2);
+  EdgeHash *eh = BLI_edgehash_new_ex(__func__, mesh_data.looptris.size() * 3);
+  for (int64_t i = 0; i < mesh_data.looptris.size(); i++) {
+    const MLoopTri &tri = mesh_data.looptris[i];
     MeshPrimitive &primitive = mesh_data.primitives[i];
     for (int j = 0; j < 3; j++) {
-      int v1 = mesh_data.mloop[tri.tri[j]].v;
-      int v2 = mesh_data.mloop[tri.tri[(j + 1) % 3]].v;
+      int v1 = mesh_data.loops[tri.tri[j]].v;
+      int v2 = mesh_data.loops[tri.tri[(j + 1) % 3]].v;
 
       void **edge_index_ptr;
       int64_t edge_index;
@@ -215,16 +215,11 @@ static void mesh_data_init(MeshData &mesh_data)
   mesh_data_init_primitive_uv_island_ids(mesh_data);
 }
 
-MeshData::MeshData(const MLoopTri *looptri,
-                   const int64_t looptri_len,
-                   const int64_t vert_len,
-                   const MLoop *mloop,
-                   const MLoopUV *mloopuv)
-    : looptri(looptri),
-      looptri_len(looptri_len),
-      vert_len(vert_len),
-      mloop(mloop),
-      mloopuv(mloopuv)
+MeshData::MeshData(const Span<MLoopTri> looptris,
+                   const Span<MLoop> loops,
+                   const int verts_num,
+                   const Span<MLoopUV> mloopuv)
+    : looptris(looptris), verts_num(verts_num), loops(loops), mloopuv(mloopuv)
 {
   mesh_data_init(*this);
 }
diff --git a/source/blender/blenkernel/intern/pbvh_uv_islands.hh b/source/blender/blenkernel/intern/pbvh_uv_islands.hh
index 26a2e9785c9..65f640d1c02 100644
--- a/source/blender/blenkernel/intern/pbvh_uv_islands.hh
+++ b/source/blender/blenkernel/intern/pbvh_uv_islands.hh
@@ -92,11 +92,10 @@ struct MeshPrimitive {
  */
 struct MeshData {
  public:
-  const MLoopTri *looptri;
-  const int64_t looptri_len;
-  const int64_t vert_len;
-  const MLoop *mloop;
-  const MLoopUV *mloopuv;
+  const Span<MLoopTri> looptris;
+  const int64_t verts_num;
+  const Span<MLoop> loops;
+  const Span<MLoopUV> mloopuv;
 
   Vector<MeshPrimitive> primitives;
   Vector<MeshEdge> edges;
@@ -105,11 +104,10 @@ struct MeshData {
   int64_t uv_island_len;
 
  public:
-  explicit MeshData(const MLoopTri *looptri,
-                    const int64_t looptri_len,
-                    const int64_t vert_len,
-                    const MLoop *mloop,
-                    const MLoopUV *mloopuv);
+  explicit MeshData(const Span<MLoopTri> looptris,
+                    const Span<MLoop> loops,
+                    const int verts_num,
+                    const Span<MLoopUV> mloopuv);
 };
 
 struct UVVertex {



More information about the Bf-blender-cvs mailing list