]> www.fi.muni.cz Git - things.git/blob - firefly-q6-lens-cap.scad
switch holder.scad
[things.git] / firefly-q6-lens-cap.scad
1 eps = 0.01;
2
3 // Q6 lens dimensions
4 black_ring_d = 18.5 + 0.5;
5 yellow_ring_d = 19.5 + 1;
6 yellow_ring_d2 = 20.5;
7 black_ring_h = 3.5;
8 yellow_ring_h = 3.5;
9 lens_overhang = 2;
10
11 clip_h = 0.5;
12 clip_w = 1;
13
14 wall = 1;
15
16 body_h = wall + lens_overhang + black_ring_h + yellow_ring_h;
17 body_d = 2*wall + yellow_ring_d2;
18
19 $fn = 128;
20 difference() {
21         cylinder(r = body_d/2, h = body_h);
22         translate([0, 0, wall])
23                 cylinder(r = black_ring_d/2-wall, h = lens_overhang+eps);
24         translate([0, 0, wall + lens_overhang])
25                 cylinder(r = black_ring_d/2, h = black_ring_h+eps);
26         translate([0, 0, wall + lens_overhang + black_ring_h]) difference() {
27                 cylinder(r = yellow_ring_d/2, h = yellow_ring_h+eps);
28                 for (angle = [0:90:360]) rotate ([0, 0, angle])
29                         translate([yellow_ring_d/2 - clip_w, -yellow_ring_d/2,
30                                 yellow_ring_h - clip_h])
31                                 cube([clip_w + eps, yellow_ring_d, clip_h + 2*eps]);
32         }
33 }
34         
35
36