diff --git a/Makefile b/Makefile index 530843001df78112e8f373c497c4bffe4ce75778..2991122938b88c9a34ff8b623559b6a93db04e44 100644 --- a/Makefile +++ b/Makefile @@ -16,7 +16,7 @@ PDF=$(EXECOLLPDF) $(EXEPROJPDF) $(EXEPRIMPDF) $(EXECORRPDF) WAVES=$(addprefix $(SONS)/,$(SCRIPTS:.py=.wav)) -BOOMWHACKERS=boomwhackers-8.json +BOOMWHACKERS=boomwhackers-8+5.json .PRECIOUS: $(TEX) diff --git a/boomwhackers-8+5.json b/boomwhackers-8+5.json new file mode 100644 index 0000000000000000000000000000000000000000..3cf596ee2a4a714b8d7bd2dbf24486bfe48c4e29 --- /dev/null +++ b/boomwhackers-8+5.json @@ -0,0 +1,16 @@ +{ + "do1": { "couleur": [255, 0, 0], "capsule": "0", "court": "1" }, + "re1": { "couleur": [255, 170, 20], "capsule": "0", "court": "1" }, + "mi1": { "couleur": [255, 238, 0], "capsule": "0", "court": "1" }, + "fa1": { "couleur": [81, 255, 0], "capsule": "0", "court": "1" }, + "sol1": { "couleur": [0, 118, 88], "capsule": "0", "court": "1" }, + "la1": { "couleur": [140, 0, 255], "capsule": "0", "court": "1" }, + "si1": { "couleur": [221, 0, 115], "capsule": "0", "court": "1" }, + "do2": { "couleur": [255, 0, 0], "capsule": "0", "court": "0" }, + + "dod1": { "couleur": [255, 0, 0], "capsule": "0", "court": "1", "alteration": "#" }, + "mib1": { "couleur": [255, 238, 0], "capsule": "0", "court": "1", "alteration" : "b"}, + "fad1": { "couleur": [81, 255, 0], "capsule": "0", "court": "1", "alteration": "#" }, + "sold1": { "couleur": [0, 118, 88], "capsule": "0", "court": "1", "alteration": "#" }, + "sib1": { "couleur": [221, 0, 115], "capsule": "0", "court": "1", "alteration" : "b" } +} diff --git a/boomwhackers-8.json b/boomwhackers-8.json index 7d1d8e62084789d107b4ba0ca6f60c0a079a6ed3..4ccc82a347bcc0feffbe9d425febc09780657ec8 100644 --- a/boomwhackers-8.json +++ b/boomwhackers-8.json @@ -6,5 +6,11 @@ "sol1": { "couleur": [0, 118, 88], "capsule": "0", "court": "1" }, "la1": { "couleur": [140, 0, 255], "capsule": "0", "court": "1" }, "si1": { "couleur": [221, 0, 115], "capsule": "0", "court": "1" }, - "do2": { "couleur": [255, 0, 0], "capsule": "0", "court": "0" } + "do2": { "couleur": [255, 0, 0], "capsule": "0", "court": "0" }, + + "dod1": { "couleur": [255, 0, 0], "capsule": "0", "court": "1", "alteration": "#" }, + "mib1": { "couleur": [255, 238, 0], "capsule": "0", "court": "1", "alteration" : "♭"}, + "fad1": { "couleur": [81, 255, 0], "capsule": "0", "court": "1", "alteration": "#" }, + "sold1": { "couleur": [0, 118, 88], "capsule": "0", "court": "1", "alteration": "#" }, + "sib1": { "couleur": [221, 0, 115], "capsule": "0", "court": "1", "alteration" : "♭" }, } diff --git a/happybirthday.py b/happybirthday.py index 8984bb278246cba28d8f446240e8d3d934b5e28c..224c59b839c30967609bb7469ce6cfd189338176 100755 --- a/happybirthday.py +++ b/happybirthday.py @@ -51,11 +51,11 @@ happy = [ [ [gamme.do(4), gamme.crochepointee], ] ] -if args.exerciceSpectrogramme: +if args.exerciceSpectrogramme or args.transparent or args.correction: g = GenerateurExercice(gamme.bpm) g.setBoomwhackers(boomwhackers) g.setLongueurPartitionColoree(6) - g.setLongueurPartitionMusicale(8) + g.setLongueurPartitionMusicale(12) if args.primaire: g.setTableauSimplifie(True) if args.exerciceSpectrogramme: diff --git a/musique/exercice.py b/musique/exercice.py index 2671e0c303078aaf1e8bd89dbf3888be00f2665b..1f52c082fefc036fdd9d36fed90870fb97210332 100644 --- a/musique/exercice.py +++ b/musique/exercice.py @@ -338,6 +338,11 @@ class GenerateurExercice(GammeTemperee): rayon = r * 1.2 if boomwhacker["court"] == "0" else r result += "\\fill[fill=tempcolor] ("+ \ str(x) + "," + str(y) + ") circle (" + str(rayon) + ");" + if "alteration" in boomwhacker: + if (boomwhacker["couleur"][0] + boomwhacker["couleur"][1] + boomwhacker["couleur"][2]) > 128 * 3: + result += "\\draw (" + str(x) + "," + str(y) + ") node{" + str(boomwhacker["alteration"]) + "};" + else: + result += "\\draw[color=white] (" + str(x) + "," + str(y) + ") node{" + str(boomwhacker["alteration"]) + "};" if boomwhacker["capsule"] == "1": result += "\\fill [black] (" + str(x - r) + "," + str(y - 1.2 * r) + \ ") rectangle (" + str(x + r) + ", " + str(y - 1.9 * r) + ");" @@ -351,6 +356,7 @@ class GenerateurExercice(GammeTemperee): notes = sorted(list(set(frequences))) result += "\\begin{table}[H]\n\centering\n" + result += '\\resizebox{1\\textwidth}{!}{%\n' if not beamer: result += "\\begin{tabular}{|r|" + "".join(["c|"] * len(notes)) + "}\n" else: @@ -385,6 +391,7 @@ class GenerateurExercice(GammeTemperee): if not beamer: result += "\\hline\n" result += "\\end{tabular}\n" + result += "}\n" result += "\\caption{Représentation colorée des notes}\n" result += "\\end{table}\n" return result