public Chord(Note root, ChordType chordType) { Root = root; ChordType = chordType; Intervals = ChordType.ToIntervals(); Notes = Intervals.Select(i => Root.NoteAtInterval(i)) .ToArray(); NormalizedNotes = Notes.Select(i => Note.Normalize(i)) .ToArray(); NonMandatoryNotes = ChordType.ToNonMandatoryIntervals() .Select(i => Root.NoteAtInterval(i)) .ToArray(); }
public Scale(Note root, ScaleType scaleType) { Root = root; ScaleType = scaleType; Notes = scaleType.ToIntervals() .Select(i => root.NoteAtInterval(i)) .ToArray(); }