[Bf-blender-cvs] [ebc385de5f6] master: Cleanup: Remove unused DerivedMesh functions

Hans Goudey noreply at git.blender.org
Mon Sep 12 04:42:45 CEST 2022


Commit: ebc385de5f6bc142f7beedd86c139a597736acdd
Author: Hans Goudey
Date:   Sun Sep 11 21:42:30 2022 -0500
Branches: master
https://developer.blender.org/rBebc385de5f6bc142f7beedd86c139a597736acdd

Cleanup: Remove unused DerivedMesh functions

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

M	source/blender/blenkernel/BKE_DerivedMesh.h
M	source/blender/blenkernel/BKE_cdderivedmesh.h
M	source/blender/blenkernel/intern/DerivedMesh.cc
M	source/blender/blenkernel/intern/cdderivedmesh.c

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

diff --git a/source/blender/blenkernel/BKE_DerivedMesh.h b/source/blender/blenkernel/BKE_DerivedMesh.h
index 4274ca97fd1..da1e45ababd 100644
--- a/source/blender/blenkernel/BKE_DerivedMesh.h
+++ b/source/blender/blenkernel/BKE_DerivedMesh.h
@@ -141,14 +141,6 @@ struct DerivedMesh {
   void (*copyLoopArray)(DerivedMesh *dm, struct MLoop *r_loop);
   void (*copyPolyArray)(DerivedMesh *dm, struct MPoly *r_poly);
 
-  /** Return a copy of all verts/edges/faces from the derived mesh
-   * it is the caller's responsibility to free the returned pointer
-   */
-  struct MVert *(*dupVertArray)(DerivedMesh *dm);
-  struct MEdge *(*dupEdgeArray)(DerivedMesh *dm);
-  struct MLoop *(*dupLoopArray)(DerivedMesh *dm);
-  struct MPoly *(*dupPolyArray)(DerivedMesh *dm);
-
   /** Return a pointer to the entire array of vert/edge/face custom data
    * from the derived mesh (this gives a pointer to the actual data, not
    * a copy)
@@ -253,11 +245,6 @@ void DM_copy_vert_data(struct DerivedMesh *source,
                        int dest_index,
                        int count);
 
-/**
- * Sets up mpolys for a DM based on face iterators in source.
- */
-void DM_DupPolys(DerivedMesh *source, DerivedMesh *target);
-
 /**
  * Ensure the array is large enough.
  *
diff --git a/source/blender/blenkernel/BKE_cdderivedmesh.h b/source/blender/blenkernel/BKE_cdderivedmesh.h
index 3c929857c14..2d1aca7c3c8 100644
--- a/source/blender/blenkernel/BKE_cdderivedmesh.h
+++ b/source/blender/blenkernel/BKE_cdderivedmesh.h
@@ -25,10 +25,6 @@ struct Mesh;
  * data to not overwrite the original. */
 struct DerivedMesh *CDDM_from_mesh(struct Mesh *mesh);
 
-/* Copies the given DerivedMesh with verts, faces & edges stored as
- * custom element data. */
-struct DerivedMesh *CDDM_copy(struct DerivedMesh *source);
-
 #ifdef __cplusplus
 }
 #endif
diff --git a/source/blender/blenkernel/intern/DerivedMesh.cc b/source/blender/blenkernel/intern/DerivedMesh.cc
index 0036ed1cf61..986e10b3a16 100644
--- a/source/blender/blenkernel/intern/DerivedMesh.cc
+++ b/source/blender/blenkernel/intern/DerivedMesh.cc
@@ -147,54 +147,6 @@ static MPoly *dm_getPolyArray(DerivedMesh *dm)
   return mpoly;
 }
 
-static MVert *dm_dupVertArray(DerivedMesh *dm)
-{
-  MVert *tmp = (MVert *)MEM_malloc_arrayN(
-      dm->getNumVerts(dm), sizeof(*tmp), "dm_dupVertArray tmp");
-
-  if (tmp) {
-    dm->copyVertArray(dm, tmp);
-  }
-
-  return tmp;
-}
-
-static MEdge *dm_dupEdgeArray(DerivedMesh *dm)
-{
-  MEdge *tmp = (MEdge *)MEM_malloc_arrayN(
-      dm->getNumEdges(dm), sizeof(*tmp), "dm_dupEdgeArray tmp");
-
-  if (tmp) {
-    dm->copyEdgeArray(dm, tmp);
-  }
-
-  return tmp;
-}
-
-static MLoop *dm_dupLoopArray(DerivedMesh *dm)
-{
-  MLoop *tmp = (MLoop *)MEM_malloc_arrayN(
-      dm->getNumLoops(dm), sizeof(*tmp), "dm_dupLoopArray tmp");
-
-  if (tmp) {
-    dm->copyLoopArray(dm, tmp);
-  }
-
-  return tmp;
-}
-
-static MPoly *dm_dupPolyArray(DerivedMesh *dm)
-{
-  MPoly *tmp = (MPoly *)MEM_malloc_arrayN(
-      dm->getNumPolys(dm), sizeof(*tmp), "dm_dupPolyArray tmp");
-
-  if (tmp) {
-    dm->copyPolyArray(dm, tmp);
-  }
-
-  return tmp;
-}
-
 static int dm_getNumLoopTri(DerivedMesh *dm)
 {
   const int numlooptris = poly_to_tri_count(dm->getNumPolys(dm), dm->getNumLoops(dm));
@@ -233,10 +185,6 @@ void DM_init_funcs(DerivedMesh *dm)
   dm->getEdgeArray = dm_getEdgeArray;
   dm->getLoopArray = dm_getLoopArray;
   dm->getPolyArray = dm_getPolyArray;
-  dm->dupVertArray = dm_dupVertArray;
-  dm->dupEdgeArray = dm_dupEdgeArray;
-  dm->dupLoopArray = dm_dupLoopArray;
-  dm->dupPolyArray = dm_dupPolyArray;
 
   dm->getLoopTriArray = dm_getLoopTriArray;
 
@@ -331,36 +279,6 @@ bool DM_release(DerivedMesh *dm)
   return false;
 }
 
