$fn=75; // if you want a 10mm triangle use a 8mm 3 sided cylinder for the triangle // and a height so small it won't really register. // 30 mm triangle // .5 cm height = 5 inches_to_mm = 25.4; module my_function(){ minkowski(){ cylinder(d=40,h=5,$fn=3); // makes your triangle cylinder(d=3,h=0.00001); // rounds off the corners } // end minkowski } difference(){ my_function(); // translate([-6, -14, 6]) rotate([0,90,0]) cube([8,24,4]); union(){ translate([-6, -11, -1]) cube([4,22,8]); holes();} } module holes(){ top_height = -10; translate([top_height,14,-1]) cylinder(r=.7, h=7, $fn=50); translate([top_height,16,-1]) cylinder(r=.7, h=7, $fn=50); translate([top_height,-14,-1]) cylinder(r=.7, h=7, $fn=50); translate([top_height,-16,-1]) cylinder(r=.7, h=7, $fn=50); translate([-top_height+8,1,-1]) cylinder(r=.7, h=7, $fn=50); translate([-top_height+8,-1,-1]) cylinder(r=.7, h=7, $fn=50); }