Changeset View
Changeset View
Standalone View
Standalone View
source/blender/editors/mesh/editmesh_utils.c
| Show First 20 Lines • Show All 378 Lines • ▼ Show 20 Lines | |||||
| #endif | #endif | ||||
| } | } | ||||
| void EDBM_mesh_clear(BMEditMesh *em) | void EDBM_mesh_clear(BMEditMesh *em) | ||||
| { | { | ||||
| /* clear bmesh */ | /* clear bmesh */ | ||||
| BM_mesh_clear(em->bm); | BM_mesh_clear(em->bm); | ||||
| /* free derived meshes */ | |||||
| BKE_editmesh_free_derivedmesh(em); | |||||
| /* free tessellation data */ | /* free tessellation data */ | ||||
| em->tottri = 0; | em->tottri = 0; | ||||
| if (em->looptris) { | if (em->looptris) { | ||||
| MEM_freeN(em->looptris); | MEM_freeN(em->looptris); | ||||
| em->looptris = NULL; | em->looptris = NULL; | ||||
| } | } | ||||
| } | } | ||||
| ▲ Show 20 Lines • Show All 1,061 Lines • ▼ Show 20 Lines | void EDBM_update_generic(Mesh *mesh, const bool do_tessellation, const bool is_destructive) | ||||
| else { | else { | ||||
| /* in debug mode double check we didn't need to recalculate */ | /* in debug mode double check we didn't need to recalculate */ | ||||
| BLI_assert(BM_mesh_elem_table_check(em->bm) == true); | BLI_assert(BM_mesh_elem_table_check(em->bm) == true); | ||||
| } | } | ||||
| if (em->bm->spacearr_dirty & BM_SPACEARR_BMO_SET) { | if (em->bm->spacearr_dirty & BM_SPACEARR_BMO_SET) { | ||||
| BM_lnorspace_invalidate(em->bm, false); | BM_lnorspace_invalidate(em->bm, false); | ||||
| em->bm->spacearr_dirty &= ~BM_SPACEARR_BMO_SET; | em->bm->spacearr_dirty &= ~BM_SPACEARR_BMO_SET; | ||||
| } | } | ||||
| /* don't keep stale derivedMesh data around, see: T38872. */ | |||||
| BKE_editmesh_free_derivedmesh(em); | |||||
| #ifdef DEBUG | #ifdef DEBUG | ||||
| { | { | ||||
| BMEditSelection *ese; | BMEditSelection *ese; | ||||
| for (ese = em->bm->selected.first; ese; ese = ese->next) { | for (ese = em->bm->selected.first; ese; ese = ese->next) { | ||||
| BLI_assert(BM_elem_flag_test(ese->ele, BM_ELEM_SELECT)); | BLI_assert(BM_elem_flag_test(ese->ele, BM_ELEM_SELECT)); | ||||
| } | } | ||||
| } | } | ||||
| ▲ Show 20 Lines • Show All 265 Lines • Show Last 20 Lines | |||||