diff options
author | Campbell Barton <ideasman42@gmail.com> | 2013-01-17 01:09:54 +0400 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2013-01-17 01:09:54 +0400 |
commit | 5ddc7d64a85d6e01e7eae1ed904bda635478a24e (patch) | |
tree | 50d1481f1eaf8ffba354ffebe9ac89c5f42ade55 /source/blender/bmesh/intern/bmesh_marking.c | |
parent | 7f513023d4fc730c63a26a445b5523498f554710 (diff) |
optimize bmesh operations that use triangle BMFace's (dyn-topo and mesh conversion).
Diffstat (limited to 'source/blender/bmesh/intern/bmesh_marking.c')
-rw-r--r-- | source/blender/bmesh/intern/bmesh_marking.c | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/source/blender/bmesh/intern/bmesh_marking.c b/source/blender/bmesh/intern/bmesh_marking.c index 66a89c30e92..4e29756104a 100644 --- a/source/blender/bmesh/intern/bmesh_marking.c +++ b/source/blender/bmesh/intern/bmesh_marking.c @@ -710,12 +710,13 @@ void BM_editselection_plane(BMEditSelection *ese, float r_plane[3]) cross_v3_v3v3(r_plane, efa->no, vec); } else { - BMVert *verts[4] = {NULL}; - - BM_iter_as_array(NULL, BM_VERTS_OF_FACE, efa, (void **)verts, 4); - if (efa->len == 4) { + BMVert *verts[4] = {NULL}; float vecA[3], vecB[3]; + + // BM_iter_as_array(NULL, BM_VERTS_OF_FACE, efa, (void **)verts, 4); + BM_face_as_array_vert_quad(efa, verts); + sub_v3_v3v3(vecA, verts[3]->co, verts[2]->co); sub_v3_v3v3(vecB, verts[0]->co, verts[1]->co); add_v3_v3v3(r_plane, vecA, vecB); |