Revision: 40145
          
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=40145
Author:   campbellbarton
Date:     2011-09-12 02:36:14 +0000 (Mon, 12 Sep 2011)
Log Message:
-----------
fix [#28587] Array modifier draws an extra object
patch [#28586] from Andrew Wiggin (ender79)

Modified Paths:
--------------
    branches/bmesh/blender/source/blender/modifiers/intern/MOD_array.c

Modified: branches/bmesh/blender/source/blender/modifiers/intern/MOD_array.c
===================================================================
--- branches/bmesh/blender/source/blender/modifiers/intern/MOD_array.c  
2011-09-12 02:23:30 UTC (rev 40144)
+++ branches/bmesh/blender/source/blender/modifiers/intern/MOD_array.c  
2011-09-12 02:36:14 UTC (rev 40145)
@@ -317,11 +317,8 @@
        int i, j, indexLen;
        /* offset matrix */
        float offset[4][4];
-       float final_offset[4][4];
-       float tmp_mat[4][4];
        float length = amd->length;
        int count = amd->count, maxVerts;
-       int finalVerts, finalEdges, finalFaces;
        int *indexMap = NULL;
        DerivedMesh *start_cap = NULL, *end_cap = NULL;
        MVert *src_mvert;
@@ -397,35 +394,10 @@
        if(count < 1)
                count = 1;
 
-       /* allocate memory for count duplicates (including original) plus
-                 * start and end caps
-       */
-       finalVerts = dm->getNumVerts(dm) * count;
-       finalEdges = dm->getNumEdges(dm) * count;
-       finalFaces = dm->getNumFaces(dm) * count;
-       if(start_cap) {
-               finalVerts += start_cap->getNumVerts(start_cap);
-               finalEdges += start_cap->getNumEdges(start_cap);
-               finalFaces += start_cap->getNumFaces(start_cap);
-       }
-       if(end_cap) {
-               finalVerts += end_cap->getNumVerts(end_cap);
-               finalEdges += end_cap->getNumEdges(end_cap);
-               finalFaces += end_cap->getNumFaces(end_cap);
-       }
-
-       /* calculate the offset matrix of the final copy (for merging) */
-       unit_m4(final_offset);
-
-       for(j=0; j < count - 1; j++) {
-               mul_m4_m4m4(tmp_mat, final_offset, offset);
-               copy_m4_m4(final_offset, tmp_mat);
-       }
-
        BMO_Init_Op(&weldop, "weldverts");
        BMO_InitOpf(em->bm, &op, "dupe geom=%avef");
        oldop = op;
-       for (j=0; j < count; j++) {
+       for (j=0; j < count - 1; j++) {
                BMVert *v, *v2;
                BMOpSlot *s1;
                BMOpSlot *s2;

_______________________________________________
Bf-blender-cvs mailing list
[email protected]
http://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to