[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [41963] branches/bmesh/blender/source/ blender: fix [#28676] Tris to Quads: "Max Angle" is not interpreted correctly

Campbell Barton ideasman42 at gmail.com
Fri Nov 18 10:41:40 CET 2011


Revision: 41963
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=41963
Author:   campbellbarton
Date:     2011-11-18 09:41:39 +0000 (Fri, 18 Nov 2011)
Log Message:
-----------
fix [#28676] Tris to Quads: "Max Angle" is not interpreted correctly

Modified Paths:
--------------
    branches/bmesh/blender/source/blender/bmesh/operators/join_triangles.c
    branches/bmesh/blender/source/blender/editors/mesh/bmesh_tools.c

Modified: branches/bmesh/blender/source/blender/bmesh/operators/join_triangles.c
===================================================================
--- branches/bmesh/blender/source/blender/bmesh/operators/join_triangles.c	2011-11-18 09:34:45 UTC (rev 41962)
+++ branches/bmesh/blender/source/blender/bmesh/operators/join_triangles.c	2011-11-18 09:41:39 UTC (rev 41963)
@@ -72,9 +72,10 @@
 	sub_v3_v3v3(edgeVec1, v1->co, v2->co);
 	sub_v3_v3v3(edgeVec2, v2->co, v3->co);
 	sub_v3_v3v3(edgeVec3, v3->co, v4->co);
-	sub_v3_v3v3(edgeVec4, v4->co, v1->co);	
+	sub_v3_v3v3(edgeVec4, v4->co, v1->co);
 
-	diff = (
+	/* a completely skinny face is 'pi' after halving */
+	diff = 0.25f * (
 		fabsf(angle_v3v3(edgeVec1, edgeVec2) - (float)M_PI_2) +
 		fabsf(angle_v3v3(edgeVec2, edgeVec3) - (float)M_PI_2) +
 		fabsf(angle_v3v3(edgeVec3, edgeVec4) - (float)M_PI_2) +
@@ -219,7 +220,7 @@
 	JoinEdge *jedges = NULL;
 	int dosharp = BMO_Get_Int(op, "compare_sharp"), douvs=BMO_Get_Int(op, "compare_uvs");
 	int dovcols = BMO_Get_Int(op, "compare_vcols"), domat=BMO_Get_Int(op, "compare_materials");
-	float limit = BMO_Get_Float(op, "limit")/180.0f*(float)M_PI;
+	float limit = BMO_Get_Float(op, "limit");
 	int i, totedge;
 
 	/*flag all edges of all input faces*/

Modified: branches/bmesh/blender/source/blender/editors/mesh/bmesh_tools.c
===================================================================
--- branches/bmesh/blender/source/blender/editors/mesh/bmesh_tools.c	2011-11-18 09:34:45 UTC (rev 41962)
+++ branches/bmesh/blender/source/blender/editors/mesh/bmesh_tools.c	2011-11-18 09:41:39 UTC (rev 41963)
@@ -3533,6 +3533,8 @@
 
 void MESH_OT_tris_convert_to_quads(wmOperatorType *ot)
 {
+	PropertyRNA *prop;
+
 	/* identifiers */
 	ot->name= "Tris to Quads";
 	ot->idname= "MESH_OT_tris_convert_to_quads";
@@ -3544,8 +3546,9 @@
 	/* flags */
 	ot->flag= OPTYPE_REGISTER|OPTYPE_UNDO;
 
-	RNA_def_float(ot->srna, "limit", 40.0f, -180.0f, 180.0f, "Max Angle", "Angle Limit in Degrees", -180, 180.0f);
-	
+	prop= RNA_def_float_rotation(ot->srna, "limit", 0, NULL, 0.0f, DEG2RADF(180.0f), "Max Angle", "Angle Limit in Degrees", 0.0f, DEG2RADF(180.0f));
+	RNA_def_property_float_default(prop, DEG2RADF(40.0f));
+
 	RNA_def_boolean(ot->srna, "uvs", 0, "Compare UVs", "");
 	RNA_def_boolean(ot->srna, "vcols", 0, "Compare VCols", "");
 	RNA_def_boolean(ot->srna, "sharp", 0, "Compare Sharp", "");




More information about the Bf-blender-cvs mailing list