Blender
V3.3
|
#include "bmesh_structure.h"
Go to the source code of this file.
Macros | |
#define | BM_CHECK_ELEMENT(el) |
#define | BM_ELEM_API_FLAG_ENABLE(element, f) |
#define | BM_ELEM_API_FLAG_DISABLE(element, f) |
#define | BM_ELEM_API_FLAG_TEST(element, f) ((element)->head.api_flag & (f)) |
#define | BM_ELEM_API_FLAG_CLEAR(element) |
Enumerations | |
enum | { _FLAG_JF = (1 << 0) , _FLAG_MF = (1 << 1) , _FLAG_MV = (1 << 1) , _FLAG_OVERLAP = (1 << 2) , _FLAG_WALK = (1 << 3) , _FLAG_WALK_ALT = (1 << 4) , _FLAG_ELEM_CHECK = (1 << 7) } |
Functions | |
int | bmesh_elem_check (void *element, char htype) |
int | bmesh_radial_length (const BMLoop *l) |
int | bmesh_disk_count_at_most (const BMVert *v, int count_max) |
int | bmesh_disk_count (const BMVert *v) |
void | poly_rotate_plane (const float normal[3], float(*verts)[3], uint nverts) |
POLY ROTATE PLANE. More... | |
Private function prototypes for bmesh public API. This file is a grab-bag of functions from various parts of the bmesh internals.
Definition in file bmesh_private.h.
#define BM_CHECK_ELEMENT | ( | el | ) |
Definition at line 32 of file bmesh_private.h.
Definition at line 77 of file bmesh_private.h.
Definition at line 71 of file bmesh_private.h.
Definition at line 66 of file bmesh_private.h.
Definition at line 76 of file bmesh_private.h.
anonymous enum |
Internal BMHeader.api_flag
Enumerator | |
---|---|
_FLAG_JF | |
_FLAG_MF | |
_FLAG_MV | |
_FLAG_OVERLAP | |
_FLAG_WALK | |
_FLAG_WALK_ALT | |
_FLAG_ELEM_CHECK |
Definition at line 55 of file bmesh_private.h.
int bmesh_disk_count | ( | const BMVert * | v | ) |
Definition at line 200 of file bmesh_structure.c.
References bmesh_disk_edge_next(), count, BMVert::e, and v.
Referenced by BM_vert_collapse_faces(), BM_vert_edge_count(), bmesh_kernel_join_edge_kill_vert(), and bmesh_kernel_split_edge_make_vert().
int bmesh_disk_count_at_most | ( | const BMVert * | v, |
int | count_max | ||
) |
Definition at line 213 of file bmesh_structure.c.
References bmesh_disk_edge_next(), count, BMVert::e, and v.
Referenced by BM_vert_edge_count_at_most(), bmesh_disk_validate(), bmesh_elem_check(), and bmesh_kernel_join_edge_kill_vert().
int bmesh_elem_check | ( | void * | element, |
char | htype | ||
) |
Check the element is valid.
BMESH_TODO, when this raises an error the output is incredibly confusing. need to have some nice way to print/debug what the heck's going on.
Definition at line 487 of file bmesh_core.c.
References _FLAG_ELEM_CHECK, BLI_assert, BM_EDGE, BM_ELEM_API_FLAG_DISABLE, BM_ELEM_API_FLAG_ENABLE, BM_ELEM_API_FLAG_TEST, BM_FACE, BM_FACE_FIRST_LOOP, BM_LOOP, BM_NGON_MAX, BM_VERT, BM_vert_in_edge(), BMESH_ASSERT, bmesh_disk_count_at_most(), bmesh_radial_length(), bmesh_radial_validate(), BMVert::e, BMLoop::e, e, element, err, BMLoop::f, BMVert::head, BMEdge::head, BMFace::head, BMHeader::htype, l, BMFace::l_first, BMFace::len, len, BMLoop::next, NULL, BMLoop::radial_next, BMLoop::radial_prev, BMLoop::v, and v.
int bmesh_radial_length | ( | const BMLoop * | l | ) |
Definition at line 466 of file bmesh_structure.c.
References BM_LOOP_RADIAL_MAX, BMESH_ASSERT, l, BMLoop::radial_next, and UNLIKELY.
Referenced by BM_edge_splice(), bmesh_elem_check(), bmesh_kernel_edge_separate(), bmesh_kernel_join_edge_kill_vert(), bmesh_kernel_split_edge_make_vert(), and bmesh_radial_validate().
POLY ROTATE PLANE.
Rotates a polygon so that its normal is pointing towards the mesh Z axis
Definition at line 570 of file bmesh_polygon.c.
References axis_dominant_v3_to_m3(), copy_v3_v3(), mul_v2_m3v3(), normal, and verts.
Referenced by quad_co().