INNER CODE UNIT · Python
insertNote
jisungk/deepjazz · grammar.py:292
insertNote = prevElement.transpose(random.choice([-2,2]))
if insertNote.octave < 3:
insertNote.octave = 3
insertNote.quarterLength = float(terms[1])
m1_elements.insert(currOffset, insertNote)
# Case S: scale note, must be within increment.
elif terms[0] == 'S':
relevantScaleTones = []
for i in xrange(0, numNotes):
currNote = note.Note(lowPitch.transpose(i).simplifyEnharmonic())
if __is_scale_tone(lastChord, currNote):
relevantScaleTones.append(currNote)
if len(relevantScaleTones) > 1:
insertNote = random.choice([i for i in relevantScaleTones
if i.nameWithOctave != prevElement.nameWithOctave])
elif len(relevantScaleTones) == 1:
insertNote = relevantScaleTones[0]