From bd4f7b155bc532caa9670cb7e6b292e1d0a4d469 Mon Sep 17 00:00:00 2001 From: Martin Budden Date: Fri, 8 Jan 2021 11:33:17 +0000 Subject: [PATCH] Conditionally rendered pulleys to speed up drawing. --- vitamins/pulley.scad | 32 +++++++++++++++++--------------- 1 file changed, 17 insertions(+), 15 deletions(-) diff --git a/vitamins/pulley.scad b/vitamins/pulley.scad index e3618f1..504b183 100644 --- a/vitamins/pulley.scad +++ b/vitamins/pulley.scad @@ -108,24 +108,26 @@ module pulley(type) { //! Draw a pulley cylinder(r = screw_radius(pulley_screw(type)), h = 100); } - color("silver") { - render() difference() { - rotate_extrude() translate([r1, 0]) { - if(hl) - square([pulley_hub_dia(type) / 2 - r1, hl]); + color(silver) { + render_if(pulley_screw_z(type) < hl) + difference() { + rotate_extrude() translate([r1, 0]) { + if(hl) + square([pulley_hub_dia(type) / 2 - r1, hl]); - for(z = [pulley_hub_length(type), hl + ft + w]) - translate([0, z]) - square([pulley_flange_dia(type) / 2 - r1, ft]); + for(z = [pulley_hub_length(type), hl + ft + w]) + translate([0, z]) + square([pulley_flange_dia(type) / 2 - r1, ft]); + } + if(pulley_screw_z(type) < hl) + screw_holes(); } - if(pulley_screw_z(type) < hl) - screw_holes(); - } - render() difference() { // T5 pulleys have screw through the teeth - core(); + render_if(pulley_type(type)[0] == "T") // T5 pulleys have screw through the teeth + difference() { + core(); - if(pulley_screw_z(type) > hl) - screw_holes(); + if(pulley_screw_z(type) > hl) + screw_holes(); } } }