[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Notes in voiceone corrupt voicethree after voice splitting?
From: |
steve |
Subject: |
Re: Notes in voiceone corrupt voicethree after voice splitting? |
Date: |
Tue, 24 Mar 2015 16:15:31 -0400 |
User-agent: |
SquirrelMail/1.4.19 |
Ok,
I reduced the problem to one bar, and the black harmonics..
Everything works except the notes are changed in voicethree and
voicesix to black harmonics. This is the simplest reduction I can produce...
http://gooeytar.com/projects/test/test.ly
http://gooeytar.com/projects/test/test.pdf
\version "2.18.2"
voiceFive = #(context-spec-music (make-voice-props-set 4) 'Voice)
voiceSix = #(context-spec-music (make-voice-props-set 5) 'Voice)
H = \once \override Staff.NoteHead.style = #'harmonic-black
voiceone = \relative c'' {
\clef "G_8"
\time 4/4
\key g \major
b4 b \H b b |
}
voicetwo = \relative c {
\set harmonicDots = ##t
e'8\rest d2..\harmonic |
}
voicethree = \relative c' {
\override NoteColumn.force-hshift = #0.0
s4 g4^~ g2 |
}
voicefour = \relative c {
c1 |
}
voicefive = \relative c {
}
voicesix = \relative c' {
g4\rest g4
\once \override NoteColumn.force-hshift = #1.0
fis2 |
}
guitar = << \voiceone \\ \voicetwo \\ \voicethree \\ \voicefour \\
\voicefive \\ \voicesix >>
#(set-global-staff-size 19)
\score { \new Staff \guitar }
>>
>> 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.
>
> I managed to improve it by adding voices, but the black harmonics
> still corrupt the other voice
>
> http://gooeytar.com/projects/test/test.ly
> http://gooeytar.com/projects/test/test.pdf
>
> voiceFive = #(context-spec-music (make-voice-props-set 4) 'Voice)
> voiceSix = #(context-spec-music (make-voice-props-set 4) 'Voice)
>
> and changing voice three
>
> voicethree = \relative c' {
> <<
> \new Voice
> {
> \voiceFive
> \override NoteColumn.force-hshift = #0.0
> s4 g4^~ g2 | s4 g4^~ g2 |
> s4 g4^~ g2 | s4 g4^~ g2 | s4 g4^~ g2 |
> }
> \\
> \new Voice
> {
> \voiceSix
> \stemDown
> g4\rest g4
> \once \override NoteColumn.force-hshift = #1.0
> fis2 |
> g4\rest g4
> \once \override NoteColumn.force-hshift = #1.0
> fis2 |
> g4\rest g4
> \once \override NoteColumn.force-hshift = #1.0
> fis2 |
> g4\rest g4
> \once \override NoteColumn.force-hshift = #1.0
> fis2 |
> g4\rest g4
> \once \override NoteColumn.force-hshift = #1.0
> fis2 |
> }
> >>
> }
>
>
> -steve
>
>>
>> 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??
>>
>> 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
>>
>
>