[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [35908] branches/bmesh/blender/source/ blender/modifiers/intern/MOD_mirror.c: fixed indexing bug in mirror modifier
Joseph Eagar
joeedh at gmail.com
Thu Mar 31 02:06:19 CEST 2011
Revision: 35908
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=35908
Author: joeedh
Date: 2011-03-31 00:06:19 +0000 (Thu, 31 Mar 2011)
Log Message:
-----------
fixed indexing bug in mirror modifier
Modified Paths:
--------------
branches/bmesh/blender/source/blender/modifiers/intern/MOD_mirror.c
Modified: branches/bmesh/blender/source/blender/modifiers/intern/MOD_mirror.c
===================================================================
--- branches/bmesh/blender/source/blender/modifiers/intern/MOD_mirror.c 2011-03-30 22:46:56 UTC (rev 35907)
+++ branches/bmesh/blender/source/blender/modifiers/intern/MOD_mirror.c 2011-03-31 00:06:19 UTC (rev 35908)
@@ -177,12 +177,23 @@
/*adjust mirrored poly loopstart indices, and reverse loop order (normals)*/
mp = CDDM_get_polys(cddm) + dm->numPolyData;
+ ml = CDDM_get_loops(cddm);
for (i=0; i<dm->numPolyData; i++, mp++) {
+ MLoop *ml2;
+ int e;
+
for (j=0; j<mp->totloop; j++) {
CustomData_copy_data(&dm->loopData, &cddm->loopData, mp->loopstart+j,
mp->loopstart+dm->numLoopData+mp->totloop-j-1, 1);
}
-
+
+ ml2 = ml + mp->loopstart + dm->numLoopData;
+ e = ml2[0].e;
+ for (j=0; j<mp->totloop-1; j++) {
+ ml2[j].e = ml2[j+1].e;
+ }
+ ml2[mp->totloop-1].e = e;
+
mp->loopstart += dm->numLoopData;
}
More information about the Bf-blender-cvs
mailing list