lilypond-user
[Top][All Lists]
Advanced

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

Re: Fingering position in polyphony face to sharp glyph. Bug?


From: Torsten Hämmerle
Subject: Re: Fingering position in polyphony face to sharp glyph. Bug?
Date: Sat, 11 Aug 2018 06:00:55 -0700 (MST)

Thomas Morley-2 wrote
> I tried to Y-center the Fingering-stencil.
> 
> Though, with the example below the result is not all that convincing.
> […]
> Additionally, if fingeringOrientations contains 'left or 'right a
> FingeringColumn is built at Staff-level, so the 'snap-radius-property
> comes into play.
> 
> No real clue how to proceed...


Hi Harm,

>From my point of view, the Y-centering of the fingering stencil is perfectly
OK (we just need a "proper" solution), the dot collision problem has
bettered and can be completely cured by considering all the dots of the
chord.

So, your remaining concern is the strange (?) behaviour of the
FingeringColumn with respect to the snap-radius.
This looks admittedly odd and I was wondering why the heck the outer
fingerings don't come closer to their noteheads, respectively why are they
arranged in a circular shape even if there is no accidental in the way.
But, looking deeper into this, it is the expected behaviour and everything
works as designed. If we don't like this, it would be another issue to
change FingeringColumn algorithm, but, in any case, this is no unwanted
side-effect of our stencil manipulations.

To illustrate this, I've switched off any padding values, put a box around
the fingering numbers and gradually changed the font size from very small to
big in order to be able to observe the evolution of fingering placement.
I've used just one flat because of its straight left border.

<http://lilypond.1069038.n5.nabble.com/file/t3887/test-snap-radius.png> 

Starting off with a very small font size, there's enough space for each
fingering to take its ideal Y-position, exactly centred on its notehead.


*Rule: A fingering must never get in between accidentals and noteheads.*


*In (1)*, the fingering "1" hardly touches the blue line signifying the
lower end of the flat accidental. It still can stick to its notehead. 
Fingerings 2, 3, and 4 clearly have to go outside the flat and are pushed
away from the notehead because of The Rule.

*In (2)*, the font size has been increased so that the "1" just slightly
gets into the "forbidden" flat area and therefore is pushed away from the
notehead, too.  The "5" still has enough space.

*In (3) and (4)*, the increasing height of the numbers starts spreading them
vertically, away from their original Y position.  In (4), it is clearly
visible that the "1" does not interfere with the flat anymore, but still (!)
keeps its outside position.

*In (5)*, finally, all the fingering number keep a distance from their
noteheads, even if the "1" and the "5" are actually quite far away from the
accidental.

The (intended) reason for this is that, even if there seems to be enough
space in the direct vicinity of their noteheads, these fingerings stay
"outside" because at their original Y position, they'd get in between
accidentals and noteheads. That's the simple reason why they stay "outside":
their X position is determined by the accidentals, calculated as if the
fingerings had their original Y position (i.e. the notehead's Y position).
In a second step, their Y position will be spread out due to stacking, while
keeping the X position.

If there are more than on accidentals involved (or sharps with their more
complex left skyline), the stacked fingerings may take on alignments along a
curved path.

In the end, snap-radius is used to avoid very small irregularities by
positioning the fingering in a straight line if they have "nearly" the same
X position to avoid an irregular, look.

But, as I said, I consider this expected behaviour, even if it seems odd at
first glance.
Would you agree?

All the best,
Torsten



--
Sent from: http://lilypond.1069038.n5.nabble.com/User-f3.html



reply via email to

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