From d3b970ba05936a4d135dbf1b45a58faec1af7f83 Mon Sep 17 00:00:00 2001 From: Ian Jackson Date: Sun, 26 Aug 2012 21:22:00 +0100 Subject: [PATCH] filamentclip wip --- cliphook.scad | 2 +- filamentclip.scad | 44 ++++++++++++++++++++++++++++++++++---------- 2 files changed, 35 insertions(+), 11 deletions(-) diff --git a/cliphook.scad b/cliphook.scad index 63f5d9b..826d0d7 100644 --- a/cliphook.scad +++ b/cliphook.scad @@ -7,7 +7,7 @@ function ClipHook_xe(w,g,l,ye,k) = sqrt(pow( ClipHook_r3(w,g,l,ye,k), 2) - pow( ClipHook_yd(w,g,l,ye,k) - ye, 2)); -module FlatArc(cx,cy,r1,r2,a1,a2=360) { +module FlatArc(cx,cy,r1,r2,a1,a2=361,$fn=$fn) { astep = (a2-a1)/6; size = 5*(r2/2); translate([cx,cy,0]) { diff --git a/filamentclip.scad b/filamentclip.scad index 4b57bdf..02191cb 100644 --- a/filamentclip.scad +++ b/filamentclip.scad @@ -4,21 +4,45 @@ rad=12; h=3.5; w=1.2; -looprad=3; +looprad=2.5; loopw=w; -rotate([0,0,-45]) { - translate([0,rad,0]) { - ClipHook(h=h,w=w,k=1.5, ye=-1.3); - rotate([0,0,180]) ClipHook(h=h,w=w,k=1.5, ye=0.8); +fdia=1.77; + +module FilamentClipTeeth(based=1.5, basew=4, clipw=0.6) { +// for (mirr=[0:1]) { +// mirror([0,mirr,0]) { +// linear_extrude(height=h) { +// translate(0.5, square([ +// } +// } +// } + extent1=1.5; +// jaww= + translate([-based, -basew/2, 0]) cube([based, basew, h]); +// translate([ + linear_extrude(height=h) { + FlatArc(extent1+fdia/2, 0, fdia/2, fdia/2+clipw, $fn=30); } } -linear_extrude(height=h) { - assign($fn=80) { - FlatArc(0,0, rad-w/2,rad+w/2, 65,379); +module FilamentClip() { + rotate([0,0,-45]) { + translate([0,rad,0]) { + ClipHook(h=h,w=w,k=1.5, ye=-1.3); + rotate([0,0,180]) ClipHook(h=h,w=w,k=1.5, ye=0.8); + } } - assign($fn=30) { - FlatArc(0,rad+looprad, looprad-loopw/2,looprad+loopw/2, 0,361); + + linear_extrude(height=h) { + assign($fn=80) { + FlatArc(0,0, rad-w/2,rad+w/2, 65,379); + } + assign($fn=30) { + FlatArc(0,rad+looprad+w, looprad,looprad+loopw); + } } } + +FilamentClip(); +//FilamentClipTeeth(); -- 2.30.2