Blender
V3.3
|
Go to the source code of this file.
Macros | |
#define | BM_elem_flag_test(ele, hflag) _bm_elem_flag_test(&(ele)->head, hflag) |
#define | BM_elem_flag_test_bool(ele, hflag) _bm_elem_flag_test_bool(&(ele)->head, hflag) |
#define | BM_elem_flag_enable(ele, hflag) _bm_elem_flag_enable(&(ele)->head, hflag) |
#define | BM_elem_flag_disable(ele, hflag) _bm_elem_flag_disable(&(ele)->head, hflag) |
#define | BM_elem_flag_set(ele, hflag, val) _bm_elem_flag_set(&(ele)->head, hflag, val) |
#define | BM_elem_flag_toggle(ele, hflag) _bm_elem_flag_toggle(&(ele)->head, hflag) |
#define | BM_elem_flag_merge(ele_a, ele_b) _bm_elem_flag_merge(&(ele_a)->head, &(ele_b)->head) |
#define | BM_elem_flag_merge_ex(ele_a, ele_b, hflag_and) _bm_elem_flag_merge_ex(&(ele_a)->head, &(ele_b)->head, hflag_and) |
#define | BM_elem_flag_merge_into(ele, ele_a, ele_b) _bm_elem_flag_merge_into(&(ele)->head, &(ele_a)->head, &(ele_b)->head) |
#define | BM_elem_index_get(ele) _bm_elem_index_get(&(ele)->head) |
#define | BM_elem_index_set(ele, index) _bm_elem_index_set(&(ele)->head, index) |
Functions | |
ATTR_WARN_UNUSED_RESULT BLI_INLINE char | _bm_elem_flag_test (const BMHeader *head, const char hflag) |
ATTR_WARN_UNUSED_RESULT BLI_INLINE bool | _bm_elem_flag_test_bool (const BMHeader *head, const char hflag) |
BLI_INLINE void | _bm_elem_flag_enable (BMHeader *head, const char hflag) |
BLI_INLINE void | _bm_elem_flag_disable (BMHeader *head, const char hflag) |
BLI_INLINE void | _bm_elem_flag_set (BMHeader *head, const char hflag, const int val) |
BLI_INLINE void | _bm_elem_flag_toggle (BMHeader *head, const char hflag) |
BLI_INLINE void | _bm_elem_flag_merge (BMHeader *head_a, BMHeader *head_b) |
BLI_INLINE void | _bm_elem_flag_merge_ex (BMHeader *head_a, BMHeader *head_b, const char hflag_and) |
BLI_INLINE void | _bm_elem_flag_merge_into (BMHeader *head, const BMHeader *head_a, const BMHeader *head_b) |
BLI_INLINE void | _bm_elem_index_set (BMHeader *head, const int index) |
ATTR_WARN_UNUSED_RESULT BLI_INLINE int | _bm_elem_index_get (const BMHeader *head) |
BM Inline functions.
Definition in file bmesh_inline.h.
#define BM_elem_flag_disable | ( | ele, | |
hflag | |||
) | _bm_elem_flag_disable(&(ele)->head, hflag) |
Definition at line 15 of file bmesh_inline.h.
#define BM_elem_flag_enable | ( | ele, | |
hflag | |||
) | _bm_elem_flag_enable(&(ele)->head, hflag) |
Definition at line 14 of file bmesh_inline.h.
#define BM_elem_flag_merge | ( | ele_a, | |
ele_b | |||
) | _bm_elem_flag_merge(&(ele_a)->head, &(ele_b)->head) |
Definition at line 18 of file bmesh_inline.h.
#define BM_elem_flag_merge_ex | ( | ele_a, | |
ele_b, | |||
hflag_and | |||
) | _bm_elem_flag_merge_ex(&(ele_a)->head, &(ele_b)->head, hflag_and) |
Definition at line 19 of file bmesh_inline.h.
#define BM_elem_flag_merge_into | ( | ele, | |
ele_a, | |||
ele_b | |||
) | _bm_elem_flag_merge_into(&(ele)->head, &(ele_a)->head, &(ele_b)->head) |
Definition at line 21 of file bmesh_inline.h.
#define BM_elem_flag_set | ( | ele, | |
hflag, | |||
val | |||
) | _bm_elem_flag_set(&(ele)->head, hflag, val) |
Definition at line 16 of file bmesh_inline.h.
#define BM_elem_flag_test | ( | ele, | |
hflag | |||
) | _bm_elem_flag_test(&(ele)->head, hflag) |
Definition at line 12 of file bmesh_inline.h.
#define BM_elem_flag_test_bool | ( | ele, | |
hflag | |||
) | _bm_elem_flag_test_bool(&(ele)->head, hflag) |
Definition at line 13 of file bmesh_inline.h.
#define BM_elem_flag_toggle | ( | ele, | |
hflag | |||
) | _bm_elem_flag_toggle(&(ele)->head, hflag) |
Definition at line 17 of file bmesh_inline.h.
#define BM_elem_index_get | ( | ele | ) | _bm_elem_index_get(&(ele)->head) |
notes on BM_elem_index_set(...) usage, Set index is sometimes abused as temp storage, other times we can't be sure if the index values are valid because certain operations have modified the mesh structure.
To set the elements to valid indices 'BM_mesh_elem_index_ensure' should be used rather than adding inline loops, however there are cases where we still set the index directly
In an attempt to manage this, here are 5 tags I'm adding to uses of BM_elem_index_set
Definition at line 110 of file bmesh_inline.h.
#define BM_elem_index_set | ( | ele, | |
index | |||
) | _bm_elem_index_set(&(ele)->head, index) |
Definition at line 111 of file bmesh_inline.h.
BLI_INLINE void _bm_elem_flag_disable | ( | BMHeader * | head, |
const char | hflag | ||
) |
Definition at line 41 of file bmesh_inline.h.
References BMHeader::hflag.
Referenced by _bm_elem_flag_set().
BLI_INLINE void _bm_elem_flag_enable | ( | BMHeader * | head, |
const char | hflag | ||
) |
Definition at line 36 of file bmesh_inline.h.
References BMHeader::hflag.
Referenced by _bm_elem_flag_set().
BLI_INLINE void _bm_elem_flag_merge | ( | BMHeader * | head_a, |
BMHeader * | head_b | ||
) |
Definition at line 61 of file bmesh_inline.h.
References BMHeader::hflag.
Referenced by _bm_elem_flag_merge_ex().
BLI_INLINE void _bm_elem_flag_merge_ex | ( | BMHeader * | head_a, |
BMHeader * | head_b, | ||
const char | hflag_and | ||
) |
Definition at line 66 of file bmesh_inline.h.
References _bm_elem_flag_merge(), and BMHeader::hflag.
BLI_INLINE void _bm_elem_flag_merge_into | ( | BMHeader * | head, |
const BMHeader * | head_a, | ||
const BMHeader * | head_b | ||
) |
Definition at line 75 of file bmesh_inline.h.
References BMHeader::hflag.
BLI_INLINE void _bm_elem_flag_set | ( | BMHeader * | head, |
const char | hflag, | ||
const int | val | ||
) |
Definition at line 46 of file bmesh_inline.h.
References _bm_elem_flag_disable(), and _bm_elem_flag_enable().
ATTR_WARN_UNUSED_RESULT BLI_INLINE char _bm_elem_flag_test | ( | const BMHeader * | head, |
const char | hflag | ||
) |
Definition at line 25 of file bmesh_inline.h.
References BMHeader::hflag.
ATTR_WARN_UNUSED_RESULT BLI_INLINE bool _bm_elem_flag_test_bool | ( | const BMHeader * | head, |
const char | hflag | ||
) |
Definition at line 31 of file bmesh_inline.h.
References BMHeader::hflag.
BLI_INLINE void _bm_elem_flag_toggle | ( | BMHeader * | head, |
const char | hflag | ||
) |
Definition at line 56 of file bmesh_inline.h.
References BMHeader::hflag.
ATTR_WARN_UNUSED_RESULT BLI_INLINE int _bm_elem_index_get | ( | const BMHeader * | head | ) |
Definition at line 119 of file bmesh_inline.h.
References BMHeader::index.
BLI_INLINE void _bm_elem_index_set | ( | BMHeader * | head, |
const int | index | ||
) |
Definition at line 113 of file bmesh_inline.h.
References BMHeader::index.