Menu

#5540 clash between staves

Accepted
nobody
None
Defect
2019-08-07
2019-07-22
No

[lilypond git 49f41bf1c64ae1e2490571e73a85cbc4b2a9fb27]

The example below exhibits a clash between staves. It's easy to circumvent, but it definitely shouldn't happen, since it gets triggered by non-musical parameters. Maybe a rounding issue?

% Sizes 17 and 18 also cause a clash.
#(set-global-staff-size 16)

\paper {
  % Commenting out this line removes the clash;
  % values like 5cm and larger also remove the clash.
  indent = 4\cm
}

% The notes below trigger the clash;
% I wasn't successful in simplifying it more.
<<
  \relative c' {
    d2 d4 d |
    d8.[ d16] << { d4 } \\ { <a c> } >>
  }

  \relative c' {
     e2 e4 e |
     e4 <d b'>
  }
>>
1 Attachments

Discussion

  • Malte Meyn

    Malte Meyn - 2019-07-23

    You don’t need another staff-size:

    \version "2.21.0"
    
    \paper {
      indent = 10\cm
    }
    
    <<
      \new Staff << d' \\ <c' a> >>
      \new Staff <a' b'>
    >>
    

    Alternatively, you can keep the default indent and

    #(set-global-staff-size 9)
    
     

    Last edit: Malte Meyn 2019-07-23
  • Werner LEMBERG

    Werner LEMBERG - 2019-07-24

    Thanks for the simplification! Here's the corresponding image.

     
  • Thomas Morley

    Thomas Morley - 2019-07-24

    Interestingly the problem happens only for quaters not for other durations.
    And if I extend the quater's X-extent to that of a half note with
    \override NoteHead.X-extent = #'(-0.0 . 1.377346)
    (applied to Malte's code) the clash vanish.
    Ofcourse this is not a workaround (the value would need adjustment for changed staff-sizes, the stem-attachment is off and likely other problems), but may point to the direction where to look for the cause of the clash.


    And yes, first bad commit is:
    commit 87eb2f9fe1be3a532675fe4b7322bbba5a60ba5c (HEAD)
    Author: Carl Sorensen carl.d.sorensen@gmail.com
    Date: Sat Mar 5 21:30:46 2016 -0700

    Use a negative value of overdone_noteheads to shrink the head slightly
    

    Changing recent master to the former value:

    $ git diff
    diff --git a/mf/feta-params.mf b/mf/feta-params.mf
    index 36549e85ed..bb3dc2867f 100644
    --- a/mf/feta-params.mf
    +++ b/mf/feta-params.mf
    @@ -250,7 +250,7 @@ slash_thick# := 2/3 * 0.48 staff_space#;
    % reduce the notehead height. Empirically, we have determined that
    % reducing by 10% of stafflinethickness solves the problem.

    -overdone_heads = -0.1;
    +overdone_heads = 0.0;
    noteheight# := staff_space# + (1 + overdone_heads) * stafflinethickness#;

    define_pixels (slash_thick);

    returns not clashing output.
    Ofcourse the (here reverted) patch was meant to fix a problem, which now will arise again...

     
  • Simon Albrecht

    Simon Albrecht - 2019-08-07
    • status: New --> Accepted