p6 and p6m Snowflakes

by pmoews, published

p6 and p6m Snowflakes by pmoews Dec 3, 2012


Here are three snowflakes generated using 2 of the 17 two dimensional space groups, p6 and p6m. The term "two dimensional space group" is a crystallographic one; in other fields they are called the plane groups or wallpaper patterns. P6 and p6m are the only two dimensional space groups which have 6 fold rotation axes and are therefore suitable for making snow flakes.

The openSCAD code uses the equivalent positions of p6 and p6m to place hexagons within a unit cell. P6 has 6 equivalent positions and p6m has twelve. Adjacent unit cells can be generated to form sets of 7 or 49 cells.

Any shape can take the place of the hexagons and objects can be placed anywhere in the unit cell. The algorithms ensure that the space group symmetry is obeyed

Example snowflakes are:

snowflake_p6m_c1.stl - composed of 6 hexagons, 1 unit cell snowflake_p6m_c7.stl - composed of 4 hexagons, 7 unit cells snowflake_p6_c49.stl - composed of 3 hexagons, 49 unit cells

Dxf and openSCAD files are included.

More from Math Art

view more


Liked By

view all



Give a Shout Out

If you print this Thing and display it in public proudly give attribution by printing and displaying this tag. Print Thing Tag


The snowflakes can be printed directly on the build platform or with a raft. On my Replicator I used 1 shell and 50% infill to print snowflake_p6m_c1.stl and snowflake_p6_c49.stl. Snowflake_p6m_c7.stl was printed with 2 shells and 50% infill.

Brief instructions on how to generate snowflakes are given at the beginning of the openSCAD code.