Sha256: 479e1e72cbe969690a70ceb3ab497ed426d7630e2198a6bb486a828cd505f3b3
Contents?: true
Size: 1.04 KB
Versions: 9
Compression:
Stored size: 1.04 KB
Contents
# Module for guides module HeadMusic::Style::Guides; end # Rules for the cantus firmus according to Fux. class HeadMusic::Style::Guides::FuxCantusFirmus RULESET = [ HeadMusic::Style::Guidelines::AlwaysMove, HeadMusic::Style::Guidelines::AtLeastEightNotes, HeadMusic::Style::Guidelines::ConsonantClimax, HeadMusic::Style::Guidelines::Diatonic, HeadMusic::Style::Guidelines::EndOnTonic, HeadMusic::Style::Guidelines::FrequentDirectionChanges, HeadMusic::Style::Guidelines::LimitOctaveLeaps, HeadMusic::Style::Guidelines::MostlyConjunct, HeadMusic::Style::Guidelines::NoRests, HeadMusic::Style::Guidelines::NotesSameLength, HeadMusic::Style::Guidelines::RecoverLargeLeaps, HeadMusic::Style::Guidelines::SingableIntervals, HeadMusic::Style::Guidelines::SingableRange, HeadMusic::Style::Guidelines::StartOnTonic, HeadMusic::Style::Guidelines::StepDownToFinalNote, HeadMusic::Style::Guidelines::UpToFourteenNotes ].freeze def self.analyze(voice) RULESET.map { |rule| rule.new(voice) } end end
Version data entries
9 entries across 9 versions & 1 rubygems