4 yellow_ring_d = 19.5 + 0.5;
16 rectangle_w2h = 1.777;
18 rect_d2 = rectangle_h * tan(view_angle/2);
19 rect_x = 2*rect_d2/sqrt(1+rectangle_w2h*rectangle_w2h);
20 rect_y = rectangle_w2h * rect_x;
27 translate([-rect_x/2, -rect_y/2, rectangle_h])
28 cube([rect_x, rect_y, eps]);
30 cylinder(r=lens_d/2, h = eps);
44 translate([hood_x/2-wall, -hood_y/2, 0])
45 cube([wall, hood_y, hood_h]);
46 for (y = [-1,1]) scale([1, y, 1])
47 translate([-hood_x/2, hood_y/2-wall, 0])
48 cube([hood_x, wall, hood_h]);
52 cylinder(r = hood_r, h = hood_h);
54 translate([0, 0, -eps])
55 cylinder(r = hood_r-wall, h = hood_h+2*eps);
61 cylinder(r = yellow_ring_d/2+wall, h = yellow_ring_h);
62 translate([0, 0, -eps])
63 cylinder(r = yellow_ring_d/2, h = yellow_ring_h+2*eps);
70 cylinder(r = yellow_ring_d/2 + wall, h = yellow_ring_h);
71 translate([0, 0, hood_h-eps])
72 cylinder(r = hood_top_d/2 + wall, h = eps);
74 translate([0, 0, -eps])
75 cylinder(r = yellow_ring_d/2, h = yellow_ring_h+2*eps);
78 translate([0, 0, yellow_ring_h])
79 cylinder(r = yellow_ring_d/2, h = eps);
80 translate([0, 0, hood_h])
81 cylinder(r = hood_top_d/2, h = eps);
84 cylinder(r = lens_d/2, h = eps);
85 // translate([0, 0, rectangle_h])
86 // cylinder(r = rect_d2 - 5, h = eps);
87 translate([-rect_x/2, -rect_y/2, rectangle_h])
88 cube([rect_x, rect_y, eps]);