Blender V4.3
BMesh Struct Reference

#include <bmesh_class.hh>

Public Attributes

int totvert
 
int totedge
 
int totloop
 
int totface
 
int totvertsel
 
int totedgesel
 
int totfacesel
 
char elem_index_dirty
 
char elem_table_dirty
 
struct BLI_mempoolvpool
 
struct BLI_mempoolepool
 
struct BLI_mempoollpool
 
struct BLI_mempoolfpool
 
BMVert ** vtable
 
BMEdge ** etable
 
BMFace ** ftable
 
int vtable_tot
 
int etable_tot
 
int ftable_tot
 
struct BLI_mempoolvtoolflagpool
 
struct BLI_mempooletoolflagpool
 
struct BLI_mempoolftoolflagpool
 
uint use_toolflags: 1
 
int toolflag_index
 
CustomData vdata
 
CustomData edata
 
CustomData ldata
 
CustomData pdata
 
struct MLoopNorSpaceArraylnor_spacearr
 
char spacearr_dirty
 
short selectmode
 
int shapenr
 
int totflags
 
ListBase selected
 
BMFaceact_face
 
ListBase errorstack
 
void * py_handle
 

Detailed Description

Definition at line 298 of file bmesh_class.hh.

Member Data Documentation

◆ act_face

BMFace* BMesh::act_face

The active face. This is kept even when unselected, mainly so UV editing can keep showing the active faces image while the selection is being modified in the 3D viewport.

Without this the active image in the UV editor would flicker in a distracting way while changing selection in the 3D viewport.

Definition at line 368 of file bmesh_class.hh.

Referenced by BM_edge_rotate(), bm_kill_only_face(), BM_mesh_active_face_get(), BM_mesh_active_face_set(), BM_mesh_bm_from_me(), BM_mesh_bm_to_me_compact(), BM_mesh_copy(), BM_mesh_rebuild(), BM_mesh_remap(), bmo_dissolve_edges_exec(), bmo_dissolve_faces_exec(), bmo_dissolve_verts_exec(), bmo_extrude_face_region_exec(), BMO_mesh_selected_remap(), bmo_weld_verts_exec(), bpy_bmfaceseq_active_get(), bpy_bmfaceseq_active_set(), and edbm_elem_active_elem_or_face_get().

◆ edata

◆ elem_index_dirty

char BMesh::elem_index_dirty

Flag index arrays as being dirty so we can check if they are clean and avoid looping over the entire vert/edge/face/loop array in those cases. valid flags are: (BM_VERT | BM_EDGE | BM_FACE | BM_LOOP)

Definition at line 307 of file bmesh_class.hh.

Referenced by BKE_bmbvh_find_face_closest(), BKE_bmbvh_find_vert_closest(), BKE_bmbvh_ray_cast(), BKE_bmbvh_ray_cast_filter(), BKE_crazyspace_set_quats_editmesh(), BKE_editmesh_cache_ensure_face_normals(), BKE_pbvh_bmesh_node_save_orig(), bm_decim_triangulate_begin(), BM_edge_create(), BM_face_calc_center_bounds_vcos(), BM_face_calc_center_median_vcos(), BM_face_calc_normal_vcos(), bm_face_create__internal(), BM_face_split_edgenet_connect_islands(), BM_face_splits_check_legal(), BM_face_triangulate(), bm_interp_face_store(), bm_kill_only_edge(), bm_kill_only_face(), bm_kill_only_loop(), bm_kill_only_vert(), bm_loop_create(), BM_mesh_beautify_fill(), BM_mesh_bisect_plane(), BM_mesh_bm_from_me(), BM_mesh_bm_to_me_compact(), BM_mesh_calc_edge_groups(), BM_mesh_calc_face_groups(), BM_mesh_calc_path_edge(), BM_mesh_calc_path_face(), BM_mesh_calc_path_region_vert(), BM_mesh_calc_path_uv_edge(), BM_mesh_calc_path_uv_face(), BM_mesh_calc_path_uv_region_edge(), BM_mesh_calc_path_uv_region_vert(), BM_mesh_calc_path_uv_vert(), BM_mesh_calc_path_vert(), BM_mesh_copy(), BM_mesh_copy_arrays(), BM_mesh_decimate_collapse(), BM_mesh_decimate_dissolve_ex(), BM_mesh_decimate_unsubdivide_ex(), BM_mesh_edgeloops_find_path(), BM_mesh_edgenet(), bm_mesh_edges_sharp_tag(), BM_mesh_elem_index_ensure_ex(), BM_mesh_elem_index_validate(), BM_mesh_intersect_edges(), bm_mesh_loops_calc_normals__single_threaded(), bm_mesh_loops_calc_normals_for_loop(), BM_mesh_remap(), BM_mesh_validate(), BM_mesh_wireframe(), BM_normals_loops_edges_tag(), bm_rotate_edges_shared(), BM_vert_create(), BM_vert_loop_groups_data_layer_create(), bmesh_kernel_join_face_kill_edge(), bmesh_kernel_loop_reverse(), bmo_flag_layer_alloc(), bmo_flag_layer_clear(), bmo_flag_layer_free(), bmo_flip_quad_tessellation_exec(), bmo_inset_region_exec(), bpy_bmelemseq_index_update(), C_BVHTree_FromBMesh(), ED_transverts_create_from_obedit(), edbm_decimate_exec(), EDBM_elem_to_index_any(), edbm_face_split_by_edges_exec(), edbm_ripsel_looptag_helper(), EDBM_select_interior_faces(), blender::bke::pbvh::Tree::from_bmesh(), UVGroups::init(), make_child_duplis_faces_from_editmesh(), blender::bke::pbvh::pbvh_bmesh_node_limit_ensure(), transform_convert_mesh_connectivity_distance(), transform_mesh_edge_slide_data_create(), transform_mesh_uv_edge_slide_data_create(), and uv_rip_object().

