diff options
author | Campbell Barton <ideasman42@gmail.com> | 2013-05-23 10:19:04 +0400 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2013-05-23 10:19:04 +0400 |
commit | 0ff22044cd130c1a1b534522ee89b1194a91d0ac (patch) | |
tree | 991b0e1463393d4bd9415f8021c499c19eba74a0 /source/blender/bmesh/intern/bmesh_opdefines.c | |
parent | 4625e7043065b7dbb405fee6acb2f36d21a8bf67 (diff) |
Support for bridge tool subdivisions, smoothing and shape along the profile.
also added the underlying subdivision as a standalone operator in the edge menu, named: subdivide edge-ring.
http://www.graphicall.org/ftp/ideasman42/bridge_subd.png
Diffstat (limited to 'source/blender/bmesh/intern/bmesh_opdefines.c')
-rw-r--r-- | source/blender/bmesh/intern/bmesh_opdefines.c | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/source/blender/bmesh/intern/bmesh_opdefines.c b/source/blender/bmesh/intern/bmesh_opdefines.c index 88fc7652885..59de3622adb 100644 --- a/source/blender/bmesh/intern/bmesh_opdefines.c +++ b/source/blender/bmesh/intern/bmesh_opdefines.c @@ -523,6 +523,7 @@ static BMOpDefine bmo_bridge_loops_def = { }, /* slots_out */ {{"faces.out", BMO_OP_SLOT_ELEMENT_BUF, {BM_FACE}}, /* new faces */ + {"edges.out", BMO_OP_SLOT_ELEMENT_BUF, {BM_EDGE}}, /* new edges */ {{'\0'}}, }, bmo_bridge_loops_exec, @@ -1022,6 +1023,28 @@ static BMOpDefine bmo_subdivide_edges_def = { }; /* + * Subdivide Edge-Ring. + * + * Take an edge-ring, and supdivide with interpolation options. + */ +static BMOpDefine bmo_subdivide_edgering_def = { + "subdivide_edgering", + /* slots_in */ + {{"edges", BMO_OP_SLOT_ELEMENT_BUF, {BM_EDGE}}, /* input vertices */ + {"interp_mode", BMO_OP_SLOT_INT}, + {"smooth", BMO_OP_SLOT_FLT}, + {"cuts", BMO_OP_SLOT_INT}, + {"profile_shape", BMO_OP_SLOT_INT}, + {"profile_shape_factor", BMO_OP_SLOT_FLT}, + {{'\0'}}, + }, + {{"faces.out", BMO_OP_SLOT_ELEMENT_BUF, {BM_FACE}}, /* output faces */ + {{'\0'}}}, /* no output */ + bmo_subdivide_edgering_exec, + BMO_OPTYPE_FLAG_UNTAN_MULTIRES | BMO_OPTYPE_FLAG_NORMALS_CALC | BMO_OPTYPE_FLAG_SELECT_FLUSH, +}; + +/* * Delete Geometry. * * Utility operator to delete geometry. @@ -1756,6 +1779,7 @@ const BMOpDefine *bmo_opdefines[] = { &bmo_split_def, &bmo_split_edges_def, &bmo_subdivide_edges_def, + &bmo_subdivide_edgering_def, &bmo_symmetrize_def, &bmo_transform_def, &bmo_translate_def, |