Commit: 652eaf7723de34b7b717a7fe2fb4a5757614fb0a Author: Campbell Barton Date: Wed Sep 10 16:02:24 2014 +1000 Branches: master https://developer.blender.org/rB652eaf7723de34b7b717a7fe2fb4a5757614fb0a
Fix for mesh-inset modifying hidden faces =================================================================== M source/blender/bmesh/intern/bmesh_opdefines.c M source/blender/bmesh/operators/bmo_inset.c M source/blender/editors/mesh/editmesh_inset.c =================================================================== diff --git a/source/blender/bmesh/intern/bmesh_opdefines.c b/source/blender/bmesh/intern/bmesh_opdefines.c index 74bd911..d8be55c 100644 --- a/source/blender/bmesh/intern/bmesh_opdefines.c +++ b/source/blender/bmesh/intern/bmesh_opdefines.c @@ -1795,6 +1795,7 @@ static BMOpDefine bmo_inset_region_def = { "inset_region", /* slots_in */ {{"faces", BMO_OP_SLOT_ELEMENT_BUF, {BM_FACE}}, /* input faces */ + {"faces_exclude", BMO_OP_SLOT_ELEMENT_BUF, {BM_FACE}}, {"use_boundary", BMO_OP_SLOT_BOOL}, {"use_even_offset", BMO_OP_SLOT_BOOL}, {"use_interpolate", BMO_OP_SLOT_BOOL}, diff --git a/source/blender/bmesh/operators/bmo_inset.c b/source/blender/bmesh/operators/bmo_inset.c index d1d7129..1b72a31 100644 --- a/source/blender/bmesh/operators/bmo_inset.c +++ b/source/blender/bmesh/operators/bmo_inset.c @@ -587,6 +587,7 @@ void bmo_inset_region_exec(BMesh *bm, BMOperator *op) else { BM_mesh_elem_hflag_enable_all(bm, BM_FACE, BM_ELEM_TAG, false); BMO_slot_buffer_hflag_disable(bm, op->slots_in, "faces", BM_FACE, BM_ELEM_TAG, false); + BMO_slot_buffer_hflag_disable(bm, op->slots_in, "faces_exclude", BM_FACE, BM_ELEM_TAG, false); } /* first count all inset edges we will split */ diff --git a/source/blender/editors/mesh/editmesh_inset.c b/source/blender/editors/mesh/editmesh_inset.c index a4942d0..a90a002 100644 --- a/source/blender/editors/mesh/editmesh_inset.c +++ b/source/blender/editors/mesh/editmesh_inset.c @@ -214,17 +214,21 @@ static bool edbm_inset_calc(wmOperator *op) if (use_individual) { EDBM_op_init(em, &bmop, op, - "inset_individual faces=%hf use_even_offset=%b use_relative_offset=%b" + "inset_individual faces=%hf use_even_offset=%b use_relative_offset=%b " "use_interpolate=%b thickness=%f depth=%f", BM_ELEM_SELECT, use_even_offset, use_relative_offset, use_interpolate, thickness, depth); } else { EDBM_op_init(em, &bmop, op, - "inset_region faces=%hf use_boundary=%b use_even_offset=%b use_relative_offset=%b" - " use_interpolate=%b thickness=%f depth=%f use_outset=%b use_edge_rail=%b", + "inset_region faces=%hf use_boundary=%b use_even_offset=%b use_relative_offset=%b " + "use_interpolate=%b thickness=%f depth=%f use_outset=%b use_edge_rail=%b", BM_ELEM_SELECT, use_boundary, use_even_offset, use_relative_offset, use_interpolate, thickness, depth, use_outset, use_edge_rail); + + if (use_outset) { + BMO_slot_buffer_from_enabled_hflag(em->bm, &bmop, bmop.slots_in, "faces_exclude", BM_FACE, BM_ELEM_HIDDEN); + } } BMO_op_exec(em->bm, &bmop); _______________________________________________ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org http://lists.blender.org/mailman/listinfo/bf-blender-cvs