Fix T87259: Un-Subdivide creates duplicate faces

Add argument to BM_vert_collapse_faces to remove any faces that become
duplicate as result of the collapse.
This commit is contained in:
2021-04-12 14:24:09 +10:00
parent 3a05135e12
commit 2a14ab998a
10 changed files with 56 additions and 27 deletions

View File

@@ -86,7 +86,7 @@ static PyObject *bpy_bm_utils_vert_collapse_edge(PyObject *UNUSED(self), PyObjec
bm = py_edge->bm;
e_new = BM_vert_collapse_edge(bm, py_edge->e, py_vert->v, true, true);
e_new = BM_vert_collapse_edge(bm, py_edge->e, py_vert->v, true, true, true);
if (e_new) {
return BPy_BMEdge_CreatePyObject(bm, e_new);
@@ -155,7 +155,7 @@ static PyObject *bpy_bm_utils_vert_collapse_faces(PyObject *UNUSED(self), PyObje
bm = py_edge->bm;
e_new = BM_vert_collapse_faces(
bm, py_edge->e, py_vert->v, clamp_f(fac, 0.0f, 1.0f), true, do_join_faces, true);
bm, py_edge->e, py_vert->v, clamp_f(fac, 0.0f, 1.0f), true, do_join_faces, true, true);
if (e_new) {
return BPy_BMEdge_CreatePyObject(bm, e_new);