Fingering: note accidental can result in collision

• Nov 30, 2018 - 20:05
Reported version
3.0
Priority
P2 - Medium
Type
Functional
Frequency
Once
Severity
S4 - Minor
Reproducibility
Always
Status
closed
Regression
Yes
Workaround
No
Project

OS: Windows 10 (10.0), Arch.: x86_64, MuseScore version (64-bit): 3.0.0.4095, revision: 5859662

Open the attached score. Select either the top or bottom note of the chord (see below) and move it diatonically one step towards the middle note:

guitar_fingering.png

Result: The fingering collides with the accidental.

Attachment Size
guitar_fingering.mscz 5.09 KB

Comments

Title LH Guitar fingering: note accidental can result in collision Fingering: note accidental can result in collision

This issue applies for any fingerings, not only guitar-specific.

I tried to resolve this issue by simply calculating a distance from the given fingering to a chord via shapes mechanism but this worked bad as fingerings themselves collide with each other if they have default font size (8pt). Maybe resolving this and the related issues should involve also improvement of relative vertical placement of fingerings to avoid such sort of collisions too.

Maybe. Or maybe we need a smaller default font size? Seems we shouldn't need to reinvent the wheel on this, there must be plenty of good models for us to emulate...

Still it would be good to have at least some sensible layout if one decides to make fingerings font size larger. And 7pt looks a bit small after looking at 8pt fingerings :)

Status active PR created

In https://github.com/musescore/MuseScore/pull/4591, this will be mostly addressed. A few corner cases involve chords with seconds and stacked accidentals may remain.

The potential collision of fingerings vertically is harder to solve in any objective way. The rules for handling this for accidentals and ties are pretty well-understood and we follow them pretty well, again with issues only in the most extreme cases. But checking Gould and the literature, there are as many ways of handling vertical collisions between LH guitar fingering as there are chords with collisions times the number of different editors who give it a shot :-).

My proposal is we merge my PR which produces a vertical stack with seconds offset the same way they are in the chord itself, then if there is sufficient demand and consensus, later we can consider some sort of subjective heuristic to redistribute the fingers vertically, like maybe start from the center and work our way to the outer notes, offsetting fingers as needed towards the outside as well.

Fix version
3.0.2