Blender  V3.3
Public Attributes | List of all members
BMFace Struct Reference

#include <bmesh_class.h>

Public Attributes

BMHeader head
 
BMLoopl_first
 
int len
 
float no [3]
 
short mat_nr
 

Detailed Description

Definition at line 254 of file bmesh_class.h.

Member Data Documentation

◆ head

BMHeader BMFace::head

◆ l_first

BMLoop* BMFace::l_first

◆ len

int BMFace::len

Number of vertices in the face (the length of BMFace.l_first circular linked list).

Definition at line 267 of file bmesh_class.h.

Referenced by bevel_build_trifan(), BKE_editmesh_loop_tangent_calc(), BKE_pbvh_bmesh_node_raycast_detail(), bm_decim_edge_collapse(), bm_decim_triangulate_begin(), bm_decim_triangulate_end(), bm_edge_collapse(), bm_edge_collapse_is_degenerate_topology(), BM_edge_is_any_face_len_test(), BM_edge_pair_share_face_by_len(), BM_edge_share_quad_check(), bm_face_array_calc_unique_uv_coords(), bm_face_as_array_index_tri(), BM_face_as_array_loop_quad(), BM_face_as_array_loop_tri(), BM_face_as_array_vert_quad(), BM_face_as_array_vert_tri(), bm_face_bisect_verts(), BM_face_calc_center_median(), BM_face_calc_normal(), BM_face_calc_normal_vcos(), BM_face_calc_point_in_face(), bm_face_calc_poly_center_median_vertex_cos(), BM_face_calc_tangent_auto(), BM_face_calc_tangent_edge_pair(), BM_face_calc_tessellation(), bm_face_connect_verts(), bm_face_convex_tag_verts(), BM_face_copy(), bm_face_copy_with_arrays(), BM_face_create(), bm_face_create__internal(), BM_face_edges_kill(), BM_face_exists(), BM_face_exists_overlap_subset(), bm_face_exists_tri_from_loop_vert(), BM_face_find_double(), BM_face_interp_from_face(), BM_face_interp_from_face_ex(), BM_face_kill(), bm_face_len_cmp(), BM_face_point_inside_test(), bm_face_region_vert_boundary_id(), bm_face_region_vert_pass_id(), bm_face_reverse_colors(), bm_face_reverse_uvs(), bm_face_slice(), bm_face_split(), bm_face_split_by_concave(), BM_face_split_edgenet(), BM_face_split_edgenet_connect_islands(), bm_face_split_find(), BM_face_splits_check_legal(), BM_face_triangulate(), bm_face_triangulate(), bm_face_triangulate_mapping(), BM_face_uv_calc_center_median(), BM_face_uv_calc_cross(), BM_face_uv_point_inside_test(), BM_face_verts_kill(), bm_interp_face_free(), bm_interp_face_store(), BM_iter_mesh_bitmap_from_filter_tessface(), BM_log_face_added(), bm_log_face_alloc(), BM_loop_at_index_find(), BM_loop_interp_from_face(), BM_loop_interp_multires_ex(), BM_mesh_bm_to_me(), BM_mesh_bm_to_me_for_eval(), bm_mesh_calc_tessellation__single_threaded(), BM_mesh_calc_tessellation_beauty(), BM_mesh_calc_uvs_cone(), bm_mesh_calc_uvs_sphere_face(), bm_mesh_calc_volume_face(), bm_mesh_copy_new_face(), BM_mesh_intersect(), BM_mesh_partial_create_from_verts_group_multi(), BM_mesh_partial_create_from_verts_group_single(), BM_mesh_triangulate(), BM_mesh_wireframe(), bm_select_edgeloop_double_side_next(), bm_uuidwalk_calc_face_uuid(), bm_uuidwalk_init_from_edge(), BM_uv_element_map_create(), BM_uv_vert_map_create(), bm_vert_collapse_is_degenerate(), bm_vert_dissolve_fan(), bm_vert_fasthash_single(), BM_vert_interp_from_face(), BM_vert_pair_share_face_by_len(), BM_verts_in_face(), bmesh_calc_tessellation_for_face_beauty(), bmesh_calc_tessellation_for_face_impl(), bmesh_elem_check(), bmesh_kernel_join_edge_kill_vert(), bmesh_kernel_join_face_kill_edge(), bmesh_kernel_join_vert_kill_edge(), bmesh_kernel_loop_reverse(), bmesh_kernel_split_edge_make_vert(), bmesh_kernel_split_face_make_edge(), bmesh_loop_validate(), bmo_beautify_fill_exec(), bmo_connect_verts_concave_exec(), bmo_connect_verts_exec(), bmo_connect_verts_nonplanar_exec(), bmo_dissolve_degenerate_exec(), bmo_face_copy(), bmo_face_inset_individual(), bmo_holes_fill_exec(), bmo_join_triangles_exec(), bmo_offset_edgeloops_exec(), bmo_planar_faces_exec(), bmo_poke_exec(), bmo_subdivide_edgering_exec(), bmo_subdivide_edges_exec(), bmo_weld_verts_exec(), bmw_EdgeLoopWalker_begin(), bmw_EdgeringWalker_begin(), bmw_EdgeringWalker_step(), bmw_FaceLoopWalker_include_face(), bmw_FaceLoopWalker_step(), bpy_bmface_repr(), collapse_face_corners(), construct_param_handle_face_add(), DRW_text_edit_mesh_measure_stats(), edbm_add_edge_face_exec__tricky_finalize_sel(), edbm_decimate_exec(), edbm_polybuild_face_at_cursor_invoke(), edbm_select_face_by_sides_exec(), EDBM_verts_mirror_get_face(), edgetag_add_adjacent(), blender::draw::extract_edituv_stretch_area_finish(), blender::draw::extract_fdots_pos_iter_poly_bm(), blender::draw::extract_fdots_uv_iter_poly_bm(), blender::draw::extract_tris_iter_poly_bm(), face_dupli_from_editmesh(), fill_laplacian_matrix(), get_next_loop(), get_uv_face_needle(), GPU_pbvh_bmesh_buffers_update(), init_laplacian_matrix(), make_child_duplis_faces_from_editmesh(), mesh_calc_path_region_elem(), mesh_render_data_mat_tri_len_bm_range_fn(), mesh_render_data_polys_sorted_build(), mesh_uv_reset_bmface(), pbvh_bmesh_collapse_edge(), pbvh_bmesh_node_nearest_to_ray(), pbvh_bmesh_node_raycast(), pbvh_bmesh_split_edge(), remdoubles_createface(), similar_face_select_exec(), skin_fix_hole_no_good_verts(), solidify_add_thickness(), state_step(), blender::draw::statvis_calc_distort(), blender::draw::statvis_calc_intersect(), blender::draw::statvis_calc_overhang(), blender::draw::statvis_calc_thickness(), stitch_init(), stitch_process_data(), stitch_set_face_preview_buffer_position(), tc_mesh_customdatacorrect_restore(), uv_map_mirror(), uv_select_edgering(), uv_select_faceloop(), uv_select_overlap(), uv_select_similar_edge_exec(), uv_select_similar_vert_exec(), verttag_add_adjacent(), view3d_preselect_mesh_elem_update_from_face(), and view3d_preselect_update_preview_triangle_from_face().

