lilypond-devel
[Top][All Lists]
Advanced

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

Re: Terminology of baseMoment, beats, groups


From: Urs Liska
Subject: Re: Terminology of baseMoment, beats, groups
Date: Sat, 11 Nov 2017 12:00:48 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.4.0



Am 11.11.2017 um 11:42 schrieb David Kastrup:
Urs Liska <address@hidden> writes:

So, now the first question ...

The terminology of baseMoment, beats and groups is inconsistent
between the NR
(http://lilypond.org/doc/v2.19/Documentation/notation/beams#setting-automatic-beam-behavior)
and the code. The question is, what are the components of the
following:

   \set baseMoment = #(ly:make-moment 1/8)
   \set beatStructure = 3,3,2

 From the text in the NR this would be three beats, divided in three or
two base moments each.
However, the C++ code (and the code comments) refer(s) to that as
three groups with three beats each.
Can you please come up with actual quotes/evidence for those statements?
Neither of those make much sense, so I'd guess you'd been
over-paraphrasing either.  Or alternatively, there are grave errors in
the respective description which warrant fixing rather than unifying
first.


a) from the NR section linked
"beatStructure is a scheme list that defines the length of each beat in the measure in units of baseMoment. "

I read this as: In the given example beatStructure is a list that defines the measure to consist of three beats. Beat one and two have the length of three baseMoments of 1/8, beat three is two baseMoments of 1/8 long.

Actually this is consistent with how I would describe that measure in prose: we have an 8/8 measure with three beats, with lengths 3, 3, and 2 quavers.


b) from beaming-pattern.cc

1) line 206ff., comment to find_location()
/*
   Get the group start position, the next group starting position, and the
   next beat starting position, given start_moment, base_moment,
   grouping, and factor
*/

2) line 265, comment right after find_location has been called:
// Mark the importance of stems that start at a beat or a beat group.

From the actual behaviour of the code (and other comments throughout the code) it is clear that "beat" refers to a baseMoment unit and "group" refers to the entity the NR calls "beat". The context property "beatStructure" obviously corresponds to the C++ variable "grouping".



reply via email to

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