◆ elem_table_dirty

◆ epool

◆ errorstack

ListBase BMesh::errorstack

List of BMOpError, used for operator error handling.

Definition at line 371 of file bmesh_class.hh.

Referenced by BMO_error_get(), BMO_error_get_at_level(), BMO_error_occurred_at_level(), BMO_error_pop(), and BMO_error_raise().

◆ etable

◆ etable_tot

int BMesh::etable_tot

Definition at line 329 of file bmesh_class.hh.

Referenced by BM_mesh_elem_table_ensure(), and BM_mesh_rebuild().

◆ etoolflagpool

◆ fpool

◆ ftable

◆ ftable_tot

int BMesh::ftable_tot

Definition at line 330 of file bmesh_class.hh.

Referenced by BM_mesh_elem_table_ensure(), and BM_mesh_rebuild().

◆ ftoolflagpool

◆ ldata

CustomData BMesh::ldata

Definition at line 339 of file bmesh_class.hh.

Referenced by assert_bmesh_has_no_mesh_only_attributes(), bev_merge_edge_uvs(), bev_merge_uvs(), bevel_harden_normals(), BKE_editmesh_loop_tangent_calc(), BM_custom_loop_normals_from_vector_layer(), BM_custom_loop_normals_to_vector_layer(), BM_data_interp_face_vert_edge(), BM_data_layer_copy(), bm_edge_collapse_loop_customdata(), BM_edge_split(), BM_elem_attrs_copy(), BM_elem_attrs_copy(), BM_face_copy_shared(), BM_face_interp_from_face_ex(), BM_face_interp_multires(), blender::bm_face_loop_table_build(), BM_face_multires_bounds_smooth(), BM_face_normal_flip(), BM_face_split(), BM_face_split_edgenet(), BM_face_triangulate(), BM_faces_join(), BM_faces_join_pair(), bm_grid_fill_array(), bm_interp_face_free(), bm_interp_face_store(), bm_kill_only_loop(), BM_lnorspace_err(), BM_lnorspace_rebuild(), BM_lnorspacearr_store(), bm_loop_create(), bm_loop_customdata_merge(), BM_loop_interp_from_face(), bm_loop_interp_from_grid_boundary_2(), bm_loop_interp_from_grid_boundary_4(), BM_loop_interp_multires(), BM_loop_normal_editdata_array_init(), BM_mesh_bm_from_me(), BM_mesh_bm_to_me_compact(), BM_mesh_calc_uvs_cube(), BM_mesh_clear(), BM_mesh_copy(), BM_mesh_copy_arrays(), BM_mesh_copy_init_customdata(), BM_mesh_copy_init_customdata_all_layers(), BM_mesh_copy_init_customdata_from_mesh_array(), bm_mesh_copy_new_face(), BM_mesh_create(), BM_mesh_data_free(), BM_mesh_debug_info(), BM_mesh_decimate_collapse(), BM_mesh_decimate_dissolve_ex(), blender::bm_to_mesh_loops(), BM_uv_map_ensure_edge_select_attr(), BM_uv_map_ensure_pin_attr(), BM_uv_map_ensure_select_and_pin_attrs(), BM_uv_map_ensure_vert_select_attr(), BM_uv_map_get_offsets(), BM_uv_map_get_offsets_from_layer(), BM_uv_vert_map_create(), BM_vert_collapse_faces(), BM_vert_loop_groups_data_layer_create(), BM_vert_loop_groups_data_layer_merge(), bm_vert_loop_groups_data_layer_merge__single(), BM_vert_loop_groups_data_layer_merge_weights(), bm_vert_loop_groups_data_layer_merge_weights__single(), BMD_mesh_bm_create(), bmesh_edit_begin(), bmesh_edit_end(), blender::draw::bmesh_normals_domain(), bmo_average_vert_facedata_exec(), bmo_collapse_uvs_exec(), bmo_collapsecon_do_layer(), bmo_create_circle_exec(), bmo_create_cone_exec(), bmo_create_cube_exec(), bmo_create_grid_exec(), bmo_create_icosphere_exec(), bmo_create_monkey_exec(), bmo_create_uvsphere_exec(), bmo_get_loop_color_ref(), bmo_inset_region_exec(), bmo_join_triangles_exec(), bmo_mesh_copy(), bmo_mirror_exec(), bmo_pointmerge_facedata_exec(), bmo_poke_exec(), bmo_reverse_faces_exec(), bmo_reverse_uvs_exec(), bmo_rotate_uvs_exec(), bmw_UVEdgeWalker_step(), bpy_bm_customdata_get(), BPy_BMesh_CreatePyObject(), bpy_bmesh_dealloc(), BPy_BMLoop_CreatePyObject(), bpy_bmloop_dealloc(), blender::draw::compute_area_ratio(), contig_ldata_across_edge(), contig_ldata_across_loops(), correct_uv_aspect(), correct_uv_aspect_per_face(), blender::nodes::node_geo_mesh_primitive_ico_sphere_cc::create_ico_sphere_mesh(), do_lasso_select_mesh_uv(), ED_mesh_color_add(), ED_uvedit_ensure_uvs(), ED_uvedit_selectmode_clean(), ED_uvedit_selectmode_flush(), edbm_average_normals_exec(), edbm_flip_normals_custom_loop_normals(), edbm_set_normals_from_faces_exec(), EDBM_uv_check(), EDBM_vert_color_check(), blender::draw::extract_edituv_stretch_angle_subdiv(), blender::draw::extract_face_dots_uv_bm(), blender::draw::extract_tan_init_common(), blender::draw::extract_uv_maps(), blender::draw::extract_uv_stretch_angle_bm(), flip_custom_normals_init_data(), blender::draw::pbvh::get_cdata(), blender::draw::get_custom_data_for_domain(), get_domains(), make_duplis_faces(), math_layer_info_init(), blender::geometry::boolean::mesh_bm_concat(), mesh_customdata_custom_splitnormals_add_exec(), mesh_customdata_custom_splitnormals_clear_exec(), mesh_customdata_get_type(), mesh_customdatacorrect_create_impl(), mesh_customdatacorrect_face_substitute_set(), mesh_customdatacorrect_init_container_generic(), mesh_customdatacorrect_init_container_merge_group(), mesh_customdatacorrect_init_vert(), mesh_customdatacorrect_restore(), blender::draw::mesh_render_data_update_corner_normals(), multires_unsubdivide_extract_grids(), normals_split(), select_linked_delimit_begin(), select_linked_delimit_validate(), stitch_process_data(), update_data_blocks(), uv_box_select_exec(), uv_circle_select_exec(), uv_copy_exec(), uv_find_nearest_face_ex(), uv_find_nearest_loop_from_edge(), uv_find_nearest_loop_from_vert(), uv_from_view_exec(), uv_hide_exec(), uv_mouse_select_multi(), uv_paste_exec(), uv_pin_exec(), uv_reveal_exec(), uv_rip_object(), uv_sculpt_stroke_apply(), uv_select_all(), uv_select_edgeloop(), uv_select_edgering(), uv_select_faceloop(), uv_select_flush_from_loop_edge_flag(), uv_select_flush_from_tag_face(), uv_select_flush_from_tag_loop(), uv_select_invert(), uv_select_linked_multi(), uv_select_more_less(), uv_select_overlap(), uv_select_pinned_exec(), uv_select_similar_island_exec(), uv_select_split_exec(), uvedit_deselect_flush(), uvedit_select_flush(), and uvedit_unwrap().

