diff options
-rw-r--r-- | source/blender/bmesh/intern/bmesh_edgeloop.c | 4 | ||||
-rw-r--r-- | source/blender/bmesh/operators/bmo_bridge.c | 3 |
2 files changed, 7 insertions, 0 deletions
diff --git a/source/blender/bmesh/intern/bmesh_edgeloop.c b/source/blender/bmesh/intern/bmesh_edgeloop.c index 294cf23c613..91812fb2cff 100644 --- a/source/blender/bmesh/intern/bmesh_edgeloop.c +++ b/source/blender/bmesh/intern/bmesh_edgeloop.c @@ -426,6 +426,10 @@ void BM_mesh_edgeloops_calc_order(BMesh *UNUSED(bm), ListBase *eloops, const boo const float *co = ((BMEdgeLoopStore *)eloops_ordered.last)->co; const float *no = ((BMEdgeLoopStore *)eloops_ordered.last)->no; float len_best = FLT_MAX; + + if (use_normals) + BLI_assert(fabsf(len_squared_v3(no) - 1.0f) < FLT_EPSILON); + for (el_store = eloops->first; el_store; el_store = el_store->next) { float len; if (use_normals) { diff --git a/source/blender/bmesh/operators/bmo_bridge.c b/source/blender/bmesh/operators/bmo_bridge.c index ddecfe59aa1..116fe46ee53 100644 --- a/source/blender/bmesh/operators/bmo_bridge.c +++ b/source/blender/bmesh/operators/bmo_bridge.c @@ -488,6 +488,9 @@ void bmo_bridge_loops_exec(BMesh *bm, BMOperator *op) } if (count > 2) { + if (use_pairs) { + BM_mesh_edgeloops_calc_normal(bm, &eloops); + } BM_mesh_edgeloops_calc_order(bm, &eloops, use_pairs); } |