$fn = 100; auflage_length=330; auflage_width=60; auflage_thickness=8; auflage_radius_corners=5; pos_hole=112; holes_distance=15; distanzhalter_length=40; distanzhalter_width=40; distanzhalter_thickness=5; surplus=1; module auflage() { minkowski() { cube([auflage_length - (2 * auflage_radius_corners),auflage_width - (2 * auflage_radius_corners),auflage_thickness], center=true); cylinder(r=auflage_radius_corners, h=0.1, center=true); }; } module distanzhalter() { minkowski() { cube([distanzhalter_length - (2 * auflage_radius_corners),distanzhalter_width - (2 * auflage_radius_corners),distanzhalter_thickness], center=true); cylinder(r=auflage_radius_corners, h=0.1, center=true); }; } module loch() { translate([0,0,0-surplus]) cylinder(d=6.5, h=auflage_thickness+distanzhalter_thickness+(2 * surplus)); translate([0,0,0-surplus]) cylinder(d2=6.5, d1=6.5+(2*(3.5+surplus)), h=(3.5+surplus)); } color("red") difference() { union() { translate([0,0,auflage_thickness/2]) auflage(); translate([(auflage_length/2)-pos_hole,0,(distanzhalter_thickness / 2) + auflage_thickness]) distanzhalter(); } translate([(auflage_length/2)-pos_hole,0-(holes_distance/2),0]) loch(); translate([(auflage_length/2)-pos_hole,0+(holes_distance/2),0]) loch(); }