◆ mat_nr

short BMFace::mat_nr

◆ no

float BMFace::no[3]

Face normal, see BM_face_calc_normal.

Definition at line 271 of file bmesh_class.h.

Referenced by bevel_harden_normals(), BKE_mesh_foreach_mapped_face_center(), bm_decim_build_quadrics(), BM_edge_calc_face_angle_ex(), BM_edge_calc_face_angle_signed_ex(), BM_edge_calc_face_angle_with_imat3_ex(), BM_edge_calc_face_tangent(), BM_edge_is_convex(), bm_edge_is_delimit(), bm_edge_tag_from_smooth(), bm_edge_tag_from_smooth_and_set_sharp(), BM_editselection_normal(), bm_face_attrs_copy(), bm_face_bisect_verts(), bm_face_calc_normals_cb(), BM_face_calc_tessellation(), BM_face_create(), BM_face_interp_from_face(), BM_face_is_normal_valid(), bm_face_no_get(), BM_face_normal_flip_ex(), BM_face_normal_update(), BM_face_point_inside_test(), bm_face_split_by_concave(), BM_face_split_edgenet(), BM_face_split_edgenet_connect_islands(), bm_face_split_edgenet_find_loop_pair(), BM_face_splits_check_legal(), BM_face_triangulate(), bm_interior_face_group_calc_cost(), bm_interp_face_store(), BM_loop_calc_face_normal(), BM_loop_calc_face_normal_safe_ex(), BM_loop_calc_face_tangent(), bm_loop_collapse_is_degenerate(), BM_loop_interp_from_face(), BM_loop_is_convex(), bm_loop_normal_accum(), BM_loop_point_side_of_edge_test(), BM_loop_point_side_of_loop_test(), bm_mesh_calc_tessellation__single_threaded(), BM_mesh_calc_uvs_cone(), bm_mesh_loops_calc_normals_for_loop(), bm_mesh_loops_calc_normals_no_autosmooth(), bm_partial_faces_parallel_range_calc_normals_cb(), bm_vert_boundary_tangent(), bm_vert_calc_normals_impl(), BM_vert_calc_shell_factor(), BM_vert_calc_shell_factor_ex(), BM_vert_interp_from_face(), bm_vert_pair_share_best_splittable_face_cb(), bm_vert_pair_to_matrix(), bmbvh_find_face_closest_cb(), bmbvh_ray_cast_cb(), BMD_mesh_intersection(), bmesh_calc_tessellation_for_face_beauty(), bmesh_calc_tessellation_for_face_impl(), bmo_extrude_face_region_exec(), bmo_face_inset_individual(), bmo_inset_region_exec(), bmo_planar_faces_exec(), bmo_poke_exec(), C_BVHTree_FromBMesh(), calc_solidify_normals(), doEdgeSplit(), DRW_text_edit_mesh_measure_stats(), edbm_average_normals_exec(), edbm_extrude_discrete_faces(), edbm_face_split_by_edges_exec(), edbm_normals_tools_exec(), edbm_select_linked_flat_faces_exec(), edbm_select_sharp_edges_exec(), edge_edge_angle_less_than_180(), edges_angle_kind(), emdm_ts_GetNormal(), face_to_plane(), get_next_loop(), getTransformOrientation_ex(), GPU_pbvh_bmesh_buffers_update(), knife_bvh_raycast_cb(), knife_snap_angle_relative(), long_edge_queue_edge_add_recursive(), long_edge_queue_face_add(), modifyMesh(), normals_split(), offset_meet(), point_between_edges(), projected_boundary_area(), recalc_face_normals_find_index(), sculpt_face_sets_init_normals_test(), sculpt_gesture_apply_trim(), short_edge_queue_face_add(), similar_face_select_exec(), smart_project_exec(), smart_uv_project_calculate_project_normals(), solidify_add_thickness(), blender::draw::statvis_calc_distort(), tc_mesh_customdatacorrect_face_substitute_get(), tc_mesh_customdatacorrect_face_substitute_set(), tc_mesh_customdatacorrect_find_best_face_substitute(), tc_mesh_customdatacorrect_init_vert(), uvedit_unwrap_cube_project(), vert_face_normal_mark_set(), and vert_face_normal_mark_update().


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