Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCampbell Barton <ideasman42@gmail.com>2012-11-12 16:30:58 +0400
committerCampbell Barton <ideasman42@gmail.com>2012-11-12 16:30:58 +0400
commit0364a83771aedc5b2911a74cc5f2ae23d07996c5 (patch)
tree676c99b799ed10c8acd4f20a8323f804533bd40c /source/blender/bmesh/operators
parentfbdae9ca0aacd3c93e38d36fb39bb09ce7461f4b (diff)
fan filling didnt always work well, now only apply this when its going to work properly.
Diffstat (limited to 'source/blender/bmesh/operators')
-rw-r--r--source/blender/bmesh/operators/bmo_bevel.c16
1 files changed, 12 insertions, 4 deletions
diff --git a/source/blender/bmesh/operators/bmo_bevel.c b/source/blender/bmesh/operators/bmo_bevel.c
index a270496a936..fcf3816ff9d 100644
--- a/source/blender/bmesh/operators/bmo_bevel.c
+++ b/source/blender/bmesh/operators/bmo_bevel.c
@@ -664,12 +664,20 @@ static void build_boundary(BevVert *bv)
} while ((e = e->next) != efirst);
BLI_assert(vm->count >= 2);
- if (vm->count == 2 && bv->edgecount == 3)
+ if (vm->count == 2 && bv->edgecount == 3) {
vm->mesh_kind = M_NONE;
- else if (efirst->seg == 1 || bv->selcount == 1)
- vm->mesh_kind = M_FAN; /* was M_POLY */
- else
+ }
+ else if (efirst->seg == 1 || bv->selcount == 1) {
+ if (vm->count == 3 && bv->selcount == 1) {
+ vm->mesh_kind = M_FAN;
+ }
+ else {
+ vm->mesh_kind = M_POLY;
+ }
+ }
+ else {
vm->mesh_kind = M_ADJ;
+ }
/* TODO: if vm->count == 4 and bv->selcount == 4, use M_CROSS pattern */
}