Skip to main content

Module symmetry

Module symmetry 

Source
Expand description

Plane symmetry groups (the 17 wallpaper groups and 7 frieze groups), lattices, 3-D point groups, symmetry detection, and Hankin-style Islamic star patterns.

Wallpaper operations are expressed in unit-cell (lattice) coordinates: an element maps the unit cell to itself modulo unit translations, so the returned sets are the coset representatives of the point group (plus the centering translation for the centered groups cm and cmm).

Structs§

Lattice
A 2-D lattice spanned by two basis vectors.

Enums§

FriezeGroup
The 7 frieze groups (IUCr-style names).
PointGroup3
3-D point groups (rotation parts).
WallpaperGroup
The 17 wallpaper groups.

Functions§

detect_symmetries_2d
Detects rotations and reflections about the centroid that map the point set to itself within tol. Checks rotation orders up to the point count and reflection axes through point/midpoint directions.
frieze_generators
Frieze group operations modulo the period translation, in world coordinates with the frieze axis along x and period period.
frieze_motif
Replicates a motif under the frieze group for count periods (translations 0..count).
hankin_star_pattern
Hankin’s method for Islamic star patterns (after Kaplan): from two points straddling each edge midpoint (offset delta along the edge), rays leave into the polygon at contact_angle from the edge; consecutive rays around the polygon are intersected to form the strap segments.
point_group_orbit
Orbit of a point under the group’s rotations (deduplicated within 1e-9 of the point scale).
point_group_order
The full group order (including improper operations for the mirror-bearing groups).
point_group_rotations
All proper rotations of the point group as quaternions (generated by closure from the group’s standard generators).
rosette
Rosette symmetry: the motif under the cyclic group C_n (rotations) or dihedral D_n (mirror adds reflections), about the origin.
tile_motif
Tiles a motif (given in unit-cell coordinates) by the group and lattice over the extent: every group operation applied to every motif polygon, replicated over the lattice translations whose cell origin falls in the extent.
tile_points
Tiles a point set (unit-cell coordinates) by the group and lattice over the extent.
wallpaper_fundamental_domain
A fundamental domain in unit-cell coordinates with area 1/order of the cell. For the rectangular-cell groups it is a genuine fundamental domain; for the centered and hexagonal groups it is an area-correct representative slab (one valid choice among many shapes).
wallpaper_generators
The coset representatives of the wallpaper group’s operations in unit-cell coordinates (closed under composition modulo unit translations; the centered groups include their centering translation).
wallpaper_group_order
The order of the returned operation set.
wallpaper_lattice
A natural lattice for the group at the given scale: square for the tetragonal groups, hexagonal (120°) for the tri/hexagonal groups, rectangular otherwise.