X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=reprap-play.git;a=blobdiff_plain;f=anke-gps-bracket.scad;h=084eefd2579d7f31311191fc115920c16c141b4c;hp=be0872bf4ce5138c52eb84e3d89c2dacacb1763b;hb=cd9506cd4f5fea2b670bf46cf45d937376e5e77f;hpb=72a7ed40341985abe64ac6a7045a1e1e1ad38c29 diff --git a/anke-gps-bracket.scad b/anke-gps-bracket.scad index be0872b..084eefd 100644 --- a/anke-gps-bracket.scad +++ b/anke-gps-bracket.scad @@ -41,14 +41,14 @@ pluggapd = 5; nestleh = 53; nestlew = 60.9; // depths (back to front distance): -nestledl = 38.3 + 1.9; -nestledr = 42.2 + 1.7; +nestledl = 40.2; +nestledr = 43.9; // differences in width, depth, at bottom: -nestledwl = 3.0; -nestledwr = 2.4; +nestledwl = 2.1; +nestledwr = 1.4; nestleddf = 4.0; -nestleddbl = 3.3; -nestleddbr = 3.6; +nestleddbl = 5.7; +nestleddbr = 5.2; // Adjustment for the GPS attitude and position gpsazimuth = 45; @@ -66,7 +66,7 @@ plughstep = 1.5; bodylhsrhsslop = 0.5; holderhgap = 5; holderbezelmore = 2; -nestlebevel = 2; +nestlebevel = 1; // Dimensions for strength only screent = 1.0; @@ -80,9 +80,10 @@ holderdccount = 2; holderdoveclipl = 15; chassish = 13; chassist = 13; -nestlefloorh = 2.0; -nestleceilh = 2.0; -nestlewallmin = 3.0; +nestlefloorh = 4.7; +nestleceilh = 6.0; +nestlewallmin = 10.0; +nestlearchslope = 0.75 * sqrt(0.5); // Consequential values holderdcw = DoveClipPairSane_width(holderdccount); @@ -195,9 +196,9 @@ module NestleCubeCutout(ca,cb,d){ linear_extrude(height=d+2){ polygon([[ca+nestlebevel, cuth], [ca, cuth+nestlebevel*2], - [ca, -dist/2-nestleceilh], + [ca, -dist/2/nestlearchslope-nestleceilh], [(ca+cb)/2, -nestleceilh], - [cb, -dist/2-nestleceilh], + [cb, -dist/2/nestlearchslope-nestleceilh], [cb, cuth+nestlebevel*2], [cb-nestlebevel, cuth]]); } @@ -215,6 +216,10 @@ module NestleCube(){ ////toplevel basew0 = -nestledwr; basew1 = +nestledwl-nestlew; + echo("wl,wr=", basew1, basew0); + echo("df,dbl,dbm,dbr", + based0, nestledl-nestleddbl, based1, nestledr-nestleddbr); + cutd0 = based0 + nestlewallmin; cutd1 = based1 - nestlewallmin; cutw0 = basew0 - nestlewallmin; @@ -249,7 +254,6 @@ module NestleCube(){ ////toplevel [2,3,8],[8,7,2], [3,4,9],[9,8,3], [4,0,5],[5,9,4], - [0,1,6],[6,5,0], // bevels [6,7,12],[12,11,6], [7,8,13],[13,12,7], @@ -260,7 +264,7 @@ module NestleCube(){ ////toplevel [4,3,2],[2,1,0],[0,4,2], [12,13,14],[10,11,12],[12,14,10]], convexity=3); - intersection(){ + union(){ #NestleCubeCutout(cutw1, cutw0, max(nestledl,nestledr)); #rotate([0,0,90]) NestleCubeCutout(cutd0, cutd1, nestlew); } @@ -274,6 +278,22 @@ module NestleCube(){ ////toplevel DoveClipPairSane(count=3, h=nestledoveclipw); } +module NestleCubeBaseTest(){ ////toplevel + intersection(){ + translate([0,0,nestleh]) NestleCube(); + translate([-100,-100,0]) cube([200,200,nestlebevel*5]); + } + cube([5,5,10]); +} + +module NestleCubeCeilTest(){ ////toplevel + intersection(){ + translate([0,0,3]) NestleCube(); + translate([-100,-100,0]) cube([200,200,5.5]); + } + cube([5,5,10]); +} + module NestleCubePin(){ ////toplevel DoveClipPin(nestledoveclipw*0.4); } @@ -344,6 +364,8 @@ module Pins(){ ///toplevel //GpsAssembled(); //GpsBody(); //NestleCube(); +//NestleCubeBaseTest(); +//NestleCubeCeilTest(); //NestleCubePin(); //HolderSideL(); //HolderSideR();