OpenCube is a 3D-printable filter cube implemented using OpenSCAD. OpenCube can house round filters and rectangular mirrors of any size. It can also be connected to any lens tube by insertion of a retaining ring into a filterFace. OpenCube overall size, as well as sizes of all housings can be easily adjusted by editing parameters in a setup file.
OpenSCAD files available on GitHub.
OpenCube consist of a frame, which provides a structural support, a set of faces that allow to customise the functionality of a cube, and a mirror holder that positions a mirror in the middle of the cube. An overview of all OpenCube components is given below.
Frames are the structural components of a cube.
Frames feature housings for standard hex nuts, which allows attachment of faces my the means of screws.
The size of a squareFrame is by default equal to $cubeSize + 2 * $postSize, but can be adjusted by passing a frameSize parameter, which can either be a single value for a square frame or two values for a rectangular frame.
A squareBase is a variation of a squareFrame which allows to print squareFrame and squareFace in a single unit.
A triangularFrame is useful when only two optical inputs/outputs are required.
Faces are interchangeable components of a cube that allow to customise it for a particular need. Faces have four holes in each of the corner for fitting screws. The size of the screw holes can be adjusted via $screwRadius1 (radius of a threaded part), $screwRadius2 (radius of a screw cap) and $screwCap (height of a screw cap) in the setup file. The size of squareFace is by default equal to
$cubeSize + 2 * $postSize + 2 * $faceThickness
but can be adjusted by passing frameSize parameter as in a squareFrame. In this case the size of a face will be equal to
frameSize + 2 * $faceThickness.
Note: addition of 2 * $faceThickness is required to create a tapered edge at the interface of two orthogonal faces.
A squareFace is a simple solid face with no openings for light path.
Square mirror face
The only difference between squareMirrorFace and the squareFace is two additional screw holes for attachment of a mirror holder (see the assembly picture above).
Square filter face
A squareFilterFace functions as a filter holder on inner side, and as a lens tube adapter on the outer side.
A triangularFace covers the triangularFrame.
Mirror holders are there to fix a mirror inside a cube.
Square mirror holder
A squareMirrorHolder is placed between two squareMirrorFaces and is fixed with two screws on each side. A mirror is held in place by a squareMirrorCover, which is attached to holder by four screws.
Triangular mirror holder
A triangularMirrorHolder is attached to two triangularFrames. A mirrorCover is used as in squareMirrorHolder to hold a mirror in place.