diff options
author | Campbell Barton <ideasman42@gmail.com> | 2013-08-16 18:18:54 +0400 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2013-08-16 18:18:54 +0400 |
commit | ef8ea14f459e0e765e07fc48858c18dc11cfdfb5 (patch) | |
tree | 01af1661f43fc2f2689888971cfe8709bc11e6e8 /source/blender/bmesh/operators/bmo_create.c | |
parent | 36c530dec917d548de24d5c31ed77a2ab565ed05 (diff) |
rewrite edgenet fill bmesh operator.
previous code created faces with mixed face-flipping and could get very slow,
test with ~60,000 edges here hung my system for over 2min (didnt wait for it to finish), new code executes in about 1 second.
new code doesn't attempt to flip faces correctly, its quite involved to do so, especially when the new faces are not created adjacent to eachother.
so simpler to calculate normals afterwards.
Diffstat (limited to 'source/blender/bmesh/operators/bmo_create.c')
-rw-r--r-- | source/blender/bmesh/operators/bmo_create.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/source/blender/bmesh/operators/bmo_create.c b/source/blender/bmesh/operators/bmo_create.c index 64d0ec6ac27..11144d1186c 100644 --- a/source/blender/bmesh/operators/bmo_create.c +++ b/source/blender/bmesh/operators/bmo_create.c @@ -145,6 +145,7 @@ void bmo_contextual_create_exec(BMesh *bm, BMOperator *op) /* EdgeNet Create */ if (tote != 0) { /* call edgenet prepare op so additional face creation cases work */ + BMOperator op_sub; BMO_op_initf(bm, &op_sub, op->flag, "edgenet_prepare edges=%fe", ELE_NEW); BMO_op_exec(bm, &op_sub); |