File tree 1 file changed +78
-0
lines changed
1 file changed +78
-0
lines changed Original file line number Diff line number Diff line change
1
+ // Alphabets New Spool
2
+ $ fn= (50 );
3
+
4
+ // Parameters
5
+ ncards= 64 ; // number of cards
6
+ sdiam= 85 ; // diameter of the spool mm
7
+ e= 2 ; // 3d printed part thickness mm
8
+
9
+ // Variables
10
+ srad= sdiam/2 ;
11
+ angle= 360 /ncards; // angle of rotation
12
+
13
+ // define copy_mirror function
14
+ module copy_mirror(vec=[0,1,0])
15
+ {
16
+ children();
17
+ mirror (vec) children();
18
+ }
19
+
20
+ // Define axis motor
21
+ module axismotor() {
22
+ intersection () {square(size = [3 , 6 ], center = true ); circle(2.5 );}
23
+ }
24
+
25
+ // Define axis support
26
+ module axis() {
27
+ circle(1.5 );
28
+ }
29
+
30
+ // define aro
31
+ module aro() {
32
+ difference (){
33
+ difference () { circle(srad); circle(srad- 5 );}
34
+ for (a= [0 :angle:360 ]){
35
+ rotate (a)
36
+ translate ([srad- 2.5 ,0 ,0 ]) circle(1.5 );
37
+ }
38
+ }
39
+ }
40
+
41
+ // CODE STARTS HERE
42
+
43
+ linear_extrude(height = e) {
44
+ union (){
45
+ aro();
46
+ difference () {
47
+ intersection () {
48
+ union () {
49
+ translate ([srad,0 ,0 ]) aro();
50
+ translate ([- srad,0 ,0 ]) aro();
51
+ circle (6.5 );
52
+ }
53
+ circle(srad- 5 );
54
+ }
55
+
56
+ axismotor();
57
+ }
58
+ }
59
+ }
60
+
61
+ translate ([sdiam+ 5 ,0 ,0 ])
62
+ union () {
63
+ linear_extrude(height = 5 ) {circle(1.5 );}
64
+ linear_extrude(height = e) {
65
+ union (){
66
+ aro();
67
+ intersection () {
68
+ union () {
69
+ translate ([srad,0 ,0 ]) aro();
70
+ translate ([- srad,0 ,0 ]) aro();
71
+ circle (6.5 );
72
+ }
73
+ circle(srad- 5 );
74
+ }
75
+
76
+ }
77
+ }
78
+ }
You can’t perform that action at this time.
0 commit comments