Commit | Line | Data |
---|---|---|
b8ad78c0 H |
1 | module pagoda(scale=1, height=1, ratio=2, center=true) { |
2 | scale([scale,scale]) | |
3 | linear_extrude(height=height, center=center) | |
4 | polygon(points=[[-1,1],[1,1],[1*ratio,-1],[-1*ratio,-1]], paths=[[0,1,2,3]]); | |
5 | } | |
6 | ||
7 | module female(thickness=0.3) { | |
8 | difference() { | |
9 | %cube([4,2+thickness,1+(2*thickness)], center=true); | |
10 | translate([0,thickness,0]) pagoda(ratio=1.5); | |
11 | } | |
12 | } | |
13 | ||
14 | module male() { | |
15 | difference() { | |
16 | pagoda(ratio=2, scale=0.9); | |
17 | //translate([0,-0.7]) pagoda(ratio=2); | |
18 | translate([0,-0.21]) pagoda(ratio=2, scale=0.7, height=1.1); | |
19 | } | |
20 | } | |
21 | ||
22 | module connector(design=false) { | |
23 | scale(4) if(!design) { | |
24 | ||
25 | translate([0,3,0-1.15+0.5]) male(); | |
26 | rotate([90]) female(); | |
27 | } else { | |
28 | //Design | |
29 | male(); | |
30 | % female(); | |
31 | } | |
32 | } | |
33 | ||
34 | //connector(design=true); | |
35 | connector(); |