@@ -2,6 +2,7 @@ import copy, fractions
|
||||
import generator.model, generator.parts, generator.harmony
|
||||
import generator.solo.analysis, generator.solo.composer, generator.solo.types
|
||||
import tests.test_musicxml
|
||||
import generator.harmonic_time
|
||||
|
||||
def song(meter=4, count=6, chords=('Dm7', 'G7', 'CM7')):
|
||||
document = tests.test_musicxml.parse(tests.test_musicxml.xml_score(''.join(tests.test_musicxml.xml_note(step, 1, 'quarter') for step in ('C', 'D', 'E', 'G'))))
|
||||
@@ -24,9 +25,8 @@ def compose(document, part='acoustic', cutoff=None):
|
||||
end = sum(generator.model.fraction(m['duration']) for m in measures) if cutoff is None else cutoff
|
||||
return generator.solo.composer.compose(analysis, measures, part, end)
|
||||
|
||||
def note(start,end,letter='g',alter=0,octave=4,**kwargs):
|
||||
return generator.solo.types.Note(fractions.Fraction(start),fractions.Fraction(end),generator.solo.types.Pitch(letter,fractions.Fraction(alter),octave),**kwargs)
|
||||
def note(start, end, letter='g', alter=0, octave=4, **kwargs):
|
||||
return generator.solo.types.Note(fractions.Fraction(start), fractions.Fraction(end), generator.solo.types.Pitch(letter, fractions.Fraction(alter), octave), **kwargs)
|
||||
|
||||
def choices(symbols,duration=4):
|
||||
from generator import harmonic_time
|
||||
return tuple(harmonic_time.ChordSpan(fractions.Fraction(i*duration),fractions.Fraction((i+1)*duration),i+1,str(i+1),fractions.Fraction(1),generator.model.key_from_fifths(-1),generator.harmony.parse_symbol(symbol)) for i,symbol in enumerate(symbols))
|
||||
def choices(symbols, duration=4):
|
||||
return tuple(generator.harmonic_time.ChordSpan(fractions.Fraction(i * duration), fractions.Fraction((i + 1) * duration), i + 1, str(i + 1), fractions.Fraction(1), generator.model.key_from_fifths(-1), generator.harmony.parse_symbol(symbol)) for i, symbol in enumerate(symbols))
|
||||
|
||||
Reference in New Issue
Block a user