X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=reprap-play.git;a=blobdiff_plain;f=cliphook.scad;h=22f08f54ec09a1d7d441488b755ded87f6cb753d;hp=2d29506e145931836d0025de54cb7aaed076eea7;hb=1cf13680665629e8fa0acba6e078e2a6157533a3;hpb=cc74468c8111767784b9beaae81f0d1fbb8b935d diff --git a/cliphook.scad b/cliphook.scad index 2d29506..22f08f5 100644 --- a/cliphook.scad +++ b/cliphook.scad @@ -1,3 +1,22 @@ +// -*- C -*- +// +// cliphook.scad +// +// 3D design for a small clippy hook +// Copyright 2012,2016 Ian Jackson +// +// This work is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. +// +// This work is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License +// along with this work. If not, see . function ClipHook_r2(w,g,l,ye,k) = w/2 + g + w/2; function ClipHook_r3(w,g,l,ye,k) = k * (ClipHook_r2(w,g,l,ye,k) + w + g); @@ -15,11 +34,11 @@ module FlatArc(cx,cy,r1,r2,a1,a2=361,$fn=$fn) { difference() { circle(r=r2); translate([0,0,-1]) - circle(r=r1, h=h+2); + circle(r=r1); } scale(size) { for (ai=[0:4]) { - echo(" jarc ", a1,a2, astep, ai, a1 + astep*ai ); + //echo(" jarc ", a1,a2, astep, ai, a1 + astep*ai ); rotate(a1 + astep*ai) { polygon([ [0,0], [1,0], [cos(astep*2),sin(astep*2)] ]); @@ -65,14 +84,14 @@ module ClipHook(w=1.2, g=0.2, l=0.0, ye=0, k=2.0, h=3.5, demo=false, linear_extrude(height=h) ClipHook_2D(w,g,l,ye,k); if (cupcapg != 0) { - translate([0,-(w+g),h-cupcaph]) + translate([-g+0.01,-(w+g),h-cupcapg]) cube([w,(w+g),cupcaph+1]); } } if (cupcaph != 0) { translate([-l/2, g/2+w/2, h-0.01]) intersection() { - cylinder(r=ClipHook_r2(w,g,l,ye,k)+w/2, h=cupcaph, $fn=16); + cylinder(r=ClipHook_r2(w,g,l,ye,k)+w*0.4, h=cupcaph, $fn=16); translate([-50-g,-50,-1]) cube([50,100,h+2]); } }