[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [19258] branches/bmesh/blender/source/ blender/bmesh/intern/bmesh_polygon.c: numerical error fix for tesselator
Joseph Eagar
joeedh at gmail.com
Wed Mar 11 07:04:18 CET 2009
Revision: 19258
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=19258
Author: joeedh
Date: 2009-03-11 07:04:17 +0100 (Wed, 11 Mar 2009)
Log Message:
-----------
numerical error fix for tesselator
Modified Paths:
--------------
branches/bmesh/blender/source/blender/bmesh/intern/bmesh_polygon.c
Modified: branches/bmesh/blender/source/blender/bmesh/intern/bmesh_polygon.c
===================================================================
--- branches/bmesh/blender/source/blender/bmesh/intern/bmesh_polygon.c 2009-03-11 05:46:48 UTC (rev 19257)
+++ branches/bmesh/blender/source/blender/bmesh/intern/bmesh_polygon.c 2009-03-11 06:04:17 UTC (rev 19258)
@@ -504,13 +504,13 @@
///bmesh_update_face_normal(bm, f, projectverts);
+ /*this fixes some weird numerical error*/
+ projectverts[0][0] += 0.0001f;
+ projectverts[0][1] += 0.0001f;
+ projectverts[0][2] += 0.0001f;
+
compute_poly_normal(f->no, projectverts, f->len);
poly_rotate_plane(f->no, projectverts, i);
- /*check if we rotated the wrong way*/
- compute_poly_normal(no, projectverts, f->len);
- if (no[2] < 0) {
- poly_rotate_plane(no, projectverts, i);
- }
nvert = f->len;
@@ -518,7 +518,7 @@
for (i=0; i<nvert; i++) {
projectverts[i][2] = 0.0f;
}
-
+
done = 0;
while(!done && f->len > 3){
done = 1;
More information about the Bf-blender-cvs
mailing list