From f0817a1c167c9d9f0ecf0ef8ec7bee03d61e63f2 Mon Sep 17 00:00:00 2001 From: Marius Kintel Date: Mon, 26 Dec 2011 13:22:43 +0100 Subject: bugfix: Reinstated normal length sanity check since at least once case slipped through; testdata/scad/misc/normal-nan.scad diff --git a/src/export.cc b/src/export.cc index 99bce98..5ce2d15 100644 --- a/src/export.cc +++ b/src/export.cc @@ -102,6 +102,9 @@ void export_stl(CGAL_Nef_polyhedron *root_N, std::ostream &output, QProgressDial double ny = dn[2]*dn[3] - dn[0]*dn[5]; double nz = dn[0]*dn[4] - dn[1]*dn[3]; double nlength = sqrt(nx*nx + ny*ny + nz*nz); + // Avoid generating normals for polygons with zero area + double eps = 0.000001; + if (nlength < eps) nlength = 1.0; output << " facet normal " << nx / nlength << " " << ny / nlength << " " -- cgit v0.10.1