32
int BM_vert_dissolve(BMesh *bm, BMVert *v);
34
int BM_disk_dissolve(BMesh *bm, BMVert *v);
36
BMFace *BM_faces_join_pair(BMesh *bm, BMFace *f1, BMFace *f2, BMEdge *e, const short do_del);
32
bool BM_vert_dissolve(BMesh *bm, BMVert *v);
34
bool BM_disk_dissolve(BMesh *bm, BMVert *v);
36
BMFace *BM_faces_join_pair(BMesh *bm, BMFace *f1, BMFace *f2, BMEdge *e, const bool do_del);
38
38
BMEdge *BM_verts_connect(BMesh *bm, BMVert *v1, BMVert *v2, BMFace **r_f);
40
40
BMFace *BM_face_split(BMesh *bm, BMFace *f,
41
41
BMVert *v1, BMVert *v2,
43
BMEdge *example, const short nodouble);
43
BMEdge *example, const bool no_double);
45
45
BMFace *BM_face_split_n(BMesh *bm, BMFace *f,
46
46
BMVert *v1, BMVert *v2,
47
47
float cos[][3], int n,
48
48
BMLoop **r_l, BMEdge *example);
50
BMEdge* BM_vert_collapse_faces(BMesh *bm, BMEdge *ke, BMVert *kv, float fac,
51
const short join_faces, const short kill_degenerate_faces);
52
BMEdge* BM_vert_collapse_edge(BMesh *bm, BMEdge *ke, BMVert *kv,
53
const short kill_degenerate_faces);
50
BMEdge *BM_vert_collapse_faces(BMesh *bm, BMEdge *ke, BMVert *kv, float fac,
51
const bool join_faces, const bool kill_degenerate_faces);
52
BMEdge *BM_vert_collapse_edge(BMesh *bm, BMEdge *ke, BMVert *kv,
53
const bool kill_degenerate_faces);
56
56
BMVert *BM_edge_split(BMesh *bm, BMEdge *e, BMVert *v, BMEdge **r_e, float percent);
58
58
BMVert *BM_edge_split_n(BMesh *bm, BMEdge *e, int numcuts);
60
int BM_face_validate(BMFace *face, FILE *err);
60
bool BM_face_validate(BMFace *face, FILE *err);
62
void BM_edge_calc_rotate(BMEdge *e, int ccw,
62
void BM_edge_calc_rotate(BMEdge *e, const bool ccw,
63
63
BMLoop **r_l1, BMLoop **r_l2);
64
int BM_edge_rotate_check(BMEdge *e);
65
int BM_edge_rotate_check_degenerate(BMEdge *e,
64
bool BM_edge_rotate_check(BMEdge *e);
65
bool BM_edge_rotate_check_degenerate(BMEdge *e,
66
66
BMLoop *l1, BMLoop *l2);
67
int BM_edge_rotate_check_beauty(BMEdge *e,
67
bool BM_edge_rotate_check_beauty(BMEdge *e,
68
68
BMLoop *l1, BMLoop *l2);
69
BMEdge *BM_edge_rotate(BMesh *bm, BMEdge *e, const short ccw, const short check_flag);
69
BMEdge *BM_edge_rotate(BMesh *bm, BMEdge *e, const bool ccw, const short check_flag);
71
71
/* flags for BM_edge_rotate */