◆ lnor_spacearr

◆ lpool

◆ pdata

CustomData BMesh::pdata

Definition at line 339 of file bmesh_class.hh.

Referenced by blender::ed::sculpt_paint::cloth::apply_filter_forces_bmesh(), assert_bmesh_has_no_mesh_only_attributes(), bevel_set_weighted_normal_face_strength(), BKE_pbvh_bmesh_after_stroke(), BM_data_layer_copy(), BM_elem_attrs_copy(), BM_elem_attrs_copy(), BM_face_create(), bm_kill_only_face(), bm_log_faces_restore(), BM_mesh_bm_from_me(), BM_mesh_bm_to_me_compact(), BM_mesh_clear(), BM_mesh_copy(), BM_mesh_copy_arrays(), BM_mesh_copy_init_customdata(), BM_mesh_copy_init_customdata_all_layers(), BM_mesh_copy_init_customdata_from_mesh_array(), bm_mesh_copy_new_face(), BM_mesh_create(), BM_mesh_data_free(), BM_mesh_debug_info(), BM_mesh_remap(), blender::bm_to_mesh_faces(), blender::bke::pbvh::bmesh_update_topology(), bmo_mesh_copy(), bpy_bm_customdata_get(), BPy_BMesh_CreatePyObject(), bpy_bmesh_dealloc(), BPy_BMFace_CreatePyObject(), bpy_bmface_dealloc(), blender::bke::build_pbvh_for_dynamic_topology(), blender::ed::sculpt_paint::pose::calc_average_face_set_center(), blender::ed::sculpt_paint::filter::calc_relax_face_sets_filter(), blender::ed::sculpt_paint::filter::calc_relax_filter(), blender::ed::sculpt_paint::auto_mask::calc_vert_factors(), blender::ed::sculpt_paint::dyntopo::disable(), edbm_mod_weighted_strength_exec(), blender::bke::editbmesh_calc_modifiers(), blender::ed::sculpt_paint::face_set::ensure_face_sets_bmesh(), blender::draw::extract_sculpt_data(), blender::draw::pbvh::fill_vbos_bmesh(), blender::ed::sculpt_paint::face_set::find_next_available_id(), blender::bke::pbvh::Tree::from_bmesh(), geometry_extract_tag_face_set(), blender::ed::sculpt_paint::face_set::gesture_apply_bmesh(), blender::draw::pbvh::get_cdata(), blender::draw::get_custom_data_for_domain(), get_domains(), blender::ed::sculpt_paint::pose::ik_chain_init_face_sets_bmesh(), blender::ed::sculpt_paint::pose::ik_chain_init_face_sets_fk_bmesh(), blender::ed::sculpt_paint::auto_mask::init_boundary_masking_bmesh(), blender::ed::sculpt_paint::expand::init_from_face_set_boundary(), mesh_customdata_get_type(), mesh_customdatacorrect_face_substitute_set(), mesh_customdatacorrect_init_vert(), blender::draw::overlay::Sculpts::mesh_sync(), OVERLAY_sculpt_cache_populate(), similar_face_select_exec(), and update_data_blocks().

◆ py_handle

void* BMesh::py_handle

Keep a single reference to the Python instance of this BMesh (if any exists).

This allows save invalidation of a BMesh when it's freed, so the Python object will report it as having been removed, instead of crashing on invalid memory access.

Doesn't hold a #PyObject reference, cleared when the last object is de-referenced.

Definition at line 382 of file bmesh_class.hh.

Referenced by BM_mesh_clear(), BM_mesh_free(), BPy_BMesh_CreatePyObject(), bpy_bmesh_dealloc(), and bpy_bmesh_free().

◆ selected

◆ selectmode

◆ shapenr

◆ spacearr_dirty

◆ toolflag_index

◆ totedge

int BMesh::totedge

Definition at line 299 of file bmesh_class.hh.

