1 // Diffuser for ZHISHUNJIA ZSJ-T29 LED flashlight (dx.com SKU #317226).
5 diaphragm = 0.5; // diaphragm thickness
8 ring_h = 12; // the height of the body
9 ring_d = 34.3 + 1.0; // the lens ring diameter + tolerance
11 clip_h = 7.3 + 1.0; // height of the clip above the diaphragm
18 cylinder(r = ring_d/2 + wall, h = ring_h);
19 translate([0, 0, diaphragm])
20 cylinder(r = ring_d/2, h = ring_h);
21 for (angle = [0:120:360]) rotate([0,0,60+angle]) {
22 translate([0, 0, 20+clip_h])
24 cylinder(r=20, h=infty);
27 for (angle = [0:120:360]) rotate([0,0,angle]) {
30 translate([ring_d/2-clip_dist, -infty/2, clip_h])
31 cube([infty, infty, clip_size]);
32 translate([ring_d/2+wall/2, -eps/2, ring_h+wall])
33 cube([eps, eps, eps]);
35 cylinder(r = ring_d/2 + wall/2, h = ring_h);