-
Notifications
You must be signed in to change notification settings - Fork 0
/
camera_mount.scad
276 lines (274 loc) · 11.1 KB
/
camera_mount.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
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
// Generated from camera_mount.py
$fa=20; $fs=0.2;
difference(){
translate(v = [0, 0, 16.2000000000]) {
rotate(a = 90, v = [0, -1, 0]) {
difference() {
union() {
union() {
union() {
difference() {
difference() {
difference() {
linear_extrude(center = false, height = 5.5000000000) {
intersection() {
rotate(a = 45) {
translate(v = [-20, -20]) {
square(size = [24, 40]);
}
}
square(center = true, size = [32.4000000000, 32.4000000000]);
}
}
translate(v = [-10, 0, 0]) {
translate(v = [0, 0, 4.9000000000]) {
}
}
}
translate(v = [0, -10, 0]) {
translate(v = [0, 0, 4.9000000000]) {
}
}
}
union() {
cylinder(h = 4.0000000000, r = 14.6500000000);
translate(v = [-5, -5, 0]) {
cube(size = [15, 15, 5.5000200000]);
}
}
}
translate(v = [2, -38.5000000000, 39.0000000000]) {
rotate(a = 141.7284958095, v = [0, 0, 1]) {
rotate(a = 103.4903442936, v = [1, 0, 0]) {
translate(v = [0, 0, -1.6500000000]) {
union() {
union() {
union() {
union() {
difference() {
translate(v = [-17.6750000000, -17.6750000000, -3.8000000000]) {
cube(center = false, size = [35.3500000000, 35.3500000000, 5.4500000000]);
}
}
translate(v = [14.0000000000, 14.0000000000, 0]) {
union() {
translate(v = [-2.0750000000, -2.0750000000, -1.8000000000]) {
cube(center = false, size = [4.1500000000, 4.1500000000, 1.8000000000]);
}
translate(v = [0, 0, -2.0000000000]) {
mirror(v = [0, 0, 1]) {
}
}
}
}
}
translate(v = [-14.0000000000, 14.0000000000, 0]) {
union() {
translate(v = [-2.0750000000, -2.0750000000, -1.8000000000]) {
cube(center = false, size = [4.1500000000, 4.1500000000, 1.8000000000]);
}
translate(v = [0, 0, -2.0000000000]) {
mirror(v = [0, 0, 1]) {
}
}
}
}
}
translate(v = [-14.0000000000, -14.0000000000, 0]) {
union() {
translate(v = [-2.0750000000, -2.0750000000, -1.8000000000]) {
cube(center = false, size = [4.1500000000, 4.1500000000, 1.8000000000]);
}
translate(v = [0, 0, -2.0000000000]) {
mirror(v = [0, 0, 1]) {
}
}
}
}
}
translate(v = [14.0000000000, -14.0000000000, 0]) {
union() {
translate(v = [-2.0750000000, -2.0750000000, -1.8000000000]) {
cube(center = false, size = [4.1500000000, 4.1500000000, 1.8000000000]);
}
translate(v = [0, 0, -2.0000000000]) {
mirror(v = [0, 0, 1]) {
}
}
}
}
}
}
}
}
}
}
polyhedron(faces = [[0, 2, 14], [15, 2, 0], [0, 7, 15], [14, 10, 0], [14, 2, 1], [1, 2, 15], [15, 3, 1], [1, 13, 14], [15, 4, 3], [6, 10, 14], [14, 13, 6], [7, 4, 15], [11, 7, 0], [0, 10, 11], [1, 3, 12], [12, 13, 1], [3, 4, 12], [8, 12, 4], [13, 5, 6], [9, 10, 6], [11, 4, 7], [9, 11, 10], [12, 8, 9], [13, 12, 9], [11, 8, 4], [5, 13, 9], [6, 5, 9], [8, 11, 9]], points = [[-16.2000000000, -42.5386946614, 22.0576121145], [-16.2000000000, -39.423557734, 53.4587175901], [-16.2000000000, -45.8977578213, 23.0840506837], [-16.2000000000, -27.6742687274, 53.2137720224], [-16.2000000000, -25.1168001852, 52.4322790208], [15.7801466406, -49.5696575051, 57.2137720224], [9.62235765664, -54.9938575924, 23.889105116], [-15.1499900000, -34.1484688147, 22.839105116], [-9.95488857563, -25.1168001852, 56.4322790208], [17.797849132, -47.0121889629, 56.4322790208], [12.6900601481, -53.4863890502, 22.0576121145], [-15.0626775596, -31.5910002725, 22.0576121145], [-12.6050052809, -28.4758633451, 57.4587175901], [15.1477324268, -50.3712521228, 57.4587175901], [10.0399434429, -56.8454522102, 23.0840506837], [-17.7127942648, -34.9500634324, 23.0840506837]]);
}
union() {
union() {
minkowski() {
polyhedron(faces = [[0, 1, 2], [0, 2, 3], [1, 0, 4], [4, 5, 1], [2, 1, 5], [5, 6, 2], [3, 2, 6], [6, 7, 3], [0, 3, 7], [7, 4, 0], [6, 5, 4], [7, 6, 4]], points = [[-15.1500000000, 10.0000000000, 5.5000000000], [-15.1500000000, -10.0000000000, 5.5000000000], [-15.1499900000, -34.1484688147, 22.839105116], [-15.1499900000, -27.6742687274, 53.2137720224], [-15.1000000000, 10.0000000000, 5.5500000000], [-15.1000000000, -10.0000000000, 5.5500000000], [-15.0999900000, -34.1484688147, 22.889105116], [-15.0999900000, -27.6742687274, 53.2637720224]]);
sphere(r = 1.0500000000);
}
minkowski() {
polyhedron(faces = [[0, 1, 2], [1, 0, 3], [3, 4, 1], [2, 1, 4], [4, 5, 2], [0, 2, 5], [5, 3, 0], [5, 4, 3]], points = [[-15.1500000000, -10.0000000000, 5.5000000000], [-10.0000000000, -15.1500000000, 5.5000000000], [-15.1499900000, -34.1484688147, 22.839105116], [-15.1000000000, -10.0000000000, 5.5500000000], [-9.9500000000, -15.1500000000, 5.5500000000], [-15.0999900000, -34.1484688147, 22.889105116]]);
sphere(r = 1.0500000000);
}
}
minkowski() {
polyhedron(faces = [[0, 1, 2], [0, 2, 3], [1, 0, 4], [4, 5, 1], [2, 1, 5], [5, 6, 2], [3, 2, 6], [6, 7, 3], [0, 3, 7], [7, 4, 0], [6, 5, 4], [7, 6, 4]], points = [[-10.0000000000, -15.1500000000, 5.5000000000], [10.0000000000, -15.1500000000, 5.5000000000], [9.62235765664, -54.9938575924, 23.889105116], [-15.1499900000, -34.1484688147, 22.839105116], [-9.9500000000, -15.1500000000, 5.5500000000], [10.0500000000, -15.1500000000, 5.5500000000], [9.67235765664, -54.9938575924, 23.939105116], [-15.0999900000, -34.1484688147, 22.889105116]]);
sphere(r = 1.0500000000);
}
}
}
translate(v = [-216.2000000000, -100, -100]) {
cube(size = [200, 200, 200]);
}
}
}
}
/* Holes Below*/
translate(v = [0, 0, 16.2000000000]){
rotate(a = 90, v = [0, -1, 0]){
difference(){
union(){
union(){
union(){
union(){
union(){
union(){
translate(v = [-10, 0, 0]){
translate(v = [0, 0, 4.9000000000]){
union() {
translate(v = [0, 0, -4.1500000000]) {
cylinder(h = 4.1500000000, r = 1.6500000000);
}
cylinder(h = 2.5500000000, r = 3.1500000000);
}
}
}
}
translate(v = [0, -10, 0]){
translate(v = [0, 0, 4.9000000000]){
union() {
translate(v = [0, 0, -4.1500000000]) {
cylinder(h = 4.1500000000, r = 1.6500000000);
}
cylinder(h = 2.5500000000, r = 3.1500000000);
}
}
}
}
}
translate(v = [2, -38.5000000000, 39.0000000000]){
rotate(a = 141.7284958095, v = [0, 0, 1]){
rotate(a = 103.4903442936, v = [1, 0, 0]){
translate(v = [0, 0, -1.6500000000]){
union(){
union(){
union(){
union(){
union(){
union() {
union() {
union() {
union() {
union() {
translate(v = [-16.0750000000, -16.0750000000, 0]) {
cube(center = false, size = [32.1500000000, 32.1500000000, 1.6500100000]);
}
translate(v = [-16.0750000000, -11.9250000000, -1.8000000000]) {
cube(center = false, size = [32.1500000000, 23.8500000000, 1.8000100000]);
}
}
translate(v = [-11.9250000000, -16.0750000000, -1.8000000000]) {
cube(center = false, size = [23.8500000000, 32.1500000000, 1.8000100000]);
}
}
translate(v = [-9.6450000000, -17.6750000000, 0]) {
cube(center = false, size = [19.2900000000, 35.3500000000, 1.6500100000]);
}
}
translate(v = [-17.6750000000, -9.6450000000, 0]) {
cube(center = false, size = [35.3500000000, 19.2900000000, 1.6500100000]);
}
}
translate(v = [5, -13.3000000000, 0]) {
translate(v = [-5.7000000000, -2.8000000000, -15.0000000000]) {
cube(center = false, size = [11.4000000000, 5.6000000000, 15.0000000000]);
}
}
}
}
translate(v = [14.0000000000, 14.0000000000, 0]){
union(){
translate(v = [0, 0, -2.0000000000]){
mirror(v = [0, 0, 1]){
union() {
translate(v = [0, 0, -4.1500000000]) {
cylinder(h = 4.1500000000, r = 1.4000000000);
}
cylinder(h = 15.1500000000, r = 2.6500000000);
}
}
}
}
}
}
translate(v = [-14.0000000000, 14.0000000000, 0]){
union(){
translate(v = [0, 0, -2.0000000000]){
mirror(v = [0, 0, 1]){
union() {
translate(v = [0, 0, -4.1500000000]) {
cylinder(h = 4.1500000000, r = 1.4000000000);
}
cylinder(h = 15.1500000000, r = 2.6500000000);
}
}
}
}
}
}
translate(v = [-14.0000000000, -14.0000000000, 0]){
union(){
translate(v = [0, 0, -2.0000000000]){
mirror(v = [0, 0, 1]){
union() {
translate(v = [0, 0, -4.1500000000]) {
cylinder(h = 4.1500000000, r = 1.4000000000);
}
cylinder(h = 15.1500000000, r = 2.6500000000);
}
}
}
}
}
}
translate(v = [14.0000000000, -14.0000000000, 0]){
union(){
translate(v = [0, 0, -2.0000000000]){
mirror(v = [0, 0, 1]){
union() {
translate(v = [0, 0, -4.1500000000]) {
cylinder(h = 4.1500000000, r = 1.4000000000);
}
cylinder(h = 15.1500000000, r = 2.6500000000);
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
} /* End Holes */
}