SymmetryCAD

SymmetryCAD is an OpenSCAD library for all kinds of geometric symmetry operations. It can be used for enforcing mirror or rotational symmetry on your 3D objects, constructing tilings and tessellations, or for building 3D molecular crystals in OpenSCAD. Functions are available for all 17 possible 2D tilings (wallpaper groups) and all 230 possible 3D tilings (space groups).

Please see the github page for complete instructions and documentation.