-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathsunglasses_montuur_parametric.scad
73 lines (66 loc) · 1.99 KB
/
sunglasses_montuur_parametric.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
/*
attempt 3dprintable design sunglasses
this will become a whole parametric design
*/
dia = 51; //in mm , diameter of glasses, whole design is configured with this number, please change (for reasonable desings 40-70mm)
resolution = 100; //change resolution, effects rendertime
l=4; //length hinge holder (in mm)
d=7; //depth hinge holder (in mm)
module lenshouder()
{
border = dia-3;
difference()
{
cylinder(h=3.5,r=(dia+2)/2, $fn=resolution);
translate([0,0,1])
cylinder(h=2.5,r=dia/2, $fn=resolution);
cylinder(h=1,r=border/2,$fn=resolution);
}
difference()
{
difference()
{
translate([-3.5,dia/2,0])cube([7,12,2]);
translate([-2,(dia/2)+1.5,1])cube([l,d,2]); //holder hinge
}
translate([0,(dia/2)+6.5,0])
difference()
{
cylinder(h=2,r=7,$fn=resolution);
cylinder(h=2,r=3.5,$fn=resolution);
translate([0,-5,0])cube([20,10,10], center = true);
}
}
}
module connectors()
{
//connectors
difference() //lange connector
{
translate([(dia-2)/2,-(dia+22),0])cube([2,(dia+2)+20,3.5]);
cylinder(h=3.5,r=(dia)/2, $fn=resolution);
cylinder(h=3.5,r=(dia)/2, $fn=resolution);
translate([0,-((dia+2)+20),0])
cylinder(h=3.5,r=(dia)/2, $fn=resolution);
}
translate([0,-((dia/2)+10),0])
difference()//gebogen connector
{
cylinder(h=3.5,r=35/2,$fn=resolution);
cylinder(h=3.5,r=31/2,$fn=resolution);
translate([-35/2,-35/2,0])cube([35/2,35,3.5]);
translate([0,((dia/2)+10),0])
cylinder(h=3.5,r=dia/2, $fn=resolution);
translate([0,-((dia/2)+12),0])
cylinder(h=3.5,r=dia/2, $fn=resolution);
}
}
module sunglasses()
{
lenshouder();
rotate([0,0,180])translate([0,(dia+2)+20,])lenshouder();
connectors();
}
color("Blue",0.5)sunglasses();
echo("Looots of fun with your 3dprinted glasses.");