Referenced by bm_decim_triangulate_end(), BM_edge_create(), bm_edge_symmetry_map(), BM_iter_as_arrayN(), BM_iter_mesh_count(), bm_kill_only_edge(), BM_log_print_entry(), BM_mesh_bisect_plane(), BM_mesh_bm_to_me(), BM_mesh_bm_to_me_compact(), BM_mesh_calc_edge_groups(), BM_mesh_calc_edge_groups_as_arrays(), BM_mesh_calc_path_edge(), BM_mesh_copy(), BM_mesh_debug_info(), BM_mesh_decimate_collapse(), BM_mesh_decimate_dissolve_ex(), BM_mesh_edgeloops_find_path(), BM_mesh_elem_count(), BM_mesh_elem_index_ensure_ex(), BM_mesh_elem_table_ensure(), BM_mesh_elem_toolflags_ensure(), BM_mesh_normals_update_ex(), BM_mesh_rebuild(), BM_mesh_remap(), bm_mesh_select_mode_flush_vert_to_edge(), BM_mesh_validate(), bm_vert_connect_pair(), bmesh_kernel_join_face_kill_edge(), blender::draw::bmesh_normals_domain(), bmo_edgenet_fill_exec(), bmo_flag_layer_alloc(), bmo_flag_layer_free(), BMO_slot_buffer_from_all(), bmo_smooth_laplacian_vert_exec(), bpy_bmelemseq_subscript_int(), bpy_bmesh_repr(), calc_solidify_normals(), CustomData_bmesh_merge_layout(), draw_select_id_edit_mesh(), ED_mesh_mirrtopo_init(), ED_mesh_mirrtopo_recalc_check(), edbm_add_edge_face_exec(), edbm_dissolve_degenerate_exec(), EDBM_elem_from_index_any(), EDBM_elem_to_index_any(), edbm_fill_grid_exec(), edbm_hide_exec(), EDBM_mesh_stats_multi(), EDBM_op_finish(), edbm_rip_invoke__edge(), edbm_ripsel_looptag_helper(), EDBM_select_interior_faces(), edbm_select_linked_pick_invoke(), edbm_select_random_exec(), edbm_shortest_path_pick_exec(), editmesh_snap_mode_supported(), blender::draw::extract_lines_bm(), get_domains(), loopcut_init(), mesh_customdata_get_type(), mesh_foreachScreenEdge(), mesh_foreachScreenEdge_clip_bb_segment(), blender::draw::mesh_render_data_create(), mesh_separate_loose(), sort_bmelem_flag(), stats_object_edit(), and update_data_blocks().

◆ totedgesel

int BMesh::totedgesel

Definition at line 300 of file bmesh_class.hh.

Referenced by BKE_mesh_count_selected_items(), BM_edge_select_set(), BM_edge_select_set_noflush(), BM_mesh_copy(), bm_mesh_edges_select_get_n(), BM_mesh_elem_hflag_disable_test(), BM_mesh_select_mode_clean_ex(), bm_mesh_select_mode_flush_vert_to_edge(), bm_vert_connect_select_history_edge_to_vert_path(), edbm_add_edge_face_exec(), edbm_add_edge_face_exec__tricky_extend_sel(), edbm_collapse_edge_exec(), edbm_decimate_exec(), edbm_delete_edgeloop_exec(), edbm_delete_exec(), edbm_dissolve_edges_exec(), edbm_dissolve_limited_exec(), edbm_edge_rotate_selected_exec(), edbm_edge_split_selected_edges(), edbm_extrude_edges_exec(), edbm_extrude_htype_from_em_select(), edbm_extrude_mesh(), edbm_face_split_by_edges_exec(), edbm_fill_exec(), edbm_fill_grid_exec(), edbm_fill_holes_exec(), edbm_flip_normals_exec(), edbm_hide_exec(), edbm_loop_multiselect_exec(), edbm_loop_to_region_exec(), edbm_mark_seam_exec(), edbm_mark_sharp_exec(), EDBM_mesh_stats_multi(), edbm_offset_edgeloop_exec(), edbm_rip_edge_invoke(), edbm_rip_invoke(), edbm_select_all_exec(), edbm_select_less_exec(), edbm_select_more_exec(), edbm_select_nth_exec(), EDBM_select_toggle_all(), EDBM_selectmode_convert(), EDBM_selectmode_set(), edbm_separate_exec(), edbm_shortest_path_select_exec(), edbm_sort_elements_exec(), edbm_split_exec(), EDBM_stats_update(), edbm_subdivide_edge_ring_exec(), edbm_subdivide_exec(), edbm_unsubdivide_exec(), getTransformOrientation_ex(), loop_find_regions(), mesh_bisect_exec(), mesh_bisect_invoke(), mesh_circle_select(), recount_totedgesel(), recount_totsels_are_ok(), similar_edge_select_exec(), stats_object_edit(), transform_convert_mesh_islands_calc(), uv_mark_seam_exec(), uvedit_select_is_any_selected(), and v3d_editvertex_buts().

◆ totface

int BMesh::totface

Definition at line 299 of file bmesh_class.hh.

