From 358b82bceff1fbcd190bf6909034526f5f3b684b Mon Sep 17 00:00:00 2001 From: Ian Jackson Date: Fri, 2 Jan 2015 00:33:45 +0000 Subject: [PATCH] knifeblock: Have HexGrid calculate jmin et al from coordinates (no ultimate resulting change to model, although numbers of generated grid objects are different) --- knifeblock.scad | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/knifeblock.scad b/knifeblock.scad index 4261be6..fcf3e4b 100644 --- a/knifeblock.scad +++ b/knifeblock.scad @@ -147,7 +147,7 @@ module BlockPegSlot(){ module DecorativeIndents(){ translate([0, -front, 0]) rotate([90,0,0]) - HexGrid(-5,5,-5,5) { + HexGrid(-height, 0, minx,maxx) { hull(){ translate([0, 0, -indentdepth]) cylinder(r=indentinnersize/2, h=indentdepth, $fn=40); @@ -241,7 +241,12 @@ module HolesScope(){ } } -module HexGrid(imin,imax,jmin,jmax) { +module HexGrid(xa,xb,ya,yb) { + imin = floor(xa / holepitch); + imax = ceil(xb / holepitch); + jmin = floor(ya / (sqrt(3)*holepitch)); + jmax = ceil(yb / (sqrt(3)*holepitch)); + echo("HexGrid ",imin,imax,jmin,jmax); for (i=[imin:imax]) { for (j=[jmin:jmax]) { translate([(j * sqrt(3) + holeoffx) * holepitch, @@ -260,13 +265,9 @@ module Hole(){ } module Holes(){ - imax = ceil(coverlonglen / holepitch); - echo("Holes Y count ", imax); - jmin = ceil((maxx-minx)/(sqrt(3)*holepitch)); - echo("Holes X count 2 x", jmin); intersection(){ translate([0, 0, -20]) - HexGrid(0,imax,-jmin,2) + HexGrid(0, coverlonglen, minx, maxx) Hole(); HolesScope(); } -- 2.30.2