Menu

#1774 Semi-breves unnecessarily shifted

Verified
nobody
Defect
2014-09-17
2011-07-22
Anonymous
No

Originally created by: *anonymous

Originally created by: PhilEHol...@googlemail.com
Originally owned by: k-ohara5...@oco.net

Lilypond should shift notes other than semi-breves (whole notes) to avoid stem collisions.  However, since the note has no stem, it generally should not need shifting.  In the attached image we see notes from voices one, two, (unshifted) four (shifted left) and three (shifted right).  We also see a comparison of voices one and three, ending up with correct shifts as they become close.

{
  \new Staff {
    <<
      \new Voice {
        \voiceOne c''''1 e'' e' d' c'
      }
      \new Voice {
        \voiceThree c'1 c' c' c' c'
      }
      \new Voice {
        \voiceFour c''1
      }
      \new Voice {
        \voiceTwo c'''1
      }
    >>
  }
}

1 Attachments

Discussion

  • Google Importer

    Google Importer - 2011-07-23

    Originally posted by: k-ohara5...@oco.net

    Maybe desired behavior would be let the inner voices (those with \shiftOn...) ignore outer voices if
    (1) the inner voice notes have no stem, and
    (2) the inner voice noteheads clear other noteheads

    lu =  \once\override NoteColumn #'ignore-collision = ##t
    \new Staff <<
      \new Voice { \voiceOne g''1 e''2 d'' e'' d'' }
      \new Voice { \voiceThree c''2 b' \lu a'1 b' }
      \new Voice { \voiceFour \lu g'1 e'2 f'2 a'1 }
      \new Voice { \voiceTwo c'1 c'2 d' e'2 d' }
    >>

    Can anyone check the if the textbooks give rules for this situation?

    Summary: Semi-breves unnecessarily shifted

     
  • Google Importer

    Google Importer - 2011-07-24

    Originally posted by: PhilEHol...@googlemail.com

    I've looked in both Gould and Read, and neither is explicit about placement with semi-breves.  However, both state that simultaneous music events should be vertically aligned (unless impossible) and I can't find any examples in either which do not have the semi-breves vertically aligned.

     
  • Google Importer

    Google Importer - 2011-12-11

    Originally posted by: dak@gnu.org

    I am not sure about that.  It would easily be possible to write the source in a way that no voice reversal occurs.  How would the singer know that a whole note belongs to his voice when it is not formatted with a shift similar to the melodic line before and after it?

     
  • Google Importer

    Google Importer - 2014-08-24

    Originally posted by: k-ohara5...@oco.net

    I originally intended only to suppress the warning "too many clashing note columns" when we explicitly ask for columns to line up, but can see a good argument for having whole-notes line up by default when the relative pitches are in the usual order for the voices.

    We need only apply the horizontal shifts for clarity when voices cross.

    Making the test for stems explicit also addresses issue 2196.  This changes two regression tests regarding beams, where the voices are intentionally crossed.  The placement of notes looks unusual (because the relative pitches in the voices is unusual) but notes no longer overlay the stems.

    https://codereview.appspot.com/132110043/

    Labels: -Priority-Medium Patch-new
    Owner: k-ohara5...@oco.net
    Status: Started

     
  • Google Importer

    Google Importer - 2014-08-25

    Originally posted by: pkx1...@gmail.com

    Passes make, make check and a full make doc. However two reg tests report 'too many clashing columns'

    +/tmp/lilypond-autobuild/input/regression/beam-multiple-cross-staff.ly:18:40: warning: ignoring too many clashing note columns
    +    c8[ c16 \change Staff = SB \stemUp
    +                                       c16 ]

    and

    Writing ./stem-tremolo-note-collision-systems.count...
    +warning: 1 expected warning(s) not encountered:
    +        ignoring too many clashing note columns
    +

    but then we get

    Renaming input to: `/tmp/lilypond-autobuild/input/regression/property-grace-polyphony.ly'
    Interpreting music...
    Preprocessing graphical objects...
    -/tmp/lilypond-autobuild/input/regression/property-grace-polyphony.ly:13:23: warning: ignoring too many clashing note columns
    -      { \grace e8
    -                      d2 }
    Calculating line breaks...

    ...

    reg test diffs also attached. I think this may still need work? Setting to review though for now.

    Labels: -Patch-new Patch-review

     
  • Google Importer

    Google Importer - 2014-08-25

    Originally posted by: k-ohara5...@oco.net

    Thanks, James.  I missed those somehow.

    I have to think about the new change to 'beam-multiple-cross-staff'.  The input is a case for which we do want a warning (two stem-up voices with no indication of voicing) but I am confused why the old code did not warn.

    Labels: -Patch-review Patch-needs_work

     
  • Google Importer

    Google Importer - 2014-08-25

    Originally posted by: k-ohara5...@oco.net

    Oh.  'beam-multiple-cross-staff' did give the "clashing note columns" warning with the old code, but a different one of the clashing note columns was flagged in the source.  That regression test input seems to want the notes to have the same horizontal position, so I'll change the \stemUp to \voiceOne to make that desire explicit, and avoid the warning.

    Labels: -Patch-needs_work Patch-new

     
  • Google Importer

    Google Importer - 2014-08-26

    Originally posted by: pkx1...@gmail.com

    PAsses make, make check and a full make doc.

    Still getting the clashing message

    --snip--

    input/regression/stem-tremolo-note-collision.log    

    @@ -12,4 +12,7 @@
    Writing ./stem-tremolo-note-collision-systems.texi...
    Writing ./stem-tremolo-note-collision-systems.tex...
    Writing ./stem-tremolo-note-collision-systems.count...
    +warning: 1 expected warning(s) not encountered:
    +        ignoring too many clashing note columns
    +
    Writing timing to stem-tremolo-note-collision.profile...

    --

    Renaming input to: `/tmp/lilypond-autobuild/input/regression/beam-multiple-cross-staff.ly'
    Interpreting music...
    Preprocessing graphical objects...
    -/tmp/lilypond-autobuild/input/regression/beam-multiple-cross-staff.ly:24:21: warning: ignoring too many clashing note columns
    -    b8[ b16 \stemUp
    -                    b,,16 ]
    +/tmp/lilypond-autobuild/input/regression/beam-multiple-cross-staff.ly:18:40: warning: ignoring too many clashing note columns
    +    c8[ c16 \change Staff = SB \stemUp
    +                                       c16 ]
    Calculating line breaks...
    Drawing systems...
    /tmp/lilypond-autobuild/input/regression/beam-multiple-cross-staff.ly:18:7: warning: no viable initial configuration found: may not find good beam slope

    ---

    But these are the only two.

    Reg test image still the same as comment #5 so I won't bother attaching another png

    Labels: -Patch-new Patch-review

     
  • Google Importer

    Google Importer - 2014-08-27

    Originally posted by: k-ohara5...@oco.net

    James, I should have cleared the warning about "clashing note columns" (and warnings about missing warnings) but failed to put all the fixes on reitveld.

    Could we have the patchy script re-test ?
    https://codereview.appspot.com/132110043/

    Labels: -Patch-review Patch-new

     
  • Google Importer

    Google Importer - 2014-08-28

    Originally posted by: pkx1...@gmail.com

    This fails make doc but I cannot see why (I don't really have much time to dig into logs at the moment) I can re-run the tests when I get home where I'll have more time.

     
  • Google Importer

    Google Importer - 2014-08-28

    Originally posted by: pkx1...@gmail.com

    Patchy the autobot says: passes tests.  Includes a full make doc

    Labels: -Patch-new Patch-review

     
  • Google Importer

    Google Importer - 2014-08-30

    Originally posted by: pkx1...@gmail.com

    Patch on countdown for September 2nd (regarding the previous failed make doc mentioned in comment #10 - it was because I had a 'dirty' master that I was without realising, testing against at the time, sorry for the noise).

    Labels: -Patch-review Patch-countdown

     
  • Google Importer

    Google Importer - 2014-09-02

    Originally posted by: pkx1...@gmail.com

    Patch counted down - please push

    Labels: -Patch-countdown Patch-push

     
  • Google Importer

    Google Importer - 2014-09-05

    Originally posted by: pkx1...@gmail.com

    Patch counted down - please push

     
  • Google Importer

    Google Importer - 2014-09-06

    Originally posted by: k-ohara5...@oco.net

    (No comment was entered for this change.)

    Labels: -Patch-push Fixed_2_19_14
    Status: Fixed

     
  • Google Importer

    Google Importer - 2014-09-17

    Originally posted by: ColinPKC...@gmail.com

    Commit [r01980ec7e46ccd03ff7a379b6299842d788b8f8a]
    Author: Keith OHara <k-ohara5a5a@oco.net>  2014-08-24 02:48:17
    Committer: Keith OHara <k-ohara5a5a@oco.net>  2014-09-06 00:35:26

    Status: Verified

     
MongoDB Logo MongoDB