// -*- C -*- include module Gland(){ hull(){ for (m=[0,1]) { mirror([0,0, m]) { translate([0,0, 1.5 + (25-13)/2]) cylinder(r=13 /2 , h=0.5); translate([0,0, 1.5]) cylinder(r=25 / 2, h=0.5); } } } } module Plate(){ difference(){ union(){ Gland(); translate([-20,-20,-1.5]) cube([40,40,3]); } translate([0,0,-50]) cylinder(r=12.5 / 2, h=100); } } module Test(){ rotate([90,0,0]) translate([0, 20, 0]) Plate(); translate([-20,-20,0]){ difference(){ cube([40,20,1.2]); Commitid_BestCount_M([40,20]); } } } Test();