Referenced by blender::draw::accumululate_material_counts_bm(), blender::ed::sculpt_paint::trim::apply_trim(), BKE_bmbvh_new_ex(), BKE_editmesh_cache_ensure_face_centers(), BKE_editmesh_cache_ensure_face_normals(), BKE_editmesh_loop_tangent_calc(), BKE_editmesh_looptris_calc_ex(), BKE_editmesh_looptris_calc_with_partial_ex(), bm_face_create__internal(), BM_iter_as_arrayN(), BM_iter_mesh_count(), bm_kill_only_face(), BM_log_all_added(), BM_log_create(), BM_log_mesh_elems_reorder(), BM_log_print_entry(), BM_mesh_bm_from_me(), BM_mesh_bm_to_me(), BM_mesh_bm_to_me_compact(), BM_mesh_calc_edge_groups_as_arrays(), BM_mesh_calc_face_groups(), BM_mesh_calc_path_face(), BM_mesh_calc_path_uv_face(), bm_mesh_calc_tessellation__single_threaded(), BM_mesh_calc_tessellation_beauty(), BM_mesh_calc_tessellation_ex(), bm_mesh_calc_uv_islands(), BM_mesh_copy(), bm_mesh_copy_new_face(), BM_mesh_debug_info(), BM_mesh_decimate_collapse(), BM_mesh_edgenet(), BM_mesh_elem_count(), BM_mesh_elem_index_ensure_ex(), BM_mesh_elem_table_ensure(), BM_mesh_elem_toolflags_ensure(), BM_mesh_intersect(), BM_mesh_partial_create_from_verts(), BM_mesh_partial_create_from_verts_group_multi(), BM_mesh_partial_create_from_verts_group_single(), BM_mesh_rebuild(), BM_mesh_remap(), bm_mesh_select_mode_flush_edge_to_face(), BM_mesh_separate_faces(), bm_uv_build_islands(), BM_uv_element_map_create(), BMD_mesh_intersection(), bmesh_kernel_join_face_kill_edge(), blender::draw::bmesh_normals_domain(), bmo_dissolve_faces_exec(), bmo_flag_layer_alloc(), bmo_flag_layer_free(), bmo_inset_region_exec(), bmo_recalc_face_normals_exec(), BMO_slot_buffer_from_all(), bmo_smooth_laplacian_vert_exec(), bpy_bmelemseq_subscript_int(), bpy_bmesh_calc_loop_triangles(), bpy_bmesh_repr(), bridge_loop_pair(), C_BVHTree_FromBMesh(), blender::draw::calc_face_tri_starts_bmesh(), blender::draw::compute_area_ratio(), construct_param_handle_multi(), createTransEditVerts(), CustomData_bmesh_merge_layout(), draw_select_id_edit_mesh(), blender::draw::draw_subdiv_cache_update_extra_coarse_face_data(), ED_operator_uvmap(), ED_uvedit_ensure_uvs(), ED_uvedit_selected_faces(), edbm_add_edge_face_exec(), edbm_decimate_exec(), edbm_dissolve_degenerate_exec(), edbm_face_split_by_edges_exec(), edbm_fill_exec(), edbm_fill_grid_exec(), edbm_hide_exec(), EDBM_mesh_stats_multi(), EDBM_op_finish(), EDBM_select_interior_faces(), edbm_select_random_exec(), edbm_shortest_path_pick_exec(), EDBM_uv_check(), EDBM_vert_color_check(), editmesh_snap_mode_supported(), blender::ed::sculpt_paint::dyntopo::enable_ex(), blender::draw::extract_edge_factor_bm(), blender::draw::extract_edge_index_bm(), blender::draw::extract_edit_data_bm(), blender::draw::extract_edituv_data_bm(), blender::draw::extract_edituv_face_dots_bm(), blender::draw::extract_face_dot_positions_bm(), blender::draw::extract_face_dots_bm(), blender::draw::extract_face_dots_edituv_data(), blender::draw::extract_face_dots_uv_bm(), blender::draw::extract_face_index_bm(), blender::draw::extract_normals_bm(), blender::draw::extract_positions_bm(), blender::draw::extract_sculpt_data(), blender::draw::extract_tris_bmesh(), blender::draw::extract_vert_index_bm(), blender::draw::extract_vert_normals_bm(), blender::draw::extract_weights_bm(), blender::bke::pbvh::Tree::from_bmesh(), get_domains(), math_layer_info_init(), blender::geometry::boolean::mesh_bm_concat(), mesh_customdata_get_type(), blender::draw::mesh_render_data_create(), mesh_separate_loose(), mesh_separate_material(), modify_mesh(), smart_project_exec(), sort_bmelem_flag(), stats_object_edit(), stats_object_sculpt(), stitch_process_data(), blender::ed::sculpt_paint::dyntopo::triangulate(), unsubdivide_is_all_quads(), update_data_blocks(), uv_select_linked_multi(), and uv_shortest_path_pick_exec().

◆ totfacesel

int BMesh::totfacesel

Definition at line 300 of file bmesh_class.hh.

Referenced by BKE_mesh_count_selected_items(), BM_face_select_set(), BM_face_select_set_noflush(), BM_face_split_edgenet(), BM_mesh_copy(), BM_mesh_elem_hflag_disable_test(), BM_mesh_select_mode_clean_ex(), bm_mesh_select_mode_flush_edge_to_face(), cube_project_exec(), cylinder_project_exec(), edbm_add_edge_face_exec(), edbm_add_edge_face_exec__tricky_extend_sel(), edbm_beautify_fill_exec(), edbm_bridge_edge_loops_for_single_editmesh(), edbm_decimate_exec(), edbm_delete_exec(), edbm_dissolve_faces_exec(), edbm_dissolve_limited_exec(), edbm_extrude_faces_exec(), edbm_extrude_htype_from_em_select(), edbm_extrude_mesh(), edbm_face_make_planar_exec(), edbm_face_split_by_edges_exec(), edbm_faces_shade_flat_exec(), edbm_faces_shade_smooth_exec(), edbm_flip_normals_exec(), edbm_flip_quad_tessellation_exec(), edbm_hide_exec(), edbm_intersect_boolean_exec(), edbm_intersect_exec(), EDBM_mesh_stats_multi(), edbm_normals_make_consistent_exec(), edbm_normals_tools_exec(), edbm_poke_face_exec(), edbm_quads_convert_to_tris_exec(), edbm_region_to_loop_exec(), edbm_reverse_colors_exec(), edbm_reverse_uvs_exec(), edbm_rip_invoke(), edbm_rotate_colors_exec(), edbm_rotate_uvs_exec(), edbm_select_all_exec(), edbm_select_less_exec(), edbm_select_linked_flat_faces_exec(), edbm_select_more_exec(), edbm_select_nth_exec(), edbm_select_similar_region_exec(), EDBM_select_toggle_all(), EDBM_selectmode_convert(), EDBM_selectmode_set(), edbm_separate_exec(), edbm_set_normals_from_faces_exec(), edbm_shortest_path_select_exec(), edbm_solidify_exec(), edbm_sort_elements_exec(), edbm_split_exec(), EDBM_stats_update(), edbm_subdivide_exec(), edbm_tris_convert_to_quads_exec(), edbm_unsubdivide_exec(), edbm_vert_connect_concave_exec(), edbm_vert_connect_nonplaner_exec(), edbm_wireframe_exec(), getTransformOrientation_ex(), knifetool_invoke(), mesh_circle_select(), minimize_stretch_exit(), minimize_stretch_iteration(), recount_totfacesel(), recount_totsels_are_ok(), reset_exec(), similar_face_select_exec(), special_aftertrans_update__mesh(), sphere_project_exec(), stats_object_edit(), transform_convert_mesh_islands_calc(), uv_select_similar_face_exec(), uvedit_have_selection(), and uvedit_select_is_any_selected().

