cuts.scad 1.85 KB
include<vars.scad>

module cornerdrills() {

  translate([4.4,0.8,0]) {
    cylinder(d=1.2,h=4, $fn=10);
  }
  translate([2.4,0.8,0]) {
    hull() {
      cylinder(d=0.6,h=50, $fn=10);
      translate([2,0,0])
        cylinder(d=0.6,h=50, $fn=10);
    }
  }

  translate([0.8,2.4,0]) {
    hull() {
      cylinder(d=0.6,h=40, $fn=10);
      translate([0,2,0]) cylinder(d=0.6,h=40, $fn=10);
    }
  }
  translate([0.8,4.4,10]) {
    cylinder(d=1.2,h=20, $fn=10);
  }

}

module draindrills(x,y) {
  /* translate([x/2,y/2,-5]) { */
  /*   #cylinder(d=1,h=10); */
  /* } */

  minX = gratesize+strength+0.6;
  minY = gratesize+strength+0.6;
  maxX = x-gratesize-strength-0.6;
  maxY = y-gratesize-strength-0.6;

  /* echo(minX); */
  /*   echo(maxX); */
    for (mmx =[minX,maxX])
      for (mmy =[minY,maxY])
        translate([ mmx
                    , mmy
                    , -5
                    ]) cylinder(d=0.6,h=10, $fn=10);

  for (xx =[1:5])
    for (yy =[1:5])
      translate([x/6*xx,y/6*yy,-5])
        cylinder(d=1,h=10, $fn=10);


  /* translate([x/2,y/4,-5]) { */
  /*   #cylinder(d=1,h=10); */
  /* } */
  /* translate([x/4,y/2,-5]) { */
  /*   #cylinder(d=1,h=10); */
  /* } */
}

module gx12drill(z) {
  translate([gxXPos,gxYPos,0])
    cylinder(d=1.2,h=3, $fn=10);
  translate([gxXPos,gxYPos,z-2])
    cylinder(d=1.2,h=3, $fn=10);
  translate([gxXPos,gxYPos,z-4])
    cylinder(d=0.6,h=3, $fn=10);
}

module pipedrill() {
  translate([1,5,0]) cylinder(d=0.6,h=50, $fn=10);
}

module drills(x,y,z) {
  draindrills(x,y);
  cornerdrills();
  mirror([0,1,0]) translate([0,-y,0]) cornerdrills();
  mirror([1,0,0]) translate([-x,0,0]) cornerdrills();
  mirror([1,0,0]) translate([-x,y,0]) mirror([0,1,0]) cornerdrills();
  mirror([1,0,0]) translate([-x,0,0]) gx12drill(z);
  mirror([1,0,0]) translate([-x,0,0]) rotate([0,0,90]) translate([0,-1.4,0]) gx12drill(z);
  pipedrill();
}