class HeadMusic::Style::Guidelines::ApproachPerfectionContrarily

A counterpoint guideline

Constants

MESSAGE

Public Instance Methods

marks() click to toggle source
# File lib/head_music/style/guidelines/approach_perfection_contrarily.rb, line 10
def marks
  motions_to_perfect_consonance_approached_directly.map do |bad_motion|
    HeadMusic::Style::Mark.for_all(bad_motion.notes)
  end
end

Private Instance Methods

motions_to_perfect_consonance() click to toggle source
# File lib/head_music/style/guidelines/approach_perfection_contrarily.rb, line 22
def motions_to_perfect_consonance
  motions.select do |motion|
    motion.second_harmonic_interval.perfect_consonance?
  end
end
motions_to_perfect_consonance_approached_directly() click to toggle source
# File lib/head_music/style/guidelines/approach_perfection_contrarily.rb, line 18
def motions_to_perfect_consonance_approached_directly
  motions_to_perfect_consonance.select(&:direct?)
end