include ; include ; spacing = 2; %color([0.0, 0.0, 0.8], 0.5) translate([0, 0, -1]) square([600, 400]); base_offset = [60, 60]; second_offset = [lamp_dia/2, -lamp_dia/6+4*spacing]; translate(base_offset + [0, 0]) top_outer_plate(); translate(base_offset + [lamp_dia+spacing, 0]) top_inner_plate(); translate(base_offset + [2*(lamp_dia+spacing), 0]) bottom_inner_plate(); translate(base_offset + second_offset + [0, lamp_dia+spacing]) bottom_outer_plate(); translate(base_offset + second_offset + [1*(lamp_dia+spacing), lamp_dia+spacing]) base_plate(); ledstrip_holder_base_pos = [250, 0] + [ inner_height/2 + tooth_height - lamp_dia/2, 1.5*lamp_dia + spacing - holder_width/2]; for(i = [1:8]) { translate(ledstrip_holder_base_pos + [i*(spacing + holder_width), 0]) rotate(0) ledstrip_holder(); } translate([310, 200]) rotate(90) for(x = [1:1]) { for(y = [1:7]) { translate([x*(spacing+bottom_box_height+tooth_height*2), y*(spacing + bottom_box_wall_width)]) rotate(90) box_wall(); } } translate([30, 145]) rotate(0) box_wall_with_holes(); /* translate([-20, 190]) for(x = [0:3]) { for(y = [0:1]) { translate([x * (foot_outer_radius - foot_inner_radius + 2), y * 25]) foot_piece(); } } */