Incorrect tie positioning

• Nov 17, 2011 - 05:46
Reported version
2.3
Type
Functional
Frequency
Many
Severity
S4 - Minor
Status
active
Regression
No
Workaround
Yes
Project

See attached.

In Tie 1, the ties are placed the way MS placed them.
In Tie 2, I have reversed the direction of the middle tie.

Neither option looks proper to me.

r 1.1

Attachment Size
Tie 1.png 12.53 KB
Tie 2.png 18.78 KB

Comments

It's a tricky case. Probably it should look something like the image attached (created in LilyPond). More research needs to be done to work out all the edge cases for tied seconds. I known that ties should avoid collisions with note heads or note flags when possible but I'm not sure I could tell a computer the rules for where to place the tie instead.

LilyPond seems to get this case right, but Finale 2012 makes the same mistakes that MuseScore is making.

P.S. Xavierjazz, you probably already know this, but you can double click on a tie and fix it manually.

Attachment Size
Capture.PNG 2.7 KB

No - this is not a problem in Finale or Sibelius, and it has an easy fix!
I know how to fix this - logically.
I have been bothered by this problem lately.

The problem here is the logic in the endpoint of the ties.
Given: Note 1 is tied to Note 2.
The endpoint seems to be the beginning of Note 2 (central left).
This works fine for a single note tied to another. However, it breaks down if Note 2 is part of a chord.

The logic should be:

If Note 2 is alone --> current behavior.
If Note 2 is part of a chord -->
Make the endpoint the same height as current behavior (Y position), but align to the central left of the leftmost notehead in the chord (X position).

Make sense? I don't know the code well, since I'm new to this particular project, but that would be quite possible assuming your object hierarchy allows you to trace through the properties of each individual note in a given chord AND tell if a note is part of a chord. I'd assume it can.

Also - to add more logic -- I noticed the same problem if Note 1 belongs to a chord.

So, if Note 1 belongs to a chord, the tie should START at the center (Y) rightmost edge (x) of the notehead.
I hope this gets fixed - it would save many hours of manual tie-fixing on my scores!

Yes, accounting for dots or double dots, or even the rare triple dot should be done.
So, that should be an absolute shift scaled based upon the size of the notehead.

So, after the above logical changes are made, there can be a final pass where we check to see if the note being tied from or tied to is dotted and shift accordingly.

So, how do code changes get made?
FYI, I have experience with Java and C++. I am also a composer and music instructor, and a long-time Sibelius and Finale user (finally ditching them). However, I am new to this forum, and open-source projects in general.

Summary
Finale 2009
finale2009.png

Sibelius 7
Sibelius7.png

Lilypond

MuseScore 1.2 (same in MuseScore cf850d8d48)

None of them looks right to me... Can any one locate an old edition from a respected publisher with this note configuration?

@CompleteMusician It's probably not the good place to teach you how to deal with the source code. You coul join the Tech Preview forum, the developer mailing list or the IRC channel #musescore on freenode.net.
In short, instructions to build the current git is here : http://musescore.org/en/developers-handbook/compilation
Our Git Workflow : http://musescore.org/en/developers-handbook/git-workflow
Tie layout code is in slur.cpp
Keep in mind that a tie can be cut in segment if at end of system and that tie direction is set automatically. A fix for this bug should probably be linked with a MSCZ files and different test cases.

Attachment Size
finale2009.png 228.85 KB
Sibelius7.png 17.69 KB

In my view, Sibelius 7 has it correct. That is the best, and most easily-readable way to print the ties in this scenario. It also avoids collisions gracefully.

Behind Bars recommends, "It is usually clearer to start each tie close to each notehead, rather than to align all ties after all notes" (p. 63). Alfred's Essential Dictionary of Music Notation makes a similar recommendation. So while Sibelius' option is certainly the easiest to code, it isn't optimal. That said, it is better than ties overlapping with noteheads so I wouldn't be opposed to this being implemented for now. (Although fixing this would likely bring up the following bug for this situation: http://musescore.org/en/node/2316 )

Lilypond's output looks fine to me. If there were more space between the notes (e.g. a tie over the barline) then the middle tie could probably pop down a space and start after the notehead instead of above.

I'm looking at this: #13034: Tie direction for chords

"The ties in the middle should curve up if they are above the middle line, or curve down if they are on/below the middle line"

That contradicts with the example here - the middle tie should be down, but is up? Maybe it shouldn't matter, as ties should still be in the correct position and not collide?

I think you'll find different editors have different standards here, but in the list David posted in the issue you referenced, note the last item says that ties for seconds should be in opposite directions. That trumps the rule about the middle line.

It seems to me, judging from the examples posted by Chen Lung, that human engravers would have shifted the top F to align it with the D, in order to avoid the collision. None of the programs cited does this, which suggests they all follow the same faulty logic (and that Musescore could do better than all of them...!).