INNER CODE UNIT · Python
grammarTerm
jisungk/deepjazz · grammar.py:206
grammarTerm = noteInfo + intervalInfo
fullGrammar += (grammarTerm + " ")
return fullGrammar.rstrip()
''' Given a grammar string and chords for a measure, returns measure notes. '''
def unparse_grammar(m1_grammar, m1_chords):
m1_elements = stream.Voice()
currOffset = 0.0 # for recalculate last chord.
prevElement = None
for ix, grammarElement in enumerate(m1_grammar.split(' ')):
terms = grammarElement.split(',')
currOffset += float(terms[1]) # works just fine
# Case 1: it's a rest. Just append
if terms[0] == 'R':
rNote = note.Rest(quarterLength = float(terms[1]))
m1_elements.insert(currOffset, rNote)