diff options
Diffstat (limited to 'suspension_fork.scad')
-rw-r--r-- | suspension_fork.scad | 52 |
1 files changed, 45 insertions, 7 deletions
diff --git a/suspension_fork.scad b/suspension_fork.scad index e0f7b93..dc2084c 100644 --- a/suspension_fork.scad +++ b/suspension_fork.scad @@ -1,5 +1,6 @@ axe_shift=18.2; shaft_distance=53; +dark=[.1,.1,.1]; module fork_shaft(){ thread_height=38; thread_diameter=25.4; @@ -10,6 +11,7 @@ module fork_shaft(){ shaft_height2=6; shaft_diameter2=27; + translate([0,0,-thread_height]) cylinder(h=thread_height,d=thread_diameter); @@ -18,7 +20,7 @@ module fork_shaft(){ translate([0,0,-(thread_height+shaft_height1+shaft_height2)]) cylinder(h=shaft_height2,d=shaft_diameter2); - + } module forking(){ @@ -32,14 +34,17 @@ module forking(){ module side_shaft(){ - translate([0,0,-38.5])cylinder(d=25.5,h=38.5); - translate([0,0,-(38.5+14.8)]) cylinder(d1=41.5,d2=25.5,h=14.8); - translate([0,0,-(38.5+22)]) cylinder(d1=32.5,d2=41.5,h=22-14.8); - translate([0,0,-(38.5+184)]) cylinder(d1=32,d2=32.5,h=176); + color("Gainsboro",1)translate([0,0,-38.5])cylinder(d=25.5,h=38.5); + color(dark,1){ + translate([0,0,-(38.5+14.8)]) cylinder(d1=41.5,d2=25.5,h=14.8); + translate([0,0,-(38.5+22)]) cylinder(d1=32.5,d2=41.5,h=22-14.8); + translate([0,0,-(38.5+184)]) cylinder(d1=32,d2=32.5,h=176); + } } module wheel_holder(){ thick=4.5; + color(dark,1) rotate([270,90,0]) translate([0,0,-thick/2]) difference(){ @@ -58,11 +63,39 @@ module wheel_holder(){ } } + + +module bow_shape(){ + polygon(points=[[0,0],[28,0],[22,8],[14,11],[6,8]]); +} + +module bow(){ + translate([0,0,-68.5]){ + difference(){ + rotate([0,90,0]) + rotate_extrude(convexity = 10) + translate([40.5,0,0]) bow_shape(); + translate([-100,-100,-200])cube([200,200,200]); + } + translate([0,-40.5,-77.5])rotate([0,0,-90]) linear_extrude(height=77.5) bow_shape(); + translate([0,68.5,-77.5])rotate([0,0,-90]) linear_extrude(height=77.5) bow_shape(); + } +} + + + +module brake_holder(){ + color("gainsboro",1) + rotate([0,90,0]){ + translate([0,0,-20])cylinder(d=9.8,h=26); + translate([0,0,6])cylinder(d=7.9,h=16); + } +} module suspension_fork(depth=0) { // from top to bottom ... - fork_shaft(); - translate([0,0,-154]) forking(); + color("gainsboro",1) fork_shaft(); + color(dark,1) translate([0,0,-154]) forking(); // all following measuress are pure phantasy for (side=[-1,1]){ @@ -71,8 +104,13 @@ module suspension_fork(depth=0) { translate([45,shaft_distance,-460]) wheel_holder(); mirror([0,1,0])translate([45,shaft_distance,-460]) wheel_holder(); + color(dark,1) translate([40,0,-207]) bow(); + translate([51,-41.5,-340]) brake_holder(); + translate([51,41.5,-340]) brake_holder(); + } + function wheel_offset(depth=0) = depth - 510; suspension_fork(); |