diff options
Diffstat (limited to 'source/blender/bmesh')
-rw-r--r-- | source/blender/bmesh/intern/bmesh_mods.c | 11 | ||||
-rw-r--r-- | source/blender/bmesh/intern/bmesh_mods.h | 2 |
2 files changed, 13 insertions, 0 deletions
diff --git a/source/blender/bmesh/intern/bmesh_mods.c b/source/blender/bmesh/intern/bmesh_mods.c index bc0a09636f7..e1aa5fcfee1 100644 --- a/source/blender/bmesh/intern/bmesh_mods.c +++ b/source/blender/bmesh/intern/bmesh_mods.c @@ -716,6 +716,17 @@ BMVert *BM_edge_split_n(BMesh *bm, BMEdge *e, int numcuts, BMVert **r_varr) return v_new; } +/** + * Swap v1 & v2 + * + * \note Typically we shouldn't care about this, however it's used when extruding wire edges. + */ +void BM_edge_verts_swap(BMEdge *e) +{ + SWAP(BMVert *, e->v1, e->v2); + SWAP(BMDiskLink, e->v1_disk_link, e->v2_disk_link); +} + #if 0 /** * Checks if a face is valid in the data structure diff --git a/source/blender/bmesh/intern/bmesh_mods.h b/source/blender/bmesh/intern/bmesh_mods.h index 87893727192..ce0234ed61f 100644 --- a/source/blender/bmesh/intern/bmesh_mods.h +++ b/source/blender/bmesh/intern/bmesh_mods.h @@ -57,6 +57,8 @@ BMVert *BM_edge_split(BMesh *bm, BMEdge *e, BMVert *v, BMEdge **r_e, float perce BMVert *BM_edge_split_n(BMesh *bm, BMEdge *e, int numcuts, BMVert **r_varr); +void BM_edge_verts_swap(BMEdge *e); + bool BM_face_validate(BMFace *face, FILE *err); void BM_edge_calc_rotate( |