Fix #20824: vertex parent fails with subsurf on.

This commit is contained in:
Brecht Van Lommel 2010-01-27 15:09:34 +00:00
parent f0ec3cb4b1
commit 877251fb8c

@ -1846,17 +1846,16 @@ static void give_parvert(Object *par, int nr, float *vec)
DerivedMesh *dm = par->derivedFinal; DerivedMesh *dm = par->derivedFinal;
if(dm) { if(dm) {
int i, count = 0, vindex, numVerts = dm->getNumVerts(dm); MVert *mvert= dm->getVertArray(dm);
int *index = (int *)dm->getVertDataArray(dm, CD_ORIGINDEX); int *index = (int *)dm->getVertDataArray(dm, CD_ORIGINDEX);
float co[3]; int i, count = 0, vindex, numVerts = dm->getNumVerts(dm);
/* get the average of all verts with (original index == nr) */ /* get the average of all verts with (original index == nr) */
for(i = 0; i < numVerts; ++i) { for(i = 0; i < numVerts; i++) {
vindex= (index)? *index: i; vindex= (index)? index[i]: i;
if(vindex == nr) { if(vindex == nr) {
dm->getVertCo(dm, i, co); add_v3_v3v3(vec, vec, mvert[i].co);
add_v3_v3v3(vec, vec, co);
count++; count++;
} }
} }