-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathfeilenbox.scad
115 lines (105 loc) · 2.42 KB
/
feilenbox.scad
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
outer = 155;
inner = 125;
offset = 47;
inset = 40;
boardwidth=15;
module cross(){
square([inner,inner]);
translate([inner,inner/2-inset/2,0])
difference(){
square([boardwidth,inset]);
translate([7.5,20,0])
circle(d=4,$fn=30);
}
translate([-boardwidth,inner/2-inset/2])
(){
square([boardwidth,inset]);
translate([7.5,20,0])
circle(d=4,$fn=30);
}
translate([inner/2-inset/2,-boardwidth])
difference(){
square([inset,boardwidth]);
translate([20,7.5,0])
circle(d=4,$fn=30);
}
square([inset,boardwidth]);
translate([inner/2-inset/2,inner])
difference(){
square([inset,boardwidth]);
translate([20,7.5,0])
circle(d=4,$fn=30);
}
}
list1 =[
[5,20],[4,4],[5,20],[4,4]
];
list2 =[
[10,10],[10,26],[10,10],[10,20]
];
list3 =[
[15,32],[4,4],[10,30],[4,4] //demilune
];
list4 =[
[9,9],[10,12],[9,9],[10,20] //circle
];
difference(){
cross();
translate([0,20,0])
union(){
for (i=[0:4]){
translate([i*30+20,0,0])
square(list1[i],center=true);
}
}
translate([0,45,0])
union(){
for (i=[0:4]){
translate([i*30+20,0,0])
square(list2[i],center=true);
}
}
translate([0,75,0])
union(){
for (i=[0:4]){
translate([i*30+20,0,0])
square(list3[i],center=true);
}
}
translate([0,105,0])
union(){
for (i=[0:4]){
translate([i*30+20,0,0])
square(list4[i],center=true);
}
}
}
translate([156,0,0])
difference(){
color("red",.3)
cross();
translate([0,20,0])
for (i=[0:4]){
translate([i*30+20,0,0])
scale([1.3,1.3])
square(list1[i],center=true);
}
translate([0,45,0])
for (i=[0:4]){
translate([i*30+20,0,0])
scale([1.3,1.3])
square(list2[i],center=true);
}
translate([0,75,0])
for (i=[0:4]){
translate([i*30+20,0,0])
scale([1.3,1.3])
square(list3[i],center=true);
}
translate([0,105,0])
for (i=[0:4]){
translate([i*30+20,0,0])
scale([1.3,1.3])
square(list4[i],center=true);
}
}