-
Notifications
You must be signed in to change notification settings - Fork 2
/
extender.scad
38 lines (29 loc) · 990 Bytes
/
extender.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
include <MCAD/units.scad>
use <MCAD/unregular_shapes.scad>
use <MCAD/regular_shapes.scad>
rod_thickness = 25*mm;
structural_thickness = 5*mm;
beak_size = 3*cm;
beak_lenght = 15*cm;
beak_tip_scale = 0.4;
beak_tip_size = beak_tip_scale*beak_size;
module beak(){
for (i = [1, -1]){ // Mirroring
connect_squares([[0, 0, 0], [0, i*beak_size/2, 0], // Base
[0, i*.8*beak_size/2, .5*beak_size],
[0, 0, .8*beak_size],
[beak_lenght, 0, 0], // Tip
[beak_lenght, i*beak_tip_size/2, 0],
[beak_lenght, i*.8*beak_tip_size/2, .8*beak_tip_size],
[beak_lenght, 0, .8*beak_tip_size]]);
}
}
module connector(){
translate([-rod_thickness, 0, 0]) cylinder_tube(height=.8*beak_size,
radius=rod_thickness+structural_thickness, wall=structural_thickness);
}
module assembly(){
beak();
connector();
}
assembly();