-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 (demo)
- %linear_extrude(height=h)
- translate([l+w,0,0]) rotate(180) ClipHook_2D(w,g,l,ye,k);
+module ClipHook(w=1.2, g=0.2, l=0.0, ye=0, k=2.0, h=3.5, demo=false,
+ cupcaph=0, cupgapg=0) {
+ difference() {
+ linear_extrude(height=h)
+ ClipHook_2D(w,g,l,ye,k);
+ if (cupcapg != 0) {
+ 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*0.4, h=cupcaph, $fn=16);
+ translate([-50-g,-50,-1]) cube([50,100,h+2]);
+ }
+ }