|
Blender V4.3
|
Go to the source code of this file.
Enumerations | |
| enum | MeshForeachFlag { MESH_FOREACH_NOP = 0 , MESH_FOREACH_USE_NORMAL = (1 << 0) } |
Functions | |
| void | BKE_mesh_foreach_mapped_vert (const Mesh *mesh, void(*func)(void *user_data, int index, const float co[3], const float no[3]), void *user_data, MeshForeachFlag flag) |
| void | BKE_mesh_foreach_mapped_edge (Mesh *mesh, int tot_edges, void(*func)(void *user_data, int index, const float v0co[3], const float v1co[3]), void *user_data) |
| void | BKE_mesh_foreach_mapped_loop (Mesh *mesh, void(*func)(void *user_data, int vertex_index, int face_index, const float co[3], const float no[3]), void *user_data, MeshForeachFlag flag) |
| void | BKE_mesh_foreach_mapped_face_center (Mesh *mesh, void(*func)(void *user_data, int index, const float cent[3], const float no[3]), void *user_data, MeshForeachFlag flag) |
| void | BKE_mesh_foreach_mapped_subdiv_face_center (Mesh *mesh, void(*func)(void *user_data, int index, const float cent[3], const float no[3]), void *user_data, MeshForeachFlag flag) |
| void | BKE_mesh_foreach_mapped_vert_coords_get (const Mesh *mesh_eval, float(*r_cos)[3], int totcos) |
| enum MeshForeachFlag |
| Enumerator | |
|---|---|
| MESH_FOREACH_NOP | |
| MESH_FOREACH_USE_NORMAL | |
Definition at line 12 of file BKE_mesh_iterators.hh.
| void BKE_mesh_foreach_mapped_edge | ( | Mesh * | mesh, |
| int | tot_edges, | ||
| void(* | func )(void *user_data, int index, const float v0co[3], const float v1co[3]), | ||
| void * | user_data ) |
Copied from #cdDM_foreachMappedEdge.
| tot_edges | Number of original edges. Used to avoid calling the callback with invalid edge indices. |
Definition at line 90 of file mesh_iterators.cc.
References bm, BMEditMesh::bm, BM_EDGES_OF_MESH, BM_elem_index_get, BM_ITER_MESH_INDEX, BM_mesh_elem_index_ensure(), BM_VERT, CD_ORIGINDEX, BMVert::co, CustomData_get_layer(), ORIGINDEX_NONE, BMEdge::v1, and BMEdge::v2.
Referenced by mesh_foreachScreenEdge(), and mesh_foreachScreenEdge_clip_bb_segment().
| void BKE_mesh_foreach_mapped_face_center | ( | Mesh * | mesh, |
| void(* | func )(void *user_data, int index, const float cent[3], const float no[3]), | ||
| void * | user_data, | ||
| MeshForeachFlag | flag ) |
Definition at line 228 of file mesh_iterators.cc.
References BKE_editmesh_cache_ensure_face_centers(), BKE_editmesh_cache_ensure_face_normals(), bm, BMEditMesh::bm, BM_FACES_OF_MESH, BM_ITER_MESH_INDEX, CD_ORIGINDEX, CustomData_get_layer(), flag, blender::Span< T >::is_empty(), MESH_FOREACH_USE_NORMAL, BMFace::no, ORIGINDEX_NONE, and blender::Span< T >::slice().
Referenced by mesh_foreachScreenFace().
| void BKE_mesh_foreach_mapped_loop | ( | Mesh * | mesh, |
| void(* | func )(void *user_data, int vertex_index, int face_index, const float co[3], const float no[3]), | ||
| void * | user_data, | ||
| MeshForeachFlag | flag ) |
Definition at line 142 of file mesh_iterators.cc.
References bm, BMEditMesh::bm, BM_elem_index_get, BM_FACE_FIRST_LOOP, BM_FACES_OF_MESH, BM_ITER_MESH_INDEX, BM_mesh_elem_index_ensure(), BM_VERT, CD_ORIGINDEX, BMVert::co, CustomData_get_layer(), ELEM, flag, blender::Span< T >::is_empty(), MESH_FOREACH_USE_NORMAL, BMLoop::next, ORIGINDEX_NONE, and BMLoop::v.
| void BKE_mesh_foreach_mapped_subdiv_face_center | ( | Mesh * | mesh, |
| void(* | func )(void *user_data, int index, const float cent[3], const float no[3]), | ||
| void * | user_data, | ||
| MeshForeachFlag | flag ) |
Definition at line 303 of file mesh_iterators.cc.
References CD_ORIGINDEX, CustomData_get_layer(), flag, MESH_FOREACH_USE_NORMAL, ORIGINDEX_NONE, and blender::Span< T >::slice().
Referenced by mesh_foreachScreenFace().
| void BKE_mesh_foreach_mapped_vert | ( | const Mesh * | mesh, |
| void(* | func )(void *user_data, int index, const float co[3], const float no[3]), | ||
| void * | user_data, | ||
| MeshForeachFlag | flag ) |
Definition at line 32 of file mesh_iterators.cc.
References BKE_editmesh_cache_ensure_vert_normals(), bm, BMEditMesh::bm, BM_ITER_MESH_INDEX, BM_VERTS_OF_MESH, CD_ORIGINDEX, BMVert::co, CustomData_get_layer(), flag, MESH_FOREACH_USE_NORMAL, BMVert::no, and ORIGINDEX_NONE.
Referenced by BKE_editmesh_vert_coords_alloc(), BKE_mesh_foreach_mapped_vert_coords_get(), ED_mesh_pick_vert(), ED_transverts_create_from_obedit(), mesh_foreachScreenVert(), blender::bke::mesh_get_mapped_verts_coords(), meshobject_foreachScreenVert(), paint_weight_gradient_exec(), vpaint_proj_dm_map_cosnos_init(), and vpaint_proj_dm_map_cosnos_update().
| void BKE_mesh_foreach_mapped_vert_coords_get | ( | const Mesh * | mesh_eval, |
| float(*) | r_cos[3], | ||
| int | totcos ) |
Definition at line 373 of file mesh_iterators.cc.
References BKE_mesh_foreach_mapped_vert(), BLI_BITMAP_NEW, get_vertexcos__mapFunc(), MEM_freeN(), MESH_FOREACH_NOP, MappedVCosData::vertex_visit, and MappedVCosData::vertexcos.
Referenced by add_verts_to_dgroups().