Light Tubes

A "Light Tube" is a way to let a LED (or NeoPixel) shine only through the Lid. It projects the light on the Lid of the project box.
//-- lightTubes -- origin is pcb[0,0,0]
// (0) = posx
// (1) = posy
// (2) = tubeLength
// (3) = tubeWidth
// (4) = tubeWall
// (5) = abovePcb
// (6) = througLid {yappThroughLid}
// (7) = tubeType {yappCircle|yappRectangle}
lightTubes = [
//--- 0, 1, 2, 3, 4, 5, 6/7
[15, 20, 1.5, 5, 1, 2, yappRectangle]
, [15, 30, 1.5, 5, 1, 2, yappRectangle, yappThroughLid]
];
tubeLength
The length of the tube-window in the Y-ax direction
tubeWidth
The width of the tube-window in the X-ax direction
tubeWall
The wall thickness around the tube
abovePcb
The space between the PCB and the bottom of the light tube
throughLid
Will make an opening in the Lid to let the light shine trough. If yappThroughLid is omitted there will be a small layer of material (about 0.4mm) on top of the Lid
tubeType
The shape of the window. Either a rectangle (yappRectangle) or a circle (yappCircle)
If you use a printing material that is not transparent (enough) you can make an opening through the Lid (yappThroughLid).:
The above light tube is created with this code:
lightTubes = [
//-- 0, 1, 2, 3, 4, 5, 6/7
[15, 30, 1.5, 5, 1, 2, yappRectangle, yappThroughLid]
];