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=488c68cbb5af3f7357518028ef785d3a5c24fd64;hb=12a6dcfdb843643da3c0b237c10b02e43ee25ab8;hpb=875f5748f29f31ea27a33abed746eac170133a1d diff --git a/anke-gps-bracket.scad b/anke-gps-bracket.scad index 488c68c..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 = nestlew - 50.0; -nestledwr = nestlew - 58.5; -nestleddf = nestledl - 36.2; -nestleddbl = nestledl - 36.9; -nestleddbr = nestledr - 36.9; +nestledwl = 2.1; +nestledwr = 1.4; +nestleddf = 4.0; +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 = 1.7; -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; @@ -259,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); } @@ -278,7 +283,15 @@ module NestleCubeBaseTest(){ ////toplevel translate([0,0,nestleh]) NestleCube(); translate([-100,-100,0]) cube([200,200,nestlebevel*5]); } - cube([5,5,15]); + 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 @@ -352,6 +365,7 @@ module Pins(){ ///toplevel //GpsBody(); //NestleCube(); //NestleCubeBaseTest(); +//NestleCubeCeilTest(); //NestleCubePin(); //HolderSideL(); //HolderSideR();