Changeset View
Changeset View
Standalone View
Standalone View
source/blender/editors/sculpt_paint/sculpt_undo.c
| Show First 20 Lines • Show All 839 Lines • ▼ Show 20 Lines | if (unode == NULL) { | ||||
| else if (type == SCULPT_UNDO_DYNTOPO_BEGIN) { | else if (type == SCULPT_UNDO_DYNTOPO_BEGIN) { | ||||
| Mesh *me = ob->data; | Mesh *me = ob->data; | ||||
| /* Store a copy of the mesh's current vertices, loops, and | /* Store a copy of the mesh's current vertices, loops, and | ||||
| * polys. A full copy like this is needed because entering | * polys. A full copy like this is needed because entering | ||||
| * dynamic-topology immediately does topological edits | * dynamic-topology immediately does topological edits | ||||
| * (converting polys to triangles) that the BMLog can't | * (converting polys to triangles) that the BMLog can't | ||||
| * fully restore from */ | * fully restore from */ | ||||
| CustomData_copy(&me->vdata, &unode->bm_enter_vdata, CD_MASK_MESH, | CustomData_copy(&me->vdata, &unode->bm_enter_vdata, CD_MASK_MESH.vmask, | ||||
| CD_DUPLICATE, me->totvert); | CD_DUPLICATE, me->totvert); | ||||
| CustomData_copy(&me->edata, &unode->bm_enter_edata, CD_MASK_MESH, | CustomData_copy(&me->edata, &unode->bm_enter_edata, CD_MASK_MESH.emask, | ||||
| CD_DUPLICATE, me->totedge); | CD_DUPLICATE, me->totedge); | ||||
| CustomData_copy(&me->ldata, &unode->bm_enter_ldata, CD_MASK_MESH, | CustomData_copy(&me->ldata, &unode->bm_enter_ldata, CD_MASK_MESH.lmask, | ||||
| CD_DUPLICATE, me->totloop); | CD_DUPLICATE, me->totloop); | ||||
| CustomData_copy(&me->pdata, &unode->bm_enter_pdata, CD_MASK_MESH, | CustomData_copy(&me->pdata, &unode->bm_enter_pdata, CD_MASK_MESH.pmask, | ||||
| CD_DUPLICATE, me->totpoly); | CD_DUPLICATE, me->totpoly); | ||||
| unode->bm_enter_totvert = me->totvert; | unode->bm_enter_totvert = me->totvert; | ||||
| unode->bm_enter_totedge = me->totedge; | unode->bm_enter_totedge = me->totedge; | ||||
| unode->bm_enter_totloop = me->totloop; | unode->bm_enter_totloop = me->totloop; | ||||
| unode->bm_enter_totpoly = me->totpoly; | unode->bm_enter_totpoly = me->totpoly; | ||||
| unode->bm_entry = BM_log_entry_add(ss->bm_log); | unode->bm_entry = BM_log_entry_add(ss->bm_log); | ||||
| BM_log_all_added(ss->bm, ss->bm_log); | BM_log_all_added(ss->bm, ss->bm_log); | ||||
| ▲ Show 20 Lines • Show All 320 Lines • Show Last 20 Lines | |||||