io.github.scala_tessella.dcel.delaney
Members list
Type members
Classlikes
Delaney–Dress symbols: the exact, coordinate-free machinery behind uniformity, gonality, symmetry and tiling identity (ADR-0019).
Delaney–Dress symbols: the exact, coordinate-free machinery behind uniformity, gonality, symmetry and tiling identity (ADR-0019).
Ported subset of research-core's DelaneySymbols engine (scala-tessella/research-core, commit aef8523, 0.7.x line; Apache-2.0, same organisation — compatible with this library's Apache-2.0 OR MIT). The enumeration/generator machinery is deliberately NOT ported; only the reader side a DCEL consumer needs: build a symbol from a closed map, minimise it, and read orbits, keys and signatures off it. Deviations from the source are limited to: Frac replaced by Spire's Rational (already a dcel dependency), the {3,4,6,8,12} polygon-alphabet filter generalised to the exact 360° vertex-closure check, null-sentinel micro-optimisations dropped, and the minimal-symbol reduction additionally exposing the full-chamber → minimal-chamber class map (minimalSymbolWithMap).
A 2D Delaney–Dress symbol is the barycentric subdivision of a tiling into chambers (vertex·edge·face flags), quotiented by the symmetry group, carrying three involutions σ₀, σ₁, σ₂ (cross the vertex / edge / face of the flag) and v-values per orbit. The combinatorial dictionary:
- a 01-orbit (fix the face) is a TILE; its
m₀₁= number of edges = polygon side-count. - a 12-orbit (fix the vertex) is a VERTEX; its
m₁₂= vertex degree. - a 02-orbit (fix the edge) is an EDGE;
m₀₂= 2 always (the 2-manifold condition).
The MINIMAL symbol (quotient by the full symmetry group) is a complete invariant of the tiling; its 12-orbit count is the uniformity, its 01-orbit count the gonality, its canonical key the tiling's identity up to isomorphism.
Attributes
- Supertypes
-
class Objecttrait Matchableclass Any
- Self type
-
DelaneySymbols.type