lilypond-user
[Top][All Lists]
Advanced

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

Re: change note heads according to their current measure position?


From: David Nalesnik
Subject: Re: change note heads according to their current measure position?
Date: Tue, 24 Feb 2015 08:29:40 -0600

Hi Marc,

On Sat, Feb 14, 2015 at 11:15 AM, David Nalesnik <address@hidden> wrote:
Hi Marc,

On Sat, Feb 14, 2015 at 10:39 AM, Marc Hohl <address@hidden> wrote:

IIRC, there is no way to obtain the current measure position from the NoteHead grob itself ...

You can find the location by finding the PaperColumn grob which is associated with the NoteHead.  The properties 'rhythmic-location or 'when contain timing imformation.  Here's a sketch:

\version "2.19.15"

#(define (get-paper-column grob)
   (if (not (ly:grob? grob))
       (ly:message "column not found")
       (if (grob::has-interface grob 'paper-column-interface)
           grob
           (get-paper-column (ly:grob-parent grob X)))))

In current master, there is now a function ly:item-get-column which returns the associated column.. (This will need to wait for the release of 2.19.16.)
 
#(define (return-location grob)
   (let ((col (get-paper-column grob)))
     (display (ly:grob-property col 'rhythmic-location))
     (newline)))

There are currently two functions being reviewed which will return location data.  The above would be covered by grob::rhythmic-location (and there would be no need of looking for a paper column separately).  https://code.google.com/p/lilypond/issues/detail?id=4294
 
--David


reply via email to

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