[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
fonction scheme numérique
From: |
Daniel Cartron |
Subject: |
fonction scheme numérique |
Date: |
Fri, 05 Jun 2015 16:05:17 +0200 |
User-agent: |
KMail/4.13.3 (Linux/3.13.0-52-generic; KDE/4.13.3; x86_64; ; ) |
Bonjour,
Le titre n'est pas clair mais je ne sais pas bien expliquer ça simplement.
J'ai une fonction qui interprète mon expression musicale et lui ajoute des
markups en fonction de la valeur d'un paramètre nommé coup. On peut voir le
code ici :
http://cartron.xyz/des-partitions-pour-vielle-a-roue-avec-lilypond/#Les_fonctions_d8217hurdyTab
Je voudrais pouvoir modifier ce paramètre en cours d'interprétation. J'avais
imaginé d'écrire un #(define coup 4) en cours de morceau mais apparemment c'est
lu avant la fonction d'interprétation de la musique et du coup seul la
dernière valeur est passée en paramètre. Donc je pense qu'il faut plutôt une
fonction du genre \setCoup 4 que je mettrai au milieu de mon expression
musicale. Mon pb est que je ne vois pas comment écrire ça.
Je peux mettre ça qq part dans
hurdyWheel = #(define-music-function (parser location mus)
(ly:music?)
"Convert a melody into a hurdy-gurdy tablature"
"Convertit une mélodie en tablature de vielle à roue"
(map-some-music
(lambda(evt)
(let((name (ly:music-property evt 'name)))
(cond
( (eq? name 'NoteEvent)
(make-arrows evt)
evt)
(else #f)
)
)
)
mus
)
)
ou il faut faire autrement ?
Et est-ce qu'il faudra mettre les notes concernées par la nouvelle valeur de
paramètre entre {} ou pas ? Est-ce que si on fait comme ça l'ancienne valeur
éventuelle sera restaurée ?
Autant de questions qui se posent à mon esprit en moins de temps qu'il n 'en
faut pour y répondre :-D
Merci d'avance.
--
Cordialement, Daniel Cartron
« Un cocu ? Un entier qui partage sa moitié avec un tiers. »
Alphonse Allais
- fonction scheme numérique,
Daniel Cartron <=