diff options
Diffstat (limited to 'source/blender/blenkernel/intern/cdderivedmesh.c')
-rw-r--r-- | source/blender/blenkernel/intern/cdderivedmesh.c | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/source/blender/blenkernel/intern/cdderivedmesh.c b/source/blender/blenkernel/intern/cdderivedmesh.c index d2d3520b118..39cfd1ad9e6 100644 --- a/source/blender/blenkernel/intern/cdderivedmesh.c +++ b/source/blender/blenkernel/intern/cdderivedmesh.c @@ -2773,3 +2773,23 @@ void CDDM_set_mface(DerivedMesh *dm, MFace *mface) cddm->mface = mface; } + +void CDDM_set_mloop(DerivedMesh *dm, MLoop *mloop) +{ + CDDerivedMesh *cddm = (CDDerivedMesh*)dm; + + if (!CustomData_has_layer(&dm->loopData, CD_MLOOP)) + CustomData_add_layer(&dm->loopData, CD_MLOOP, CD_ASSIGN, mloop, dm->numLoopData); + + cddm->mloop = mloop; +} + +void CDDM_set_mpoly(DerivedMesh *dm, MPoly *mpoly) +{ + CDDerivedMesh *cddm = (CDDerivedMesh*)dm; + + if (!CustomData_has_layer(&dm->polyData, CD_MPOLY)) + CustomData_add_layer(&dm->polyData, CD_MPOLY, CD_ASSIGN, mpoly, dm->numPolyData); + + cddm->mpoly = mpoly; +} |