/// <summary> /// Determines whether nor not the distance between two notes is a dissonant leap or not. /// </summary> /// <param name="currentNote">The current note</param> /// <param name="nextNote">The next note</param> /// <returns>Whether the distance between two notes is a dissonant leap or not</returns> private bool IsDissonantLeap( int currentNote, int nextNote ) { if (_context.GetNoteMotionSpanFromNotes(currentNote, nextNote) != NoteMotionSpan.Leap) { return(false); } var currentScaleDegree = _scaleDegreeEvaluator.GetScaleDegreeFromNote(currentNote); var nextScaleDegree = _scaleDegreeEvaluator.GetScaleDegreeFromNote(nextNote); return(currentScaleDegree.IsDissonantWith(nextScaleDegree)); }