StaticgetReturns the 2D Tonnetz coordinates for a note, in the fundamental domain x ∈ 0..3 (fifths), y ∈ 0..2 (major thirds), where every pitch class appears once: from A, E is (1, 0), C# (0, 1), C (1, 2) (A + a fifth + two major thirds).
StaticneighborsReturns the 6 Tonnetz neighbors of a note, next to its own position: ±P5 (x±1, y), ±M3 (x, y±1), ±m3 (x+1, y−1 and x−1, y+1).
StaticpathReturns the shortest Tonnetz paths from each note of chord A to the nearest note of
chord B, one path after another. Each path starts on the A note and moves by unit
steps (fifth, major third or minor third, either way) to the B note; a common tone is
a path of one position. Coordinates continue from the A note's position, so a path
may leave the fundamental domain of getPosition.
The Tonnetz: grid positions of notes (fifths by major thirds) and shortest paths between chords. 12-TET.