[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [47338] branches/soc-2012-sushi/source/ blender/editors/mesh/editmesh_tools.c: Check if select faces are triangles.

Alexander Pinzon apinzonf at gmail.com
Fri Jun 1 19:48:35 CEST 2012


Revision: 47338
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=47338
Author:   apinzonf
Date:     2012-06-01 17:48:34 +0000 (Fri, 01 Jun 2012)
Log Message:
-----------
Check if select faces are triangles.
Use f->len > 3, Suggested by Campbell Barton

Modified Paths:
--------------
    branches/soc-2012-sushi/source/blender/editors/mesh/editmesh_tools.c

Modified: branches/soc-2012-sushi/source/blender/editors/mesh/editmesh_tools.c
===================================================================
--- branches/soc-2012-sushi/source/blender/editors/mesh/editmesh_tools.c	2012-06-01 17:47:05 UTC (rev 47337)
+++ branches/soc-2012-sushi/source/blender/editors/mesh/editmesh_tools.c	2012-06-01 17:48:34 UTC (rev 47338)
@@ -1606,21 +1606,16 @@
 	float lambda = 0.1f;
 	float min_area = 0.00001f;
 	BMIter fiter;
-	BMIter viter;
 	BMFace *f;
-	BMVert *v;
-	int count;
 	
-	/* Check if all faces are triangles	*/
+	/* Check if select faces are triangles	*/
 	BM_ITER_MESH (f, &fiter, em->bm, BM_FACES_OF_MESH) {
-		count = 0;
-		BM_ITER_ELEM(v, &viter, f, BM_VERTS_OF_FACE){
-			count = count + 1;
+		if (BM_elem_flag_test(f, BM_ELEM_SELECT)) {
+			if(f->len > 3) {
+				BKE_report(op->reports, RPT_WARNING, "Selected faces must be triangles");
+				return OPERATOR_CANCELLED;
+			}	
 		}
-		if(count>3){
-			BKE_report(op->reports, RPT_WARNING, "Selected faces must be triangles");
-			return OPERATOR_CANCELLED;
-		}
 	}
 
 	/* mirror before smooth */
@@ -1688,9 +1683,12 @@
 	/* flags */
 	ot->flag = OPTYPE_REGISTER | OPTYPE_UNDO;
 
-	RNA_def_int(ot->srna, "repeat", 1, 1, 50, "Number of iterations to smooth the mesh", "", 1, 50);
-	RNA_def_float(ot->srna, "lambda", 0.00005f, 0.0000001f, 100.0f, "Lambda factor", "", 0.0000001f, 100.0f);
-	RNA_def_float(ot->srna, "min_area", 0.00001f, 0.0000000000000001f, 100.0f, "Minimum area permitted", "", 0.0000000000000001f, 100.0f);
+	RNA_def_int(ot->srna, "repeat", 1, 1, 50, 
+					"Number of iterations to smooth the mesh", "", 1, 50);
+	RNA_def_float(ot->srna, "lambda", 0.00005f, 0.0000001f, 100.0f, 
+					"Lambda factor", "", 0.0000001f, 100.0f);
+	RNA_def_float(ot->srna, "min_area", 0.00001f, 0.0000000000000001f, 100.0f, 
+					"Minimum area permitted", "", 0.0000000000000001f, 100.0f);
 
 }
 




More information about the Bf-blender-cvs mailing list