diff options
author | Germano Cavalcante <germano.costa@ig.com.br> | 2022-04-06 01:49:30 +0300 |
---|---|---|
committer | Germano Cavalcante <germano.costa@ig.com.br> | 2022-04-06 01:56:03 +0300 |
commit | 9fbf7f1180501fc868a38dccecfbc71f6747b4e9 (patch) | |
tree | aea6a0ecd2c920751ce8ee0a429de0210650b6b3 | |
parent | 684b95804e8fe8a78488b96b02285b2854809ff9 (diff) |
BVH Utils: Remove '_allocated' members from 'BVHTreeFromMesh'
The parameters indicating whether it is allocated are always `false` and
it is up to the caller to free them.
Also clang-format was triggered.
-rw-r--r-- | source/blender/blenkernel/BKE_bvhutils.h | 15 | ||||
-rw-r--r-- | source/blender/blenkernel/intern/bvhutils.cc | 40 | ||||
-rw-r--r-- | source/blender/blenkernel/intern/mesh_remap.c | 4 | ||||
-rw-r--r-- | source/blender/editors/transform/transform_snap_object.cc | 30 |
4 files changed, 11 insertions, 78 deletions
diff --git a/source/blender/blenkernel/BKE_bvhutils.h b/source/blender/blenkernel/BKE_bvhutils.h index ec017dec2e4..c957465a654 100644 --- a/source/blender/blenkernel/BKE_bvhutils.h +++ b/source/blender/blenkernel/BKE_bvhutils.h @@ -56,15 +56,10 @@ typedef struct BVHTreeFromMesh { /* Vertex array, so that callbacks have instant access to data. */ const struct MVert *vert; const float (*vert_normals)[3]; - const struct MEdge *edge; /* only used for #BVHTreeFromMeshEdges */ + const struct MEdge *edge; const struct MFace *face; const struct MLoop *loop; const struct MLoopTri *looptri; - bool vert_allocated; - bool edge_allocated; - bool face_allocated; - bool loop_allocated; - bool looptri_allocated; /* Private data */ bool cached; @@ -125,7 +120,6 @@ BVHTree *bvhtree_from_editmesh_verts_ex(BVHTreeFromEditMesh *data, BVHTree *bvhtree_from_mesh_verts_ex(struct BVHTreeFromMesh *data, const struct MVert *vert, int verts_num, - bool vert_allocated, const BLI_bitmap *verts_mask, int verts_num_active, float epsilon, @@ -158,10 +152,8 @@ BVHTree *bvhtree_from_editmesh_edges_ex(BVHTreeFromEditMesh *data, */ BVHTree *bvhtree_from_mesh_edges_ex(struct BVHTreeFromMesh *data, const struct MVert *vert, - bool vert_allocated, const struct MEdge *edge, int edges_num, - bool edge_allocated, const BLI_bitmap *edges_mask, int edges_num_active, float epsilon, @@ -180,10 +172,8 @@ BVHTree *bvhtree_from_mesh_edges_ex(struct BVHTreeFromMesh *data, */ BVHTree *bvhtree_from_mesh_faces_ex(struct BVHTreeFromMesh *data, const struct MVert *vert, - bool vert_allocated, const struct MFace *face, int numFaces, - bool face_allocated, const BLI_bitmap *faces_mask, int faces_num_active, float epsilon, @@ -213,12 +203,9 @@ BVHTree *bvhtree_from_editmesh_looptri_ex(BVHTreeFromEditMesh *data, */ BVHTree *bvhtree_from_mesh_looptri_ex(struct BVHTreeFromMesh *data, const struct MVert *vert, - bool vert_allocated, const struct MLoop *mloop, - bool loop_allocated, const struct MLoopTri *looptri, int looptri_num, - bool looptri_allocated, const BLI_bitmap *mask, int looptri_num_active, float epsilon, diff --git a/source/blender/blenkernel/intern/bvhutils.cc b/source/blender/blenkernel/intern/bvhutils.cc index 85d3c778a6d..abbd4ced94b 100644 --- a/source/blender/blenkernel/intern/bvhutils.cc +++ b/source/blender/blenkernel/intern/bvhutils.cc @@ -759,7 +759,6 @@ BVHTree *bvhtree_from_editmesh_verts( BVHTree *bvhtree_from_mesh_verts_ex(BVHTreeFromMesh *data, const MVert *vert, const int verts_num, - const bool vert_allocated, const BLI_bitmap *verts_mask, int verts_num_active, float epsilon, @@ -777,7 +776,6 @@ BVHTree *bvhtree_from_mesh_verts_ex(BVHTreeFromMesh *data, /* Setup BVHTreeFromMesh */ bvhtree_from_mesh_setup_data( tree, BVHTREE_FROM_VERTS, vert, nullptr, nullptr, nullptr, nullptr, nullptr, data); - data->vert_allocated = vert_allocated; } return tree; @@ -896,10 +894,8 @@ BVHTree *bvhtree_from_editmesh_edges( BVHTree *bvhtree_from_mesh_edges_ex(BVHTreeFromMesh *data, const MVert *vert, - const bool vert_allocated, const MEdge *edge, const int edges_num, - const bool edge_allocated, const BLI_bitmap *edges_mask, int edges_num_active, float epsilon, @@ -917,8 +913,6 @@ BVHTree *bvhtree_from_mesh_edges_ex(BVHTreeFromMesh *data, /* Setup BVHTreeFromMesh */ bvhtree_from_mesh_setup_data( tree, BVHTREE_FROM_EDGES, vert, edge, nullptr, nullptr, nullptr, nullptr, data); - data->vert_allocated = vert_allocated; - data->vert_allocated = edge_allocated; } return tree; @@ -979,10 +973,8 @@ static BVHTree *bvhtree_from_mesh_faces_create_tree(float epsilon, BVHTree *bvhtree_from_mesh_faces_ex(BVHTreeFromMesh *data, const MVert *vert, - const bool vert_allocated, const MFace *face, const int numFaces, - const bool face_allocated, const BLI_bitmap *faces_mask, int faces_num_active, float epsilon, @@ -1000,8 +992,6 @@ BVHTree *bvhtree_from_mesh_faces_ex(BVHTreeFromMesh *data, /* Setup BVHTreeFromMesh */ bvhtree_from_mesh_setup_data( tree, BVHTREE_FROM_FACES, vert, nullptr, face, nullptr, nullptr, nullptr, data); - data->vert_allocated = vert_allocated; - data->face_allocated = face_allocated; } return tree; @@ -1139,12 +1129,9 @@ BVHTree *bvhtree_from_editmesh_looptri( BVHTree *bvhtree_from_mesh_looptri_ex(BVHTreeFromMesh *data, const struct MVert *vert, - const bool vert_allocated, const struct MLoop *mloop, - const bool loop_allocated, const struct MLoopTri *looptri, const int looptri_num, - const bool looptri_allocated, const BLI_bitmap *looptri_mask, int looptri_num_active, float epsilon, @@ -1169,9 +1156,6 @@ BVHTree *bvhtree_from_mesh_looptri_ex(BVHTreeFromMesh *data, /* Setup BVHTreeFromMesh */ bvhtree_from_mesh_setup_data( tree, BVHTREE_FROM_LOOPTRI, vert, nullptr, nullptr, mloop, looptri, nullptr, data); - data->vert_allocated = vert_allocated; - data->loop_allocated = loop_allocated; - data->looptri_allocated = looptri_allocated; } return tree; @@ -1306,7 +1290,6 @@ BVHTree *BKE_bvhtree_from_mesh_get(struct BVHTreeFromMesh *data, data->tree = bvhtree_from_mesh_verts_ex(nullptr, mesh->mvert, verts_len, - false, loose_verts_mask, loose_vert_len, 0.0f, @@ -1331,10 +1314,8 @@ BVHTree *BKE_bvhtree_from_mesh_get(struct BVHTreeFromMesh *data, data->tree = bvhtree_from_mesh_edges_ex(nullptr, mesh->mvert, - false, mesh->medge, edges_len, - false, loose_edges_mask, loose_edges_len, 0.0, @@ -1353,10 +1334,8 @@ BVHTree *BKE_bvhtree_from_mesh_get(struct BVHTreeFromMesh *data, data->tree = bvhtree_from_mesh_faces_ex(nullptr, mesh->mvert, - false, mesh->mface, num_faces, - false, nullptr, -1, 0.0, @@ -1378,12 +1357,9 @@ BVHTree *BKE_bvhtree_from_mesh_get(struct BVHTreeFromMesh *data, data->tree = bvhtree_from_mesh_looptri_ex(nullptr, mesh->mvert, - false, mesh->mloop, - false, data->looptri, looptri_len, - false, looptri_mask, looptri_mask_active_len, 0.0, @@ -1513,22 +1489,6 @@ void free_bvhtree_from_mesh(struct BVHTreeFromMesh *data) BLI_bvhtree_free(data->tree); } - if (data->vert_allocated) { - MEM_freeN((void *)data->vert); - } - if (data->edge_allocated) { - MEM_freeN((void *)data->edge); - } - if (data->face_allocated) { - MEM_freeN((void *)data->face); - } - if (data->loop_allocated) { - MEM_freeN((void *)data->loop); - } - if (data->looptri_allocated) { - MEM_freeN((void *)data->looptri); - } - memset(data, 0, sizeof(*data)); } diff --git a/source/blender/blenkernel/intern/mesh_remap.c b/source/blender/blenkernel/intern/mesh_remap.c index 8a4c48458bd..aed52bd9cab 100644 --- a/source/blender/blenkernel/intern/mesh_remap.c +++ b/source/blender/blenkernel/intern/mesh_remap.c @@ -1510,7 +1510,6 @@ void BKE_mesh_remap_calc_loops_from_mesh(const int mode, bvhtree_from_mesh_verts_ex(&treedata[tindex], verts_src, num_verts_src, - false, verts_active, num_verts_active, 0.0, @@ -1547,12 +1546,9 @@ void BKE_mesh_remap_calc_loops_from_mesh(const int mode, } bvhtree_from_mesh_looptri_ex(&treedata[tindex], verts_src, - false, loops_src, - false, looptri_src, num_looptri_src, - false, looptri_active, num_looptri_active, 0.0, diff --git a/source/blender/editors/transform/transform_snap_object.cc b/source/blender/editors/transform/transform_snap_object.cc index 520e00de307..3489cfc4cda 100644 --- a/source/blender/editors/transform/transform_snap_object.cc +++ b/source/blender/editors/transform/transform_snap_object.cc @@ -275,17 +275,16 @@ static SnapObjectData *snap_object_data_mesh_get(SnapObjectContext *sctx, /* The tree is owned by the Mesh and may have been freed since we last used. */ is_dirty = true; } - else if (!sod->treedata_mesh.looptri_allocated && - sod->treedata_mesh.looptri != me_eval->runtime.looptris.array) { + else if (sod->treedata_mesh.looptri != me_eval->runtime.looptris.array) { is_dirty = true; } - else if (!sod->treedata_mesh.vert_allocated && sod->treedata_mesh.vert != me_eval->mvert) { + else if (sod->treedata_mesh.vert != me_eval->mvert) { is_dirty = true; } - else if (!sod->treedata_mesh.loop_allocated && sod->treedata_mesh.loop != me_eval->mloop) { + else if (sod->treedata_mesh.loop != me_eval->mloop) { is_dirty = true; } - else if (!sod->treedata_mesh.edge_allocated && sod->treedata_mesh.edge != me_eval->medge) { + else if (sod->treedata_mesh.edge != me_eval->medge) { is_dirty = true; } else if (sod->poly != me_eval->mpoly) { @@ -901,7 +900,8 @@ static bool raycastEditMesh(SnapObjectContext *sctx, sctx->callbacks.edit_mesh.test_face_fn, sctx->callbacks.edit_mesh.user_data); - bvhtree_from_editmesh_looptri_ex(treedata, em, elem_mask, looptri_num_active, 0.0f, 4, 6, false); + bvhtree_from_editmesh_looptri_ex( + treedata, em, elem_mask, looptri_num_active, 0.0f, 4, 6, false); MEM_freeN(elem_mask); } @@ -2364,12 +2364,6 @@ static short snapMesh(SnapObjectContext *sctx, sod->has_loose_edge = false; } sod->cached[0] = treedata_tmp.cached; - BLI_assert(!ELEM(true, - treedata_tmp.vert_allocated, - treedata_tmp.edge_allocated, - treedata_tmp.face_allocated, - treedata_tmp.loop_allocated, - treedata_tmp.looptri_allocated)); } if (sctx->runtime.snap_to_flag & SCE_SNAP_MODE_VERTEX) { @@ -2380,12 +2374,6 @@ static short snapMesh(SnapObjectContext *sctx, sod->has_loose_vert = false; } sod->cached[1] = treedata_tmp.cached; - BLI_assert(!ELEM(true, - treedata_tmp.vert_allocated, - treedata_tmp.edge_allocated, - treedata_tmp.face_allocated, - treedata_tmp.loop_allocated, - treedata_tmp.looptri_allocated)); } } else { @@ -2565,7 +2553,8 @@ static short snapEditMesh(SnapObjectContext *sctx, (bool (*)(BMElem *, void *))sctx->callbacks.edit_mesh.test_vert_fn, sctx->callbacks.edit_mesh.user_data); - bvhtree_from_editmesh_verts_ex(&treedata, em, verts_mask, verts_num_active, 0.0f, 2, 6, false); + bvhtree_from_editmesh_verts_ex( + &treedata, em, verts_mask, verts_num_active, 0.0f, 2, 6, false); MEM_freeN(verts_mask); } else { @@ -2597,7 +2586,8 @@ static short snapEditMesh(SnapObjectContext *sctx, (bool (*)(BMElem *, void *))sctx->callbacks.edit_mesh.test_edge_fn, sctx->callbacks.edit_mesh.user_data); - bvhtree_from_editmesh_edges_ex(&treedata, em, edges_mask, edges_num_active, 0.0f, 2, 6, false); + bvhtree_from_editmesh_edges_ex( + &treedata, em, edges_mask, edges_num_active, 0.0f, 2, 6, false); MEM_freeN(edges_mask); } else { |