rendered paste body MVert *mvert2;
MFace *mface2;
int a = 0;
result = CDDM_new(numverts, 0, numtris + 2*numquads);
mvert2 = CDDM_get_verts(result);
for(a=0; a<numverts; a++) {
MVert *mv = &mvert2[a];
VECCOPY(mv->co, mvert[a].co);
}
mface2 = CDDM_get_faces(result);
for(a=0; a<(numtris + numquads*2); a++)
{
MFace *mf = &mface2[a];
mf->v1 = mface[a].v1;
mf->v2 = mface[a].v2;
mf->v3 = mface[a].v3;
mf->v4 = 0;
test_index_face(mf, NULL, 0, 3);
if(mface[a].v4)
{
a++;
mf = &mface2[a];
mf->v1 = mface[a-1].v3;
mf->v2 = mface[a-1].v4;
mf->v3 = mface[a-1].v1;
mf->v4 = 0;
test_index_face(mf, NULL, 0, 3);
}
}
CDDM_calc_edges(result);
CDDM_calc_normals(result);