diff --git a/src/coin_simulator.scad b/src/coin_simulator.scad new file mode 100644 index 0000000000000000000000000000000000000000..c673a1fe99925a0e6b1d5ba3c3af1167d1854a04 --- /dev/null +++ b/src/coin_simulator.scad @@ -0,0 +1,26 @@ + +// 100 HUF coin parameters: +thickness = 2.2; +radius = 23.8 / 2; + +module canonical() { + handle_len = radius * 2; + handle_w = radius * 0.7; + handle_r = 3; + hole_r = handle_r / 2; + + + linear_extrude(thickness) union() { + translate([0,-handle_len,0]) difference() { + minkowski() { + polygon([ [0,0], [-handle_w/2,handle_len], + [handle_w/2,handle_len] ]); + circle(r=handle_r, $fn=50); + }; + circle(hole_r, $fn=30); + }; + circle(radius, $fn=100); + }; +} + +canonical(); diff --git a/src/filament_spool_adapter.scad b/src/filament_spool_adapter.scad new file mode 100644 index 0000000000000000000000000000000000000000..47195b6f681041cb3a6b743b8c714c78f68d56d8 --- /dev/null +++ b/src/filament_spool_adapter.scad @@ -0,0 +1,47 @@ +use <../include/screw.scad>; + +ID = 52.5; // internal diameter +OD = ID + 10; // outer diameter +TD = 8.5; // rod diameter +SD = ID/2; // screw diameter +L = 70; // length + +$fn=100; + +module rod() { + translate([0,0,-1]) cylinder(h=L+2+5, d=TD); +} + +module screw(tol=0) { + translate([0,0,L+5]) rotate([180,0,0]) metric_screw(P=6, D_maj = SD, h=L+5, taper=true, tol=tol); +} + +module bottom() { + difference() { + union() { + cylinder(h=4, d=OD); + cylinder(h=10, d=ID); + screw(); + cylinder(h=L/5, d=SD+2); + } + rod(); + } +} + +module top() { + difference() { + union() { + difference() { + union() { + translate([0,0,L-20]) cylinder(h=20, d=ID); + translate([0,0,L-4]) cylinder(h=4, d=OD); + } + translate([0,0,L/2]) screw(tol=.7); + } + } + rod(); + } +} + +bottom(); +// translate([OD+1,0,0]) rotate([180,0,0]) translate([0,0,-L]) top(); \ No newline at end of file