◆ totflags

◆ totloop

int BMesh::totloop

Definition at line 299 of file bmesh_class.hh.

Referenced by blender::ed::sculpt_paint::trim::apply_trim(), BKE_editmesh_looptris_calc_ex(), BKE_editmesh_looptris_calc_with_partial_ex(), bm_kill_only_loop(), BM_lnorspace_err(), BM_lnorspace_rebuild(), BM_lnorspace_update(), BM_log_print_entry(), bm_loop_create(), BM_loop_normal_editdata_array_init(), BM_mesh_bm_to_me(), BM_mesh_bm_to_me_compact(), BM_mesh_calc_path_uv_edge(), BM_mesh_calc_path_uv_vert(), bm_mesh_calc_tessellation__single_threaded(), BM_mesh_calc_tessellation_beauty(), BM_mesh_elem_index_ensure_ex(), bm_mesh_loops_assign_normal_data(), bm_mesh_loops_calc_normals(), bm_mesh_loops_calc_normals__multi_threaded(), bm_mesh_loops_calc_normals__single_threaded(), bm_mesh_loops_custom_normals_set(), bm_mesh_loops_split_lnor_fans(), BM_mesh_rebuild(), BMD_mesh_intersection(), bmesh_kernel_join_face_kill_edge(), bmo_smooth_laplacian_vert_exec(), bpy_bmesh_calc_loop_triangles(), bpy_bmesh_repr(), C_BVHTree_FromBMesh(), createTransEditVerts(), createTransUVs(), CustomData_bmesh_merge_layout(), ED_uvedit_selected_edges(), ED_uvedit_selected_verts(), edbm_normals_tools_exec(), EDBM_op_finish(), edbm_set_normals_from_faces_exec(), get_domains(), blender::geometry::boolean::mesh_bm_concat(), mesh_calc_path_region_elem(), mesh_customdata_get_type(), blender::draw::mesh_render_data_create(), blender::ed::sculpt_paint::dyntopo::triangulate(), update_data_blocks(), uv_remove_doubles_to_selected(), uv_remove_doubles_to_unselected(), and uv_shortest_path_pick_exec().

◆ totvert

int BMesh::totvert

Definition at line 299 of file bmesh_class.hh.

Referenced by blender::ed::spreadsheet::GeometryDataSource::apply_selection_filter(), BKE_crazyspace_get_first_deform_matrices_editbmesh(), BKE_crazyspace_get_mapped_editverts(), BKE_editmesh_cache_calc_minmax(), BKE_editmesh_cache_ensure_vert_normals(), BKE_editmesh_vert_coords_alloc(), BKE_editmesh_vert_coords_when_deformed(), BKE_mesh_wrapper_vert_coords_copy_with_mat4(), bm_edge_info_average_length_fallback(), BM_iter_as_arrayN(), BM_iter_mesh_count(), bm_kill_only_vert(), BM_lnorspace_invalidate(), BM_log_all_added(), BM_log_create(), BM_log_mesh_elems_reorder(), BM_log_print_entry(), BM_mesh_bm_from_me(), BM_mesh_bm_to_me(), BM_mesh_bm_to_me_compact(), BM_mesh_calc_edge_groups_as_arrays(), BM_mesh_calc_path_vert(), BM_mesh_copy(), BM_mesh_debug_info(), BM_mesh_decimate_collapse(), BM_mesh_decimate_dissolve_ex(), BM_mesh_decimate_unsubdivide_ex(), BM_mesh_edgenet(), BM_mesh_elem_count(), BM_mesh_elem_index_ensure_ex(), BM_mesh_elem_table_ensure(), BM_mesh_elem_toolflags_ensure(), BM_mesh_partial_create_from_verts(), BM_mesh_partial_create_from_verts_group_multi(), BM_mesh_partial_create_from_verts_group_single(), BM_mesh_rebuild(), BM_mesh_remap(), BM_mesh_vert_coords_alloc(), bm_mesh_verts_calc_normals(), BM_mesh_wireframe(), bm_to_mesh_shape(), bm_uv_build_islands(), BM_uv_element_map_create(), BM_uv_vert_map_create(), BM_vert_create(), bm_vert_fasthash_create(), bmo_bisect_plane_exec(), bmo_edgenet_fill_exec(), bmo_flag_layer_alloc(), bmo_flag_layer_free(), bmo_inset_region_exec(), BMO_slot_buffer_from_all(), bmo_smooth_laplacian_vert_exec(), bmo_spin_exec(), bpy_bmelemseq_subscript_int(), bpy_bmesh_repr(), C_BVHTree_FromBMesh(), calc_ortho_extent(), blender::ed::sculpt_paint::islands::calc_topology_islands_bmesh(), correctivesmooth_modifier_do(), createTransEditVerts(), createTransMeshSkin(), createTransMeshVertCData(), CustomData_bmesh_merge_layout(), blender::ed::object::data_xform_create_ex(), deformVerts_do(), draw_select_id_edit_mesh(), blender::ed::sculpt_paint::mask::duplicate_mask(), blender::ed::sculpt_paint::hide::duplicate_visibility_bmesh(), ED_mesh_mirror_spatial_table_begin(), ED_mesh_mirrtopo_init(), ED_mesh_mirrtopo_recalc_check(), ED_uvedit_foreach_uv(), EDBM_automerge(), edbm_decimate_exec(), edbm_dissolve_degenerate_exec(), EDBM_elem_from_index_any(), EDBM_elem_to_index_any(), edbm_hide_exec(), EDBM_mesh_stats_multi(), EDBM_op_finish(), edbm_remove_doubles_exec(), edbm_rip_invoke__edge(), edbm_rip_invoke__vert(), edbm_select_axis_exec(), edbm_select_random_exec(), edbm_set_normals_from_faces_exec(), edbm_shortest_path_pick_exec(), EDBM_unified_findnearest_from_raycast(), EDBM_verts_mirror_cache_begin_ex(), EDBM_verts_mirror_get(), editbmesh_get_x_mirror_vert_topo(), editmesh_partial_update_begin_fn(), editmesh_snap_mode_supported(), blender::draw::extract_points_bm(), blender::ed::sculpt_paint::fake_neighbor_search(), get_domains(), blender::ed::object::get_vert_def_nr(), give_parvert(), gizmo_preselect_elem_test_select(), initTransform(), mesh_calc_path_region_elem(), mesh_customdata_get_type(), mesh_partial_ensure(), mesh_partial_update(), blender::draw::mesh_render_data_create(), mesh_separate_loose(), mesh_symmetry_snap_exec(), multires_unsubdivide_extract_grids(), multires_unsubdivide_single_level(), blender::ed::sculpt_paint::auto_mask::normal_occlusion_automasking_fill(), blender::ed::object::object_origin_set_exec(), solidify_add_thickness(), sort_bmelem_flag(), stats_object_edit(), stats_object_sculpt(), stitch_init(), TEST(), transform_convert_mesh_crazyspace_detect(), transform_convert_mesh_islands_calc(), transform_convert_mesh_mirrordata_calc(), unsubdivide_face_center_vertex_tag(), unsubdivide_init_elem_ids(), update_data_blocks(), and uv_sculpt_stroke_init().