-void DM_DupPolys(DerivedMesh *source, DerivedMesh *target)
-{
-  CustomData_free(&target->loopData, source->numLoopData);
-  CustomData_free(&target->polyData, source->numPolyData);
-
-  CustomData_copy(&source->loopData,
-                  &target->loopData,
-                  CD_MASK_DERIVEDMESH.lmask,
-                  CD_DUPLICATE,
-                  source->numLoopData);
-  CustomData_copy(&source->polyData,
-                  &target->polyData,
-                  CD_MASK_DERIVEDMESH.pmask,
-                  CD_DUPLICATE,
-                  source->numPolyData);
-
-  target->numLoopData = source->numLoopData;
-  target->numPolyData = source->numPolyData;
-
-  if (!CustomData_has_layer(&target->polyData, CD_MPOLY)) {
-    MPoly *mpoly;
-    MLoop *mloop;
-
-    mloop = source->dupLoopArray(source);
-    mpoly = source->dupPolyArray(source);
-    CustomData_add_layer(&target->loopData, CD_MLOOP, CD_ASSIGN, mloop, source->numLoopData);
-    CustomData_add_layer(&target->polyData, CD_MPOLY, CD_ASSIGN, mpoly, source->numPolyData);
-  }
-}
-
 void DM_ensure_looptri_data(DerivedMesh *dm)
 {
   const unsigned int totpoly = dm->numPolyData;
diff --git a/source/blender/blenkernel/intern/cdderivedmesh.c b/source/blender/blenkernel/intern/cdderivedmesh.c
index 93286751f92..0261b2d7674 100644
--- a/source/blender/blenkernel/intern/cdderivedmesh.c
+++ b/source/blender/blenkernel/intern/cdderivedmesh.c
@@ -244,43 +244,3 @@ DerivedMesh *CDDM_from_mesh(Mesh *mesh)
 {
   return cdDM_from_mesh_ex(mesh, CD_REFERENCE, &CD_MASK_MESH);
 }
-
-DerivedMesh *CDDM_copy(DerivedMesh *source)
-{
-  CDDerivedMesh *cddm = cdDM_create("CDDM_copy cddm");
-  DerivedMesh *dm = &cddm->dm;
-  int numVerts = source->numVertData;
-  int numEdges = source->numEdgeData;
-  int numTessFaces = 0;
-  int numLoops = source->numLoopData;
-  int numPolys = source->numPolyData;
-
-  /* NOTE: Don't copy tessellation faces if not requested explicitly. */
-
-  /* ensure these are created if they are made on demand */
-  source->getVertDataArray(source, CD_ORIGINDEX);
-  source->getEdgeDataArray(source, CD_ORIGINDEX);
-  source->getPolyDataArray(source, CD_ORIGINDEX);
-
-  /* this initializes dm, and copies all non mvert/medge/mface layers */
-  DM_from_template(dm, source, DM_TYPE_CDDM, numVerts, numEdges, numTessFaces, numLoops, numPolys);
-  dm->deformedOnly = source->deformedOnly;
-  dm->cd_flag = source->cd_flag;
-
-  CustomData_copy_data(&source->vertData, &dm->vertData, 0, 0, numVerts);
-  CustomData_copy_data(&source->edgeData, &dm->edgeData, 0, 0, numEdges);
-
-  /* now add mvert/medge/mface layers */
-  cddm->mvert = source->dupVertArray(source);
-  cddm->medge = source->dupEdgeArray(source);
-
-  CustomData_add_layer(&dm->vertData, CD_MVERT, CD_ASSIGN, cddm->mvert, numVerts);
-  CustomData_add_layer(&dm->edgeData, CD_MEDGE, CD_ASSIGN, cddm->medge, numEdges);
-
-  DM_DupPolys(source, dm);
-
-  cddm->mloop = CustomData_get_layer(&dm->loopData, CD_MLOOP);
-  cddm->mpoly = CustomData_get_layer(&dm->polyData, CD_MPOLY);
-
-  return dm;
-}



More information about the Bf-blender-cvs mailing list