lilypond-user
[Top][All Lists]
Advanced

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

Re: Notes in voiceone corrupt voicethree after voice splitting?


From: Simon Albrecht
Subject: Re: Notes in voiceone corrupt voicethree after voice splitting?
Date: Tue, 24 Mar 2015 21:04:23 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.5.0

Am 24.03.2015 um 19:39 schrieb address@hidden:
   Howdy!

              I have reduced a multivoice structure that is part of a
composition to a simple five bar example of voice splitting.
I need 4 voices, and then I need one voice to split.

             Each bar shows a different behaviour depending on the first voice

        bar 1 -   seems ok
        bar 2 -  seems ok and NoteColumn.force-hshift   works in voicethree
        bar 3 -  a quarter note on beat 3 in voiceone causes a collision in
voicethree and NoteColumn.force-hshift doesn't work

        bar 4 - a simple white harmonic in voiceone creates the same
condition as bar 3
        bar 5 - use of     Staff.NoteHead.style = #'harmonic-black  in
voiceone  causes
                   notes in voicethree to change to black harmonics

http://www.gooeytar.com/projects/test/test.pdf

         Obviously, voiceone is messing with the "new voice" in voice three.

         What is the correct way to do this in LilyPond??
Well, indeed that seems to be a complicated case. However, if you just follow the relevant NR section at <http://lilypond.org/doc/v2.18/Documentation/notation/multiple-voices#collision-resolution>, it all works as expected (see attachment). Careful doc reading helps…

HTH, Simon

      thanx - steve




\version "2.18.2"

H = \once \override Staff.NoteHead.style = #'harmonic-black

voiceone = \relative c'' {
     \clef "G_8"
     \time 4/4
     \key g \major
     b4 b2 r4 |
     b4 b4 r r |
     b4 b b b |
     b4 b b\harmonic b |
     b4 b \H b b |
}

voicetwo = \relative c {
     \set harmonicDots = ##t
     e'8\rest d2..\harmonic |
     e8\rest d2..\harmonic |
     e8\rest d2..\harmonic |
     e8\rest d2..\harmonic |
     e8\rest d2..\harmonic |
}

voicethree = \relative c' {
     <<
        \new Voice  % needed or voiceone and three are fused
         {
         s4 g4^~ g2 | s4 g4^~ g2 |
         s4 g4^~ g2 | s4 g4^~ g2 | s4 g4^~ g2 |
        }
    %   \\
         \new Voice
        {
         \stemDown
         g4\rest g4 fis2 |
         g4\rest g4
         \once \override NoteColumn.force-hshift = #2.0      % to prove it works
here
         fis2 |
         g4\rest g4
         \once \override NoteColumn.force-hshift = #2.0       %  doesn't work 
here
          fis2 |
         g4\rest g4 fis2 |
         g4\rest g4 fis2 |
        }
     >>
}

voicefour = \relative c {
     c1 | c1 | c1 | c1 | c1
}

  guitar = << \voiceone \\ \voicetwo \\ \voicethree \\ \voicefour >>

#(set-global-staff-size 19)

\score { \new Staff \guitar }



_______________________________________________
lilypond-user mailing list
address@hidden
https://lists.gnu.org/mailman/listinfo/lilypond-user

Attachment: steve-voices.ly
Description: Text Data


reply via email to

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