◆ totvertsel

int BMesh::totvertsel

Definition at line 300 of file bmesh_class.hh.

Referenced by average_islands_scale_exec(), BKE_mesh_count_selected_items(), BM_lnorspace_invalidate(), BM_mesh_copy(), BM_mesh_elem_hflag_disable_test(), BM_mesh_select_mode_clean_ex(), bm_mesh_verts_select_get_n(), bm_vert_connect_select_history(), BM_vert_select_set(), createTransEditVerts(), createTransMeshSkin(), createTransMeshVertCData(), do_lasso_select_mesh(), do_mesh_box_select(), ED_uvedit_foreach_uv(), edbm_add_edge_face_exec(), edbm_add_edge_face_exec__tricky_extend_sel(), edbm_bevel_init(), edbm_blend_from_shape_exec(), edbm_bridge_edge_loops_exec(), edbm_connect_vert_pair(), edbm_delete_exec(), edbm_dissolve_limited_exec(), edbm_dissolve_verts_exec(), edbm_do_smooth_laplacian_vertex_exec(), edbm_do_smooth_vertex_exec(), edbm_dupli_extrude_cursor_invoke(), edbm_duplicate_exec(), edbm_edge_split_selected_verts(), edbm_extrude_context_exec(), edbm_extrude_mesh(), edbm_extrude_region_exec(), edbm_extrude_verts_exec(), edbm_flag_disable_all_multi(), edbm_flip_normals_exec(), edbm_hide_exec(), edbm_inset_init(), edbm_mark_sharp_exec(), edbm_merge_exec(), EDBM_mesh_deselect_all_multi_ex(), EDBM_mesh_stats_multi(), edbm_normals_tools_exec(), edbm_remove_doubles_exec(), edbm_rip_edge_invoke(), edbm_rip_invoke(), edbm_screw_exec(), edbm_select_all_exec(), edbm_select_axis_exec(), edbm_select_less_exec(), edbm_select_mirror_exec(), edbm_select_more_exec(), edbm_select_nth_exec(), EDBM_select_toggle_all(), edbm_select_ungrouped_exec(), EDBM_selectmode_convert(), EDBM_selectmode_set(), edbm_separate_exec(), edbm_shape_propagate_to_all_exec(), edbm_shortest_path_pick_invoke(), edbm_shortest_path_select_exec(), edbm_sort_elements_exec(), edbm_split_exec(), EDBM_stats_update(), edbm_unsubdivide_exec(), edbm_vert_connect_path_exec(), getTransformOrientation_ex(), gizmo_3d_foreach_selected(), initTransform(), mesh_circle_select(), mesh_partial_update(), mesh_symmetrize_exec(), mesh_symmetry_snap_exec(), mouse_mesh_loop(), recount_totsels_are_ok(), recount_totvertsel(), similar_vert_select_exec(), snap_curs_to_sel_ex(), snap_sel_to_grid_exec(), snap_selected_to_location(), stats_object_edit(), stitch_exit(), stitch_invoke(), uv_pin_exec(), uv_remove_doubles_to_selected(), uv_select_similar_edge_exec(), uv_select_similar_vert_exec(), uv_snap_selection_exec(), uv_weld_align(), uvedit_select_is_any_selected(), and v3d_editvertex_buts().

◆ use_toolflags

◆ vdata

CustomData BMesh::vdata

Definition at line 339 of file bmesh_class.hh.

