flowflexure-microscope/hardware/microscope-stand/tube-holder.scad

65 lines
1.4 KiB
OpenSCAD

/******************************************************************
* *
* FlowFlexure Microscope: tube holder *
* *
* (c) Sebastian Wendel, 2023 *
* Released under the CERN Open Hardware License *
* *
******************************************************************/
$fn = 100;
case_thickness = 3;
tube_count = 3;
tube_radius = 15;
tube_height = 20;
module hook()
{
translate([ 23.5, -(tube_height + case_thickness * 1.5), tube_height - case_thickness ])
rotate([ 0, 90, 0 ])
{
linear_extrude(tube_height)
{
square([ tube_height - case_thickness, case_thickness ]);
rotate([ 0, 0, 90 ])
square([ case_thickness * 2.5, case_thickness ]);
}
}
}
module tube_holes(radius = tube_radius)
{
circle(radius);
translate([ (tube_radius * 2) + case_thickness, 0, 0 ])
circle(radius);
translate([ ((tube_radius * 2) + case_thickness) * 2, 0, 0 ])
circle(radius);
}
module tube_holder_base()
{
difference()
{
hull()
{
tube_holes(tube_radius + (case_thickness));
}
tube_holes();
}
}
module tube_holder()
{
linear_extrude(tube_height)
{
tube_holder_base();
}
hook();
}
tube_holder();