lilypond-user-fr
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

técupérer la valeur de \time en scheme


From: Daniel Cartron
Subject: técupérer la valeur de \time en scheme
Date: Fri, 06 Mar 2015 15:30:19 +0100
User-agent: KMail/4.13.3 (Linux/3.13.0-46-generic; KDE/4.13.3; x86_64; ; )

J'ai tout dit dans le titre...

C'est en relation avec mon autre fil sur le dégroupement de durées mais comme 
c'est assez spécifique je préfère ouvrir un autre fil.

Précisions : je veux utiliser la valeur du dénominateur/2 à la place du chiffre 
8 inscrit en dur en dernière ligne lors de l'appel de la fonction 
\unfold_duration (hé oui j'ai un peu modifié le code qui me convient mieux 
comme ça)

\version "2.16.2"
unfold_duration = #(define-music-function
  (parser location duration music)
  (number? ly:music?)
    (map-some-music
      (lambda (evt)
        (let 
         ((dur (ly:music-property evt 'duration #f)))
          (and dur (begin
            (let ((number-dur 0) (nb_notes 0))
              (set! number-dur (expt 2 (ly:duration-log dur)))
              (set! nb_notes (/  duration (expt 2 (ly:duration-log dur)) ))
               (display nb_notes)
             
              (set! (ly:music-property evt 'duration) (ly:make-duration (log2 
duration) 0 1))
                #{ 
                  \repeat unfold $nb_notes { $evt } 
                #}
            )
                                )
          )
        )
      )
    music)
)

Musique = \relative c' {
  \time 4/4
  d2 c1 f4 a
  
}

  \unfold_duration 8 \Musique

-- 
Cordialement, Daniel Cartron
« Il ne faut pas oublier que le jour du Déluge ceux qui savaient nager se 
noyèrent aussi. »
Ramon Gomez de la Serna




reply via email to

[Prev in Thread] Current Thread [Next in Thread]