X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=reprap-play.git;a=blobdiff_plain;f=sprinkler-spike-receptacle.scad;h=de224850b3161c883f1725f5663a2e1d6501c282;hp=2c8534f467034ad20b817ddbddeaee602ff44aec;hb=85e5e464e52ff013a4ee13d0150db3ea50b12da9;hpb=b7816f485ca65d49bb183fd7be752f0f7674fae8 diff --git a/sprinkler-spike-receptacle.scad b/sprinkler-spike-receptacle.scad index 2c8534f..de22485 100644 --- a/sprinkler-spike-receptacle.scad +++ b/sprinkler-spike-receptacle.scad @@ -2,6 +2,8 @@ main_height = 95; +spike_web_thick = 2.52 + 0.5; + spike_top_width = 21.04; spike_botpos_height = 9.5; @@ -9,6 +11,10 @@ spike_botpos_width = 11.68; topwall_width = 1.5; +// calculated + +main_width = spike_top_width + topwall_width*2; + module NegativePlan(){ x4z = (spike_top_width - spike_botpos_width) / @@ -21,16 +27,52 @@ module NegativePlan(){ polygon([[ x0, -5], [ x0, 0], [ x1, z1], + [ x1, z1+5], + [-x1, z1+5], [-x1, z1], [-x0, 0], [-x0, -5]]); } module PositivePlan(){ - w = spike_top_width + topwall_width*2; + w = main_width; translate([ -w/2, 0 ]) square([ w, main_height ]); } -PositivePlan(); -//NegativePlan(); +module MultiplySolidifyPlan(th){ + for (r=[0,90]) { + rotate([0,0,r]) + rotate([90,0,0]) + translate([0,0,-th/2]) + linear_extrude(height=th) + children(0); + } +} + +module Main(){ + MultiplySolidifyPlan(spike_web_thick) NegativePlan(); +} + +module PlanTest(){ + linear_extrude(height=2.0){ + difference(){ + PositivePlan(); + NegativePlan(); + } + difference(){ + circle(r = spike_botpos_width/2 + 5); + circle(r = spike_botpos_width/2); + translate([-50, 0]) square([100,50]); + } + } + linear_extrude(height=4.0){ + difference(){ + translate([ -main_width/2, 0 ]) square([ main_width, 2 ]); + NegativePlan(); + } + } +} + +//PlanTest(); +Main();