module sholder_strap(strap_len = 400, blobs = [150, 200, 250], blob_d = 10, thikness = 0.5, width = 40, hole_d = 10) { difference() { union() { linear_extrude(height=thikness) hull() { circle(d=width); translate([strap_len, 0]) circle(d=width); } for (i=blobs) translate([i, 0, 0]) sholder_strap_blob(d=blob_d); } translate([0, 0, -thikness/2]) cylinder(h = thikness*2, d = hole_d); translate([strap_len, 0, -thikness/2]) cylinder(h = thikness*2, d = hole_d); } } module sholder_strap_blob(d) { difference() { sphere(d=d); translate([0, 0, -d]) cube([2*d, 2*d, 2*d], center=true); } } sholder_strap( strap_len = 400, blobs = [124, 200, 275], blob_d = 10, thikness = 0.4, width = 40, hole_d = 10 );