add destructive argument to bmesh.update_edit_mesh()
This commit is contained in:
@@ -98,7 +98,7 @@ static PyObject *bpy_bm_from_edit_mesh(PyObject *UNUSED(self), PyObject *value)
|
|||||||
}
|
}
|
||||||
|
|
||||||
PyDoc_STRVAR(bpy_bm_update_edit_mesh_doc,
|
PyDoc_STRVAR(bpy_bm_update_edit_mesh_doc,
|
||||||
".. method:: update_edit_mesh(mesh, tessface=True)\n"
|
".. method:: update_edit_mesh(mesh, tessface=True, destructive=True)\n"
|
||||||
"\n"
|
"\n"
|
||||||
" Update the mesh after changes to the BMesh in editmode, \n"
|
" Update the mesh after changes to the BMesh in editmode, \n"
|
||||||
" optionally recalculating n-gon tessellation.\n"
|
" optionally recalculating n-gon tessellation.\n"
|
||||||
@@ -107,14 +107,17 @@ PyDoc_STRVAR(bpy_bm_update_edit_mesh_doc,
|
|||||||
" :type mesh: :class:`bpy.types.Mesh`\n"
|
" :type mesh: :class:`bpy.types.Mesh`\n"
|
||||||
" :arg tessface: Option to recalculate n-gon tessellation.\n"
|
" :arg tessface: Option to recalculate n-gon tessellation.\n"
|
||||||
" :type tessface: boolean\n"
|
" :type tessface: boolean\n"
|
||||||
|
" :arg destructive: Use when grometry has been added or removed.\n"
|
||||||
|
" :type destructive: boolean\n"
|
||||||
);
|
);
|
||||||
static PyObject *bpy_bm_update_edit_mesh(PyObject *UNUSED(self), PyObject *args)
|
static PyObject *bpy_bm_update_edit_mesh(PyObject *UNUSED(self), PyObject *args)
|
||||||
{
|
{
|
||||||
PyObject *py_me;
|
PyObject *py_me;
|
||||||
Mesh *me;
|
Mesh *me;
|
||||||
int do_tessface = TRUE;
|
int do_tessface = TRUE;
|
||||||
|
int is_destructive = TRUE;
|
||||||
|
|
||||||
if (!PyArg_ParseTuple(args, "O|i:update_edit_mesh", &py_me, &do_tessface)) {
|
if (!PyArg_ParseTuple(args, "O|ii:update_edit_mesh", &py_me, &do_tessface, &is_destructive)) {
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -134,10 +137,11 @@ static PyObject *bpy_bm_update_edit_mesh(PyObject *UNUSED(self), PyObject *args)
|
|||||||
/* XXX, not great - infact this function could just not use the context at all
|
/* XXX, not great - infact this function could just not use the context at all
|
||||||
* postpone that change until after release: BMESH_TODO - campbell */
|
* postpone that change until after release: BMESH_TODO - campbell */
|
||||||
extern struct bContext *BPy_GetContext(void);
|
extern struct bContext *BPy_GetContext(void);
|
||||||
extern void EDBM_update_generic(struct bContext *C, BMEditMesh *em, const short do_tessface);
|
extern void EDBM_update_generic(struct bContext *C, BMEditMesh *em,
|
||||||
|
const short do_tessface, const short is_destructive);
|
||||||
|
|
||||||
struct bContext *C = BPy_GetContext();
|
struct bContext *C = BPy_GetContext();
|
||||||
EDBM_update_generic(C, me->edit_btmesh, do_tessface);
|
EDBM_update_generic(C, me->edit_btmesh, do_tessface, is_destructive);
|
||||||
}
|
}
|
||||||
|
|
||||||
Py_RETURN_NONE;
|
Py_RETURN_NONE;
|
||||||
|
|||||||
Reference in New Issue
Block a user