From 73e16e17c0b921dd46b3f2d31a0004c094a7dda0 Mon Sep 17 00:00:00 2001 From: Adrian Mariano Date: Wed, 20 Aug 2025 19:27:51 -0400 Subject: [PATCH 1/2] Fix bug which creates internal faces in path_sweep when closed=true --- skin.scad | 3 +++ 1 file changed, 3 insertions(+) diff --git a/skin.scad b/skin.scad index b6344ca6..b33f5ca7 100644 --- a/skin.scad +++ b/skin.scad @@ -2276,6 +2276,9 @@ function path_sweep(shape, path, method="incremental", normal, closed, twist=0, assert(!closed || !approx(path[0],last(path)), "\nClosed path includes start point at the end.") assert((is_region(shape) || is_path(shape,2)) || (transforms && !(closed && method=="incremental")),"\nshape must be a 2d path or region.") let( + caps = !closed ? caps + : assert(is_undef(caps) || caps==false || caps==[false,false], "Cannot specify caps when closed=true") + false, path = path3d(path), normalOK = is_undef(normal) || (method!="natural" && is_vector(normal,3)) || (method=="manual" && same_shape(normal,path)), From 7ec33d69d5f18924ca6cfc3f7b2520dfb68c64ee Mon Sep 17 00:00:00 2001 From: Adrian Mariano Date: Wed, 20 Aug 2025 19:28:15 -0400 Subject: [PATCH 2/2] remove triangulation from top/bottom of rounded_prism because it was a big performance hit --- rounding.scad | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/rounding.scad b/rounding.scad index f83a02f3..734e2999 100644 --- a/rounding.scad +++ b/rounding.scad @@ -2572,8 +2572,9 @@ function rounded_prism(bottom, top, joint_bot=0, joint_top=0, joint_sides=0, k_b vnf = vnf_join([ each column(top_samples,0), each column(bot_samples,0), for(pts=edge_points) vnf_vertex_array(pts), - debug ? vnf_from_polygons(faces,fast=true) - : vnf_triangulate(vnf_from_polygons(faces)) + vnf_from_polygons(faces,fast=true) + // debug ? vnf_from_polygons(faces,fast=true) + // : vnf_triangulate(vnf_from_polygons(faces)) ]), topnormal = unit(cross(top[0]-top[1],top[2]-top[1])),