Referenced by blender::ed::sculpt_paint::expand::any_nonzero_mask(), armature_deform_coords_impl(), assert_bmesh_has_no_mesh_only_attributes(), BKE_mesh_ensure_skin_customdata(), BKE_pbvh_bmesh_after_stroke(), BM_data_interp_from_verts(), BM_data_layer_copy(), BM_elem_attrs_copy(), BM_elem_attrs_copy(), bm_extrude_disable_skin_root(), BM_face_interp_from_face_ex(), bm_grid_fill_array(), bm_interp_face_free(), bm_interp_face_store(), bm_kill_only_vert(), BM_log_all_added(), BM_log_before_all_removed(), bm_log_vert_values_swap(), bm_log_verts_restore(), bm_log_verts_unmake(), BM_loop_interp_from_face(), BM_mesh_bm_from_me(), BM_mesh_bm_to_me_compact(), BM_mesh_clear(), BM_mesh_copy(), BM_mesh_copy_arrays(), BM_mesh_copy_init_customdata(), BM_mesh_copy_init_customdata_all_layers(), BM_mesh_copy_init_customdata_from_mesh_array(), BM_mesh_create(), BM_mesh_data_free(), BM_mesh_debug_info(), BM_mesh_decimate_collapse(), BM_mesh_remap(), BM_mesh_wireframe(), bm_to_mesh_shape(), bm_to_mesh_shape_layer_index_from_kb(), bm_to_mesh_vertex_map(), blender::bm_to_mesh_verts(), BM_vert_create(), BM_vert_interp_from_face(), blender::ed::sculpt_paint::undo::bmesh_enable(), blender::ed::sculpt_paint::undo::bmesh_push(), blender::bke::pbvh::bmesh_update_topology(), bmo_bevel_exec(), bmo_bisect_edges_exec(), bmo_extrude_edge_only_exec(), bmo_extrude_face_region_exec(), bmo_extrude_vert_indiv_exec(), bmo_mesh_copy(), bmo_subd_init_shape_info(), bmo_subdivide_edges_exec(), bmo_transform_exec(), bpy_bm_customdata_get(), BPy_BMesh_CreatePyObject(), bpy_bmesh_dealloc(), BPy_BMVert_CreatePyObject(), bpy_bmvert_dealloc(), bpy_bmvertseq_new(), blender::bke::build_pbvh_for_dynamic_topology(), construct_param_handle(), construct_param_handle_multi(), contarget_get_mesh_mat(), createTransMeshSkin(), createTransMeshVertCData(), curve_deform_coords_impl(), deformVerts_do(), blender::ed::sculpt_paint::dyntopo::disable(), blender::ed::sculpt_paint::do_mask_brush(), blender::ed::sculpt_paint::do_smooth_mask_brush(), blender::ed::sculpt_paint::mask::duplicate_mask(), ED_mesh_active_dvert_get_em(), edbm_blend_from_shape_exec(), edbm_decimate_exec(), edbm_select_ungrouped_exec(), edbm_select_ungrouped_poll(), EDBM_verts_mirror_cache_begin_ex(), EDBM_verts_mirror_cache_clear(), EDBM_verts_mirror_get(), blender::ed::sculpt_paint::dyntopo::enable_ex(), blender::draw::extract_sculpt_data(), blender::draw::extract_skin_roots(), blender::draw::extract_tan_init_common(), blender::draw::extract_weights_bm(), blender::ed::sculpt_paint::fill_factor_from_hide_and_mask(), blender::ed::sculpt_paint::mask::fill_mask_bmesh(), blender::draw::pbvh::fill_vbos_bmesh(), blender::bke::pbvh::Tree::from_bmesh(), blender::ed::sculpt_paint::mask::gather_mask_bmesh(), geometry_extract_tag_masked_faces(), blender::ed::sculpt_paint::mask::gesture_apply_for_symmetry_pass(), blender::draw::pbvh::get_cdata(), blender::draw::get_custom_data_for_domain(), get_domains(), get_weights_array(), blender::ed::sculpt_paint::boundary::init_falloff_bmesh(), blender::ed::sculpt_paint::mask::invert_mask_bmesh(), lattice_deform_coords_impl(), mesh_customdata_get_type(), mesh_skin_transdata_create(), blender::draw::overlay::Sculpts::mesh_sync(), modify_mesh(), object_defgroup_remove_edit_mode(), output_frames(), OVERLAY_sculpt_cache_populate(), blender::ed::sculpt_paint::hide::partialvis_masked_update_bmesh(), blender::ed::sculpt_paint::undo::restore_mask_from_undo_step(), blender::ed::object::return_editmesh_vgroup(), blender::ed::sculpt_paint::mask::scatter_mask_bmesh(), blender::ed::sculpt_paint::mask::sculpt_mask_filter_exec(), blender::ed::sculpt_paint::mask::sculpt_mask_init_exec(), shape_itemf(), shape_propagate(), similar_vert_select_exec(), blender::ed::object::skin_loose_mark_clear_exec(), blender::ed::object::skin_radii_equalize_exec(), blender::ed::object::skin_root_mark_exec(), skin_smooth_hulls(), slice_paint_mask(), TEST(), update_data_blocks(), blender::ed::sculpt_paint::expand::update_for_vert(), blender::bke::pbvh::update_mask_bmesh(), v3d_editvertex_buts(), blender::ed::object::vgroup_assign_verts(), blender::ed::object::vgroup_do_remap(), blender::ed::object::vgroup_normalize_active_vertex(), blender::ed::object::vgroup_parray_alloc(), blender::ed::object::vgroup_vert_active_mirror(), and blender::ed::sculpt_paint::expand::write_mask_data().

◆ vpool

◆ vtable

◆ vtable_tot

int BMesh::vtable_tot

Definition at line 328 of file bmesh_class.hh.

Referenced by BM_mesh_elem_table_ensure(), and BM_mesh_rebuild().

◆ vtoolflagpool


The documentation for this struct was generated from the following file: