Blender V5.0
BMFace Struct Reference

#include <bmesh_class.hh>

Public Attributes

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

Detailed Description

Definition at line 273 of file bmesh_class.hh.

Member Data Documentation

◆ head

◆ l_first

◆ len

int BMFace::len

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

Definition at line 287 of file bmesh_class.hh.

Referenced by add_neighbors(), bevel_build_trifan(), 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(), blender::bke::pbvh::bm_face_as_array(), 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_from_edge_pair(), BM_face_calc_tangent_pair_auto(), bm_face_calc_tangent_pair_from_quad_edge_pair(), BM_face_calc_tessellation(), bm_face_connect_verts(), bm_face_convex_tag_verts(), bm_face_copy_impl(), bm_face_copy_with_arrays(), BM_face_create(), bm_face_create__internal(), BM_face_edges_kill(), BM_face_exists(), BM_face_exists_overlap_subset(), blender::bke::pbvh::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(), blender::bm_face_loop_table_build(), BM_face_point_inside_test(), bm_face_region_vert_pass_id(), bm_face_reverse_colors(), bm_face_reverse_uvs(), bm_face_slice(), 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_faces_join_pair_by_edge(), 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_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_is_valid(), BM_mesh_partial_create_from_verts_group_multi(), BM_mesh_partial_create_from_verts_group_single(), BM_mesh_triangulate(), bm_mesh_uvselect_check_flush(), BM_mesh_wireframe(), bm_select_edgeloop_double_side_next(), bm_uidwalk_calc_face_uid(), bm_uidwalk_init_from_edge(), BM_uv_element_map_create(), BM_uv_vert_map_create(), bm_vert_collapse_is_degenerate(), 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_find_doubles_by_distance_connected_impl(), 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_face_make_edge(), bmesh_loop_validate(), blender::bke::pbvh::bmesh_node_nearest_to_ray(), 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_flip_quad_tessellation_exec(), bmo_holes_fill_exec(), bmo_join_triangles_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(), bpy_bmface_repr(), blender::draw::calc_face_tri_starts_bmesh(), 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_data_bmesh_edge(), blender::draw::extract_data_bmesh_face(), blender::draw::extract_data_bmesh_loop(), blender::draw::extract_data_bmesh_vert(), blender::draw::extract_edituv_lines_bm(), blender::draw::extract_edituv_points_bm(), face_dupli_from_editmesh(), fill_laplacian_matrix(), get_uv_face_needle(), init_laplacian_matrix(), blender::ed::transform::isect_face_dst(), blender::ed::transform::isect_face_dst(), make_child_duplis_faces_from_editmesh(), mesh_calc_path_region_elem(), mesh_calc_path_region_elem(), blender::ed::transform::mesh_customdatacorrect_restore(), blender::bke::pbvh::node_raycast_bmesh(), blender::bke::pbvh::pbvh_bmesh_split_edge(), blender::bke::pbvh::raycast_node_detail_bmesh(), remdoubles_createface(), reprioritize_face_neighbors(), reset_uvs_bmesh(), 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(), unsubdivide_is_all_quads(), uv_copy_mirrored_faces(), uv_cylinder_project(), uv_map_mirror(), uv_select_edgering(), uv_select_faceloop(), uv_select_overlap(), uv_select_similar_edge_exec(), uv_select_similar_vert_exec(), uv_sphere_project(), uvedit_pack_islands_multi(), view3d_preselect_mesh_elem_update_from_face(), and view3d_preselect_update_preview_triangle_from_face().

◆ mat_nr

◆ no

float BMFace::no[3]

Face normal, see BM_face_calc_normal.

Definition at line 291 of file bmesh_class.hh.

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_elem_attrs_copy(), BM_elem_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(), blender::draw::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_collapse_is_degenerate(), BM_loop_interp_from_face(), bm_mesh_calc_tessellation__single_threaded(), BM_mesh_calc_uvs_cone(), bm_mesh_copy_new_face(), bm_mesh_loops_calc_normals_for_loop(), bm_mesh_loops_calc_normals_no_autosmooth(), bm_vert_boundary_tangent(), bm_vert_calc_normals_impl(), BM_vert_interp_from_face(), bm_vert_pair_share_best_splittable_face_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_normals_tools_exec(), edbm_select_linked_flat_faces_exec(), edbm_select_sharp_edges_exec(), edge_edge_angle_less_than_180(), edges_angle_kind(), face_to_plane(), blender::ed::transform::getTransformOrientation_ex(), knife_bvh_raycast_cb(), knife_snap_angle_relative(), blender::bke::pbvh::long_edge_queue_edge_add_recursive(), blender::bke::pbvh::long_edge_queue_face_add(), blender::geometry::boolean::mesh_bm_concat(), blender::ed::transform::mesh_customdatacorrect_face_substitute_get(), blender::ed::transform::mesh_customdatacorrect_face_substitute_set(), blender::ed::transform::mesh_customdatacorrect_find_best_face_substitute(), modify_mesh(), normals_split(), offset_meet(), point_between_edges(), projected_boundary_area(), recalc_face_normals_find_index(), reprioritize_face_neighbors(), blender::ed::mesh::set_sharpness_by_angle_exec(), blender::bke::pbvh::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(), 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: