]> git.cworth.org Git - scherzo/commit
Switch to a degree-specific scheme for specifying chord signatures
authorCarl Worth <cworth@cworth.org>
Sun, 22 Sep 2013 22:57:14 +0000 (15:57 -0700)
committerCarl Worth <cworth@cworth.org>
Sun, 22 Sep 2013 22:57:14 +0000 (15:57 -0700)
commit5f7bba84e7e609d6dba0a960d0e4afb00bce3c85
treefa100afd568659f5c2c485bea8b0f70c92d0a0eb
parent5a43b0324c6353c1541a3c1fad52e2f040ab389d
Switch to a degree-specific scheme for specifying chord signatures

The old scheme specified each chord signature by the number of half
steps between the root note and each note of the chord. This made it
impossible to distinguish between alternate names of enharmonic chords
(such as an augmented 4th and a diminished 5th which both have 6 half
steps).

The new specification indicates which degree should appear in the
chord, and which modification each degree has, (from -2 to +2 half
steps).

So, under the old scheme an augmented 5th/diminished 4th would appear as:

{0, 6} /* Half steps from root to each note */

And in the new scheme these can be identified separately as:

{{1, 0}, {4, +1}} /* Augmented 4th */
{{1, 0}, {5, -1}} /* Diminished 5th */

We don't yet have much of a user-visibile change with this commit,
(other than that the above interval will now only be identified as a
"Diminished 5th" rathern than the "Augmented 4th/Diminished 5th" we
had before).

But this gives us the necessary information we will need in order to
correctly spell chords on a staff after the chord has been identified.
scherzo.c