Cleanup: Use C++ accessor functions
This commit is contained in:
parent
7172a11018
commit
fc73e75779
|
@ -30,7 +30,7 @@ static void multires_subdivide_create_object_space_linear_grids(Mesh *mesh)
|
|||
{
|
||||
const float(*positions)[3] = BKE_mesh_vert_positions(mesh);
|
||||
const MPoly *polys = BKE_mesh_polys(mesh);
|
||||
const int *corner_verts = BKE_mesh_corner_verts(mesh);
|
||||
const blender::Span<int> corner_verts = mesh->corner_verts();
|
||||
|
||||
MDisps *mdisps = static_cast<MDisps *>(
|
||||
CustomData_get_layer_for_write(&mesh->ldata, CD_MDISPS, mesh->totloop));
|
||||
|
|
|
@ -158,8 +158,8 @@ bool multires_reshape_context_create_from_base_mesh(MultiresReshapeContext *resh
|
|||
reshape_context->base_positions = BKE_mesh_vert_positions(base_mesh);
|
||||
reshape_context->base_edges = BKE_mesh_edges(base_mesh);
|
||||
reshape_context->base_polys = BKE_mesh_polys(base_mesh);
|
||||
reshape_context->base_corner_verts = BKE_mesh_corner_verts(base_mesh);
|
||||
reshape_context->base_corner_edges = BKE_mesh_corner_edges(base_mesh);
|
||||
reshape_context->base_corner_verts = base_mesh->corner_verts().data();
|
||||
reshape_context->base_corner_edges = base_mesh->corner_edges().data();
|
||||
|
||||
reshape_context->subdiv = multires_reshape_create_subdiv(nullptr, object, mmd);
|
||||
reshape_context->need_free_subdiv = true;
|
||||
|
@ -196,8 +196,8 @@ bool multires_reshape_context_create_from_object(MultiresReshapeContext *reshape
|
|||
reshape_context->base_positions = BKE_mesh_vert_positions(base_mesh);
|
||||
reshape_context->base_edges = BKE_mesh_edges(base_mesh);
|
||||
reshape_context->base_polys = BKE_mesh_polys(base_mesh);
|
||||
reshape_context->base_corner_verts = BKE_mesh_corner_verts(base_mesh);
|
||||
reshape_context->base_corner_edges = BKE_mesh_corner_edges(base_mesh);
|
||||
reshape_context->base_corner_verts = base_mesh->corner_verts().data();
|
||||
reshape_context->base_corner_edges = base_mesh->corner_edges().data();
|
||||
|
||||
reshape_context->subdiv = multires_reshape_create_subdiv(depsgraph, object, mmd);
|
||||
reshape_context->need_free_subdiv = true;
|
||||
|
@ -231,8 +231,8 @@ bool multires_reshape_context_create_from_ccg(MultiresReshapeContext *reshape_co
|
|||
reshape_context->base_positions = BKE_mesh_vert_positions(base_mesh);
|
||||
reshape_context->base_edges = BKE_mesh_edges(base_mesh);
|
||||
reshape_context->base_polys = BKE_mesh_polys(base_mesh);
|
||||
reshape_context->base_corner_verts = BKE_mesh_corner_verts(base_mesh);
|
||||
reshape_context->base_corner_edges = BKE_mesh_corner_edges(base_mesh);
|
||||
reshape_context->base_corner_verts = base_mesh->corner_verts().data();
|
||||
reshape_context->base_corner_edges = base_mesh->corner_edges().data();
|
||||
|
||||
reshape_context->subdiv = subdiv_ccg->subdiv;
|
||||
reshape_context->need_free_subdiv = false;
|
||||
|
@ -279,8 +279,8 @@ bool multires_reshape_context_create_from_subdiv(MultiresReshapeContext *reshape
|
|||
reshape_context->base_positions = BKE_mesh_vert_positions(base_mesh);
|
||||
reshape_context->base_edges = BKE_mesh_edges(base_mesh);
|
||||
reshape_context->base_polys = BKE_mesh_polys(base_mesh);
|
||||
reshape_context->base_corner_verts = BKE_mesh_corner_verts(base_mesh);
|
||||
reshape_context->base_corner_edges = BKE_mesh_corner_edges(base_mesh);
|
||||
reshape_context->base_corner_verts = base_mesh->corner_verts().data();
|
||||
reshape_context->base_corner_edges = base_mesh->corner_edges().data();
|
||||
reshape_context->cd_vertex_crease = (const float *)CustomData_get_layer(&base_mesh->edata,
|
||||
CD_CREASE);
|
||||
|
||||
|
|
|
@ -643,7 +643,7 @@ static void store_grid_data(MultiresUnsubdivideContext *context,
|
|||
{
|
||||
Mesh *original_mesh = context->original_mesh;
|
||||
const MPoly *polys = BKE_mesh_polys(original_mesh);
|
||||
const int *corner_verts = BKE_mesh_corner_verts(original_mesh);
|
||||
const blender::Span<int> corner_verts = original_mesh->corner_verts();
|
||||
const MPoly *poly = &polys[BM_elem_index_get(f)];
|
||||
|
||||
const int corner_vertex_index = BM_elem_index_get(v);
|
||||
|
@ -1041,7 +1041,7 @@ static void multires_unsubdivide_extract_grids(MultiresUnsubdivideContext *conte
|
|||
&bm_base_mesh->ldata, CD_PROP_INT32, base_l_layer_index);
|
||||
|
||||
const MPoly *polys = BKE_mesh_polys(base_mesh);
|
||||
const int *corner_verts = BKE_mesh_corner_verts(base_mesh);
|
||||
const blender::Span<int> corner_verts = base_mesh->corner_verts();
|
||||
|
||||
/* Main loop for extracting the grids. Iterates over the base mesh vertices. */
|
||||
BM_ITER_MESH (v, &iter, bm_base_mesh, BM_VERTS_OF_MESH) {
|
||||
|
@ -1079,8 +1079,11 @@ static void multires_unsubdivide_extract_grids(MultiresUnsubdivideContext *conte
|
|||
|
||||
/* Check the orientation of the loops in case that is needed to flip the x and y axis
|
||||
* when extracting the grid. */
|
||||
const bool flip_grid = multires_unsubdivide_flip_grid_x_axis(
|
||||
polys, corner_verts, base_mesh_face_index, base_mesh_loop_index, corner_x_index);
|
||||
const bool flip_grid = multires_unsubdivide_flip_grid_x_axis(polys,
|
||||
corner_verts.data(),
|
||||
base_mesh_face_index,
|
||||
base_mesh_loop_index,
|
||||
corner_x_index);
|
||||
|
||||
/* Extract the grid for that loop. */
|
||||
context->base_mesh_grids[base_mesh_loop_index].grid_index = base_mesh_loop_index;
|
||||
|
|
|
@ -402,8 +402,8 @@ static void init_user_data(OpenSubdiv_Converter *converter,
|
|||
user_data->vert_positions = BKE_mesh_vert_positions(mesh);
|
||||
user_data->edges = BKE_mesh_edges(mesh);
|
||||
user_data->polys = BKE_mesh_polys(mesh);
|
||||
user_data->corner_verts = BKE_mesh_corner_verts(mesh);
|
||||
user_data->corner_edges = BKE_mesh_corner_edges(mesh);
|
||||
user_data->corner_verts = mesh->corner_verts().data();
|
||||
user_data->corner_edges = mesh->corner_edges().data();
|
||||
user_data->cd_vertex_crease = static_cast<const float *>(
|
||||
CustomData_get_layer(&mesh->vdata, CD_CREASE));
|
||||
user_data->cd_edge_crease = static_cast<const float *>(
|
||||
|
|
|
@ -83,7 +83,7 @@ static void set_coarse_positions(Subdiv *subdiv,
|
|||
{
|
||||
const float(*positions)[3] = BKE_mesh_vert_positions(mesh);
|
||||
const MPoly *mpoly = BKE_mesh_polys(mesh);
|
||||
const int *corner_verts = BKE_mesh_corner_verts(mesh);
|
||||
const blender::Span<int> corner_verts = mesh->corner_verts();
|
||||
/* Mark vertices which needs new coordinates. */
|
||||
/* TODO(sergey): This is annoying to calculate this on every update,
|
||||
* maybe it's better to cache this mapping. Or make it possible to have
|
||||
|
|
|
@ -1820,8 +1820,8 @@ bool BKE_subdiv_foreach_subdiv_geometry(Subdiv *subdiv,
|
|||
ctx.coarse_mesh = coarse_mesh;
|
||||
ctx.coarse_edges = BKE_mesh_edges(coarse_mesh);
|
||||
ctx.coarse_polys = BKE_mesh_polys(coarse_mesh);
|
||||
ctx.coarse_corner_verts = BKE_mesh_corner_verts(coarse_mesh);
|
||||
ctx.coarse_corner_edges = BKE_mesh_corner_edges(coarse_mesh);
|
||||
ctx.coarse_corner_verts = coarse_mesh->corner_verts().data();
|
||||
ctx.coarse_corner_edges = coarse_mesh->corner_edges().data();
|
||||
ctx.settings = mesh_settings;
|
||||
ctx.foreach_context = context;
|
||||
subdiv_foreach_ctx_init(subdiv, &ctx);
|
||||
|
|
|
@ -1221,7 +1221,7 @@ static void sculpt_gesture_trim_geometry_generate(SculptGestureContext *sgcontex
|
|||
|
||||
/* Write the front face triangle indices. */
|
||||
MPoly *polys = BKE_mesh_polys_for_write(trim_operation->mesh);
|
||||
int *corner_verts = BKE_mesh_corner_verts_for_write(trim_operation->mesh);
|
||||
blender::MutableSpan<int> corner_verts = trim_operation->mesh->corner_verts_for_write();
|
||||
MPoly *mp = polys;
|
||||
int corner_i = 0;
|
||||
for (int i = 0; i < tot_tris_face; i++, mp++, corner_i += 3) {
|
||||
|
|
|
@ -318,7 +318,7 @@ static const EnumPropertyItem *weight_paint_sample_enum_itemf(bContext *C,
|
|||
ED_view3d_viewcontext_init(C, &vc, depsgraph);
|
||||
me = BKE_mesh_from_object(vc.obact);
|
||||
const MPoly *polys = BKE_mesh_polys(me);
|
||||
const int *corner_verts = BKE_mesh_corner_verts(me);
|
||||
const blender::Span<int> corner_verts = me->corner_verts();
|
||||
const MDeformVert *dverts = BKE_mesh_deform_verts(me);
|
||||
|
||||
if (me && dverts && vc.v3d && vc.rv3d && me->vertex_group_names.first) {
|
||||
|
@ -448,7 +448,7 @@ static bool weight_paint_set(Object *ob, float paintweight)
|
|||
const short paint_selmode = ME_EDIT_PAINT_SEL_MODE(me);
|
||||
|
||||
const MPoly *polys = BKE_mesh_polys(me);
|
||||
const int *corner_verts = BKE_mesh_corner_verts(me);
|
||||
const blender::Span<int> corner_verts = me->corner_verts();
|
||||
MDeformVert *dvert = BKE_mesh_deform_verts_for_write(me);
|
||||
|
||||
if (me->totpoly == 0 || dvert == nullptr) {
|
||||
|
@ -478,7 +478,7 @@ static bool weight_paint_set(Object *ob, float paintweight)
|
|||
}
|
||||
|
||||
do {
|
||||
const int vidx = corner_verts[mp->loopstart + fidx];
|
||||
const int vidx = corner_verts[mp->loopstart + fidx];
|
||||
|
||||
if (!dvert[vidx].flag) {
|
||||
if ((paint_selmode == SCE_SELECT_VERTEX) && !(select_vert && select_vert[vidx])) {
|
||||
|
|
|
@ -802,7 +802,7 @@ static void sculpt_expand_grids_to_faces_falloff(SculptSession *ss,
|
|||
static void sculpt_expand_vertex_to_faces_falloff(Mesh *mesh, ExpandCache *expand_cache)
|
||||
{
|
||||
const MPoly *polys = BKE_mesh_polys(mesh);
|
||||
const int *corner_verts = BKE_mesh_corner_verts(mesh);
|
||||
const blender::Span<int> corner_verts = mesh->corner_verts();
|
||||
|
||||
for (int p = 0; p < mesh->totpoly; p++) {
|
||||
const MPoly *poly = &polys[p];
|
||||
|
@ -1979,7 +1979,7 @@ static void sculpt_expand_delete_face_set_id(int *r_face_sets,
|
|||
const int totface = ss->totfaces;
|
||||
MeshElemMap *pmap = ss->pmap;
|
||||
const MPoly *polys = BKE_mesh_polys(mesh);
|
||||
const int *corner_verts = BKE_mesh_corner_verts(mesh);
|
||||
const blender::Span<int> corner_verts = mesh->corner_verts();
|
||||
|
||||
/* Check that all the face sets IDs in the mesh are not equal to `delete_id`
|
||||
* before attempting to delete it. */
|
||||
|
|
|
@ -89,8 +89,8 @@ static float *SCULPT_geodesic_mesh_create(Object *ob,
|
|||
float(*vert_positions)[3] = SCULPT_mesh_deformed_positions_get(ss);
|
||||
const MEdge *edges = BKE_mesh_edges(mesh);
|
||||
const MPoly *polys = BKE_mesh_polys(mesh);
|
||||
const int *corner_verts = BKE_mesh_corner_verts(mesh);
|
||||
const int *corner_edges = BKE_mesh_corner_edges(mesh);
|
||||
const blender::Span<int> corner_verts = mesh->corner_verts();
|
||||
const blender::Span<int> corner_edges = mesh->corner_edges();
|
||||
|
||||
float *dists = static_cast<float *>(MEM_malloc_arrayN(totvert, sizeof(float), __func__));
|
||||
BLI_bitmap *edge_tag = BLI_BITMAP_NEW(totedge, "edge tag");
|
||||
|
@ -102,7 +102,7 @@ static float *SCULPT_geodesic_mesh_create(Object *ob,
|
|||
mesh->totedge,
|
||||
polys,
|
||||
mesh->totpoly,
|
||||
corner_edges,
|
||||
corner_edges.data(),
|
||||
mesh->totloop);
|
||||
}
|
||||
if (!ss->vemap) {
|
||||
|
|
Loading…
Reference in New Issue