Plane geometry for the Parts spindle #
This module gives an explicit triangular-lattice realization and elementary distance-preserving rotations. The two exact cosines are the angles used in Parts' doubled wheel and spindle.
A point in R² from its two Cartesian coordinates.
Equations
- HadwigerNelsonBounds.pointR2 x y = !₂[x, y]
Instances For
The triangular-lattice point with axial coordinates (q,r).
Equations
- HadwigerNelsonBounds.partsAxialPoint q r = HadwigerNelsonBounds.pointR2 ((↑q - ↑r) / 2) ((↑q + ↑r) * √3 / 2)
Instances For
Rotation through an angle represented by its cosine and sine.
Equations
Instances For
The doubled-wheel angle has cosine 7/8.
Equations
Instances For
Positive sine of the doubled-wheel angle.
Equations
Instances For
Rotation used to superimpose the second triangular-lattice patch.
Equations
Instances For
Apply the doubled-wheel rotation exactly when selecting its second patch.
Equations
- HadwigerNelsonBounds.partsApplyPatch rotated p = if rotated = true then HadwigerNelsonBounds.partsPatchRotation p else p
Instances For
Pull a proper plane coloring back along any distance-preserving map.
Equations
- HadwigerNelsonBounds.pullbackUnitDistanceColoring planeColoring motion hdist = SimpleGraph.Coloring.mk (fun (p : HadwigerNelsonBounds.R2) => planeColoring (motion p)) ⋯
Instances For
Every rigid image of the checked canonical triangle is non-monochromatic.
The final spindle angle has cosine 31/32.
Equations
Instances For
Positive sine of the final spindle angle.
Equations
Instances For
Rotation used to close the final spindle.