29 grpsInSeg = kgroep [kb:ke] |
29 grpsInSeg = kgroep [kb:ke] |
30 totNotes = sum ([len (ns) for ts, ns in grpsInSeg]) |
30 totNotes = sum ([len (ns) for ts, ns in grpsInSeg]) |
31 percnt = 100. * score / totNotes |
31 percnt = 100. * score / totNotes |
32 regels.append ('---- chord %s, score: %.0f%%' % (chord, percnt)) |
32 regels.append ('---- chord %s, score: %.0f%%' % (chord, percnt)) |
33 for tikken, noten in grpsInSeg: |
33 for tikken, noten in grpsInSeg: |
34 noten = ', '.join ([S.b40nm (n) + str(n / 40) for n in noten]) |
34 noten = ', '.join ([S.b40nm (n) + str(int (n / 40)) for n in noten]) |
35 x = fractions.Fraction (tikken, tikkenPerKwart) |
35 x = F.Fraction (tikken, tikkenPerKwart) |
36 t = x.numerator / x.denominator |
36 n, d = x.numerator, x.denominator |
|
37 t = int (n / d) |
37 r = x - t |
38 r = x - t |
38 if r == 0: r = '' |
39 if r == 0: r = '' |
39 regels.append ('%4d %3s %s' % (t, r, noten)) |
40 regels.append ('%4d %3s %s' % (t, r, noten)) |
40 return regels |
41 return regels |
41 |
42 |
42 if __name__ == '__main__': |
43 if __name__ == '__main__': |
43 from optparse import OptionParser |
44 from optparse import OptionParser |
44 parser = OptionParser (usage='%prog [-h] [-g TPQ] [--C5] <file1>') |
45 parser = OptionParser (usage='%prog [-h] [-g TPQ] [--C5] <file1>') |
45 parser.add_option ("-t", action="store", type="int", help="ticks per quarternote", default=384, metavar='TPQ') |
46 parser.add_option ("-t", action="store", type="int", help="ticks per quarternote", default=384, metavar='TPQ') |
51 if ext != '.xml': parser.error ('.xml file needed file needed') |
52 if ext != '.xml': parser.error ('.xml file needed file needed') |
52 if not os.path.exists (fnmext): parser.error ('%s does not exist' % fnmext) |
53 if not os.path.exists (fnmext): parser.error ('%s does not exist' % fnmext) |
53 |
54 |
54 noten = xml2b40.xml2b40 (fnmext, options.t, options.C5) |
55 noten = xml2b40.xml2b40 (fnmext, options.t, options.C5) |
55 regels = mkAna (noten, fnmext) |
56 regels = mkAna (noten, fnmext) |
56 print '\n'.join (regels) |
57 print ('\n'.join (regels)) |