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

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

Re: Colorier suivant l'inter valle avec la note précédente


From: zaord
Subject: Re: Colorier suivant l'inter valle avec la note précédente
Date: Mon, 26 Mar 2012 04:51:57 -0700 (PDT)

Bonjour,

J'ai réussi à modifier le code que tu m'avais donné.... seul problème je
voudrais colorier les hampes plutot que les tête de notes...

Il semble pas que ce soit possible avec les Tweak mais peut être avec la
commande ly:grob-object

Quelqu'un aurait une idée ?

Merci


Ewen


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 
\version "2.12.3" 

colorizeNote = #(define-music-function (parser location music) (ly:music?) 
"Colorize note in green if previous note is below, in black if pitch is 
equal, in red if above" 
(let ((prev-pitch (ly:make-pitch 0 0 0))) 
     (music-map 
       (lambda(x) 
         (let ((p (ly:music-property x 'pitch))) 
           (if (ly:pitch? p) (begin 
              (ly:music-set-property! x 'tweaks 
                (cons  ; on ajoute dans la liste de tweaks 
                   (cons 'color ; un "tweak" de couleur 
                     
                    ( let (( mod-interval ( modulo (- (ly:pitch-semitones 
prev-pitch)  (ly:pitch-semitones p))   12)))
                    
                     
                     
                      (case mod-interval
       ;;   Return rainbow colors
       ((1)   (rgb-color 0.71 0.28 0.58     ))  ; for C
       ((2)   (rgb-color  0.15 0.33 0.68    )); for D
       ((3)   (rgb-color  0.58 0.73 0.91    ))  ; for E
       ((4)   (rgb-color  0.71 0.86 0.69    ))  ; for F
       ((5)   (rgb-color  1.0 0.87 0.0       ))  ; for G
       ((6)   (rgb-color  1.0 0.58 0.55     ))  ; for A
       ((7)   (rgb-color  0.93 0.15 0.20   ))  ; for B
       ((8)   (rgb-color 0 0.5 0               )) 
       ((9)   (rgb-color 0.71 0.28 0.58    ))
       ((10) (rgb-color  0.71 0.28 0.58   ))
       ((11) (rgb-color  0.71 0.28 0.58   ))
       ((12) (rgb-color  0.71 0.28 0.58   )) )) )
                     
                     
                    
                   (ly:music-property x 'tweaks))) 
                (set! prev-pitch p)))   x)) 
       music)))

         musiques = \relative { c4 d e d e d c e e d  f e g f <e g c> <d f
b> <c e 
c'>1} 
\colorizeNote \musiques
         
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 

--
View this message in context: 
http://lilypond-french-users.1298960.n2.nabble.com/Colorier-suivant-l-intervalle-avec-la-note-precedente-tp7365170p7405634.html
Sent from the LilyPond French Users mailing list archive at Nabble.com.



reply via email to

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