Files
product-vamp/generator/solo/arrangement.py
T
2026-10-05 19:44:33 -05:00

15 lines
653 B
Python

import fractions
import generator.score
import generator.model
import generator.arrange.form
def regions(document):
result, first, start = {}, 0, fractions.Fraction()
source = generator.score.source_staff(document)['measures']
for section in generator.arrange.form.full_arrangement_sections(source, 'acoustic'):
length = sum((generator.model.fraction(m['duration']) for m in source[section.source_measure_index:section.source_measure_index + section.measure_count]), fractions.Fraction())
result[section.section_index] = (first, section.measure_count, start, length)
first += section.measure_count
start += length
return result