Revision: 36185
          
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=36185
Author:   joeedh
Date:     2011-04-15 23:42:43 +0000 (Fri, 15 Apr 2011)
Log Message:
-----------
=bmesh= bevel flag fix so recursion works on single edges.

Modified Paths:
--------------
    branches/bmesh/blender/source/blender/bmesh/intern/bmesh_opdefines.c
    branches/bmesh/blender/source/blender/bmesh/operators/bevel.c
    branches/bmesh/blender/source/blender/bmesh/operators/bmesh_dupeops.c
    branches/bmesh/blender/source/blender/editors/mesh/bmesh_tools.c

Modified: branches/bmesh/blender/source/blender/bmesh/intern/bmesh_opdefines.c
===================================================================
--- branches/bmesh/blender/source/blender/bmesh/intern/bmesh_opdefines.c        
2011-04-15 12:08:17 UTC (rev 36184)
+++ branches/bmesh/blender/source/blender/bmesh/intern/bmesh_opdefines.c        
2011-04-15 23:42:43 UTC (rev 36185)
@@ -533,7 +533,7 @@
        {BMOP_OPSLOT_ELEMENT_BUF, "skirtout"}, //output skirt geometry, faces 
and edges
        {0} /*null-terminating sentinel*/},
        bmesh_extrude_face_indiv_exec,
-       BMOP_UNTAN_MULTIRES
+       0
 };
 
 /*
@@ -548,7 +548,7 @@
        {BMOP_OPSLOT_ELEMENT_BUF, "geomout"}, //output geometry
        {0} /*null-terminating sentinel*/},
        bmesh_extrude_onlyedge_exec,
-       BMOP_UNTAN_MULTIRES
+       0
 };
 
 /*
@@ -563,7 +563,7 @@
        {BMOP_OPSLOT_ELEMENT_BUF, "vertout"}, //output vertices
        {0} /*null-terminating sentinel*/},
        extrude_vert_indiv_exec,
-       BMOP_UNTAN_MULTIRES
+       0
 };
 
 BMOpDefine def_connectverts = {
@@ -582,7 +582,7 @@
        {BMOP_OPSLOT_ELEMENT_BUF, "geomout"},
        {0} /*null-terminating sentinel*/},
        extrude_edge_context_exec,
-       BMOP_UNTAN_MULTIRES
+       0
 };
 
 BMOpDefine def_dissolvevertsop = {

Modified: branches/bmesh/blender/source/blender/bmesh/operators/bevel.c
===================================================================
--- branches/bmesh/blender/source/blender/bmesh/operators/bevel.c       
2011-04-15 12:08:17 UTC (rev 36184)
+++ branches/bmesh/blender/source/blender/bmesh/operators/bevel.c       
2011-04-15 23:42:43 UTC (rev 36185)
@@ -477,8 +477,15 @@
                        if (v1 != v2 && v2 != v3 && v3 != v4) {
                                BMIter liter2;
                                BMLoop *l2;
+                               BMEdge *e1, *e2;
                                
                                f = BM_Make_QuadTri(bm, v4, v3, v2, v1, l->f, 
1);
+
+                               e1 = BM_Edge_Exist(v4, v3);
+                               e2 = BM_Edge_Exist(v2, v1);
+                               BM_Copy_Attributes(bm, bm, l->e, e1);
+                               BM_Copy_Attributes(bm, bm, l->e, e2);
+
                                if (!f) {
                                        printf("eek!\n");
                                        continue;

Modified: branches/bmesh/blender/source/blender/bmesh/operators/bmesh_dupeops.c
===================================================================
--- branches/bmesh/blender/source/blender/bmesh/operators/bmesh_dupeops.c       
2011-04-15 12:08:17 UTC (rev 36184)
+++ branches/bmesh/blender/source/blender/bmesh/operators/bmesh_dupeops.c       
2011-04-15 23:42:43 UTC (rev 36185)
@@ -135,14 +135,15 @@
        BMO_SetFlag(target_mesh, (BMHeader*)target_face, DUPE_NEW);
        
        /*copy per-loop custom data*/
-       for (i=0,source_loop=BMIter_New(&iter, source_mesh, BM_LOOPS_OF_FACE, 
source_face),
-         target_loop=BMIter_New(&iter2, target_mesh, BM_LOOPS_OF_FACE, 
target_face);
-         source_loop && target_loop; source_loop=BMIter_Step(&iter), 
target_loop=BMIter_Step(&iter2),
-         i++) {
-               BM_Copy_Attributes(source_mesh, target_mesh, source_loop, 
target_loop);         
+       BM_ITER(source_loop, &iter, source_mesh, BM_LOOPS_OF_FACE, source_face) 
{
+               BM_ITER(target_loop, &iter2, target_mesh, BM_LOOPS_OF_FACE, 
target_face) {
+                       if (BLI_ghash_lookup(vhash, source_loop->v) == 
target_loop->v) {
+                               BM_Copy_Attributes(source_mesh, target_mesh, 
source_loop, target_loop);
+                               break;
+                       }
+               }
        }
 
-
        return target_face;
 }
        /*

Modified: branches/bmesh/blender/source/blender/editors/mesh/bmesh_tools.c
===================================================================
--- branches/bmesh/blender/source/blender/editors/mesh/bmesh_tools.c    
2011-04-15 12:08:17 UTC (rev 36184)
+++ branches/bmesh/blender/source/blender/editors/mesh/bmesh_tools.c    
2011-04-15 23:42:43 UTC (rev 36185)
@@ -4820,8 +4820,8 @@
                        return OPERATOR_CANCELLED;
                
                BMO_Exec_Op(em->bm, &bmop);
-               BMO_HeaderFlag_Buffer(em->bm, &bmop, "face_spans", BM_SELECT, 
BM_FACE);
-               BMO_HeaderFlag_Buffer(em->bm, &bmop, "face_holes", BM_SELECT, 
BM_FACE);
+               //BMO_HeaderFlag_Buffer(em->bm, &bmop, "face_spans", BM_SELECT, 
BM_FACE);
+               //BMO_HeaderFlag_Buffer(em->bm, &bmop, "face_holes", BM_SELECT, 
BM_FACE);
                BMO_Finish_Op(em->bm, &bmop);
                
                fac = fac + (sqrt(fac) - fac)*0.25;

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

Reply via email to