From 60a4561da5b0592f20910e8a9ea4fcdbb1b1a2f7 Mon Sep 17 00:00:00 2001 From: Don Bright Date: Sat, 14 Dec 2013 22:15:57 -0600 Subject: fix bug in polyhedron() primitive keyword 'faces' vs 'triangles' diff --git a/src/dxftess-cgal.cc b/src/dxftess-cgal.cc index ebdcf58..e5c62c4 100644 --- a/src/dxftess-cgal.cc +++ b/src/dxftess-cgal.cc @@ -466,8 +466,6 @@ using CGAL's Constrained Delaunay algorithm. This code assumes the input polyset has simple polygon faces with no holes, no self intersections, and no duplicate points. */ void tessellate_3d_faces( const PolySet &inps, PolySet &outps ) { - PRINTB("tess 3d %i",inps.polygons.size()); - PRINTB("%s < input ps",inps.dump()); for (size_t i = 0; i < inps.polygons.size(); i++) { const PolySet::Polygon pgon = inps.polygons[i]; if (pgon.size()<3) continue; @@ -482,9 +480,7 @@ void tessellate_3d_faces( const PolySet &inps, PolySet &outps ) { outps.append_vertex(t[2].x(),t[2].y(),t[2].z()); } } - PRINTB("tess 3d done %i",outps.polygons.size()); - PRINTB("%s < output ps",outps.dump()); } -// End of the Tessellation of PolySet polygons +// End of PolySet face tessellation code diff --git a/src/primitives.cc b/src/primitives.cc index 0d557a2..a76637d 100644 --- a/src/primitives.cc +++ b/src/primitives.cc @@ -235,8 +235,11 @@ AbstractNode *PrimitiveModule::instantiate(const Context *ctx, const ModuleInsta if (type == POLYHEDRON) { node->points = c.lookup_variable("points"); - node->faces = c.lookup_variable("triangles"); node->faces = c.lookup_variable("faces"); + if (node->faces.type() == Value::UNDEFINED) { + // backwards compatable + node->faces = c.lookup_variable("triangles"); + } } if (type == SQUARE) { -- cgit v0.10.1