// -*- C -*- include height = 60; th = 6; curl = 10; width = 85; sides_depth = 35; $fa = 3; $fs = 0.3; // calculated upper_r = th/2; upper_ctr_maj_r = curl/2 + upper_r; module UpperPlan(){ circle(r = upper_r); } module Upper(){ translate([upper_ctr_maj_r, 0, 0]) linextr(-0.1, height + 0.1) UpperPlan(); translate([0, 0, height]){ rotate([90,0,0]) rotate_extrude(angle=180) translate([upper_ctr_maj_r, 0]) UpperPlan(); translate([-upper_ctr_maj_r, 0,0]) sphere(r= upper_r); } } Upper();