[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [25109] trunk/blender/intern/boolop/intern /BOP_Face2Face.cpp: Fix for [#20229] Booleans crash on edge case.

Matt Ebb matt at mke3.net
Fri Dec 4 01:54:52 CET 2009


Revision: 25109
          http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=25109
Author:   broken
Date:     2009-12-04 01:54:40 +0100 (Fri, 04 Dec 2009)

Log Message:
-----------
Fix for [#20229] Booleans crash on edge case.

Modified Paths:
--------------
    trunk/blender/intern/boolop/intern/BOP_Face2Face.cpp

Modified: trunk/blender/intern/boolop/intern/BOP_Face2Face.cpp
===================================================================
--- trunk/blender/intern/boolop/intern/BOP_Face2Face.cpp	2009-12-04 00:49:02 UTC (rev 25108)
+++ trunk/blender/intern/boolop/intern/BOP_Face2Face.cpp	2009-12-04 00:54:40 UTC (rev 25109)
@@ -310,7 +310,7 @@
 	}
   
 	MT_Vector3 p3p1 = p1-p3;
-	MT_Plane3 plane3((p3p1.cross(normal).normalized()),p3);
+	MT_Plane3 plane3((p3p1.cross(normal).safe_normalized()),p3);
 	
 	sA.m_cfg1 = BOP_Segment::createVertexCfg(3);
 	sA.m_v1 = faceA->getVertex(2);
@@ -528,7 +528,7 @@
 		invertB = false;
 		if (face[1] == 1) {
 
-			// invertA\xBF?
+			// invertAø?
 			for(i=0;i<size;i++) {
 				if (position[i] == 1) {
 					invertA = true;
@@ -537,7 +537,7 @@
         			else if (position[i] == 0) break;
       			}
 
-			// invertB\xBF?
+			// invertBø?
 			if (size == 4) {
 				for(i=0;i<size;i++) {
 					if (position[i] == 3) {
@@ -549,7 +549,7 @@
 			}
 		}
 		else if (face[1] == 2) {
-			// invertB\xBF?
+			// invertBø?
 			for(i=0;i<size;i++) {
 				if (position[i] == 2) {
 					invertB = true;





More information about the Bf-blender-cvs mailing list