c34a06d4 |
1 | /* GNU AGPLv3 (or later at your option) |
2 | see bottom for more license info */ |
3 | |
4 | /* measurements from misumi's 3030 aluminum extrusion data sheet |
5 | https://us.misumi-ec.com/pdf/fa/2012/p2_0545.pdf |
6 | */ |
7 | |
8 | x = 30; |
9 | y = 30; |
10 | diagonal = sqrt(pow(30/2, 2) + pow(30/2, 2)); |
11 | opening_width = 8; |
c34a06d4 |
12 | inner_block = 12; |
c34a06d4 |
13 | |
14 | major_block_corner_diameter = 4; |
15 | major_block_corner_radius = major_block_corner_diameter / 2; |
c34a06d4 |
16 | |
17 | corner_block_inner = (30 - 16.5) / 2; |
18 | wall = 2; |
19 | |
20 | $fn = 40; |
21 | |
d5a6f871 |
22 | module arm_half(){ |
23 | square(inner_block / 2); |
24 | rotate(45) { |
25 | square([diagonal - major_block_corner_radius, wall / 2]); } |
26 | translate([x / 2 - corner_block_inner, y / 2 - corner_block_inner]) { |
27 | square(corner_block_inner - wall); } |
28 | translate([(opening_width + major_block_corner_diameter) / 2, |
29 | y/2 - wall]) { |
30 | square([(x - opening_width - 2 * major_block_corner_diameter) / 2, |
31 | wall]); |
32 | translate([0, wall/2]){ |
33 | circle(wall / 2); } } |
34 | translate([(x - major_block_corner_diameter) / 2, |
35 | (y - major_block_corner_diameter) / 2]) { |
36 | circle(major_block_corner_radius); } } |
37 | |
38 | arms = 4; |
39 | for(arm = [0:arms - 1]) { |
40 | rotate(arm * 360 / arms) { |
41 | arm_half(); |
42 | mirror(){ arm_half(); } } } |
c34a06d4 |
43 | |
44 | /* |
45 | This file is part of 3d-printables. |
46 | |
47 | 3d-printables is free software: you can redistribute it and/or modify |
48 | it under the terms of the GNU Affero General Public License as published by |
49 | the Free Software Foundation, either version 3 of the License, or |
50 | (at your option) any later version. |
51 | |
52 | 3d-printables is distributed in the hope that it will be useful, |
53 | but WITHOUT ANY WARRANTY; without even the implied warranty of |
54 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
55 | GNU Affero General Public License for more details. |
56 | |
57 | You should have received a copy of the GNU Affero General Public License |
58 | along with challenge-bot. If not, see <http://www.gnu.org/licenses/>. |
59 | */ |