Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCampbell Barton <ideasman42@gmail.com>2018-10-08 09:29:59 +0300
committerCampbell Barton <ideasman42@gmail.com>2018-10-08 09:31:32 +0300
commit772c4d6313ad842bbdfe101267f0bd34186e8a6f (patch)
tree10dc427c3368d0152c9fd7fea30e463665387cd6 /source/blender/blenkernel/intern/cdderivedmesh.c
parent215c23590aa7ea0cbb113d75c32ccf57ffee3fd3 (diff)
Edit Mesh: basic show in edit mode support
Note this is just using the derived-mesh data at the moment, to support this properly we'll need to remove derived-mesh.
Diffstat (limited to 'source/blender/blenkernel/intern/cdderivedmesh.c')
-rw-r--r--source/blender/blenkernel/intern/cdderivedmesh.c26
1 files changed, 26 insertions, 0 deletions
diff --git a/source/blender/blenkernel/intern/cdderivedmesh.c b/source/blender/blenkernel/intern/cdderivedmesh.c
index 9043460562d..83424da3a3d 100644
--- a/source/blender/blenkernel/intern/cdderivedmesh.c
+++ b/source/blender/blenkernel/intern/cdderivedmesh.c
@@ -2258,3 +2258,29 @@ void CDDM_set_mpoly(DerivedMesh *dm, MPoly *mpoly)
cddm->mpoly = mpoly;
}
+
+/** Hack to fill in an empty (non library mesh struct) with CDDM values. */
+void CDDM_to_mesh__fast_borrow(DerivedMesh *dm, Mesh *me, const Mesh *me_reference)
+{
+ CDDerivedMesh *cddm = (CDDerivedMesh *)dm;
+ me->totvert = cddm->dm.numVertData;
+ me->totedge = cddm->dm.numEdgeData;
+ me->totloop = cddm->dm.numLoopData;
+ me->totpoly = cddm->dm.numPolyData;
+
+ me->mvert = cddm->mvert;
+ me->medge = cddm->medge;
+ me->mface = cddm->mface;
+ me->mloop = cddm->mloop;
+ me->mpoly = cddm->mpoly;
+
+ me->vdata = dm->vertData;
+ me->edata = dm->edgeData;
+ me->ldata = dm->loopData;
+ me->pdata = dm->polyData;
+
+ if (me_reference) {
+ me->mat = me_reference->mat;
+ me->totcol = me_reference->totcol;
+ }
+}