lilypond-user
[Top][All Lists]
Advanced

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

Re: Dilemma with spacer rest and cross-staff polyphony.


From: Xavier Scheuer
Subject: Re: Dilemma with spacer rest and cross-staff polyphony.
Date: Sun, 19 Jun 2011 11:00:02 +0200

On 19 June 2011 07:01, Hwaen Ch'uqi <address@hidden> wrote:
>
> Greetings:
>     As you will see from the attached pdf file, the center two
> measures differ from the intention of the code shown below. The upper
> voice is treated as if it is in bass clef. I would be grateful for any
> advice. Has it possibly something to do with the interaction of the
> preceding spacer rests with the corresponding cross-staff activity?
> Many thanks.

Hi,

That's because you use a  << { ... } \\ { ... } >>  construct, which
create implicitely voices called respectively "one" and "two".

Since you use the same type of construct in the lower Staff (and use
this construct there at first), the voices "one" and "two" that you
want in the upper Staff are considered as the same as the ones in the
lower Staff and are then printed in the lower Staff since you did not
mention some  \change Staff  for these voices "one" and "two".

The best solution would be to simply explicit the voices!

I have also rearranged the voices (the whole "changing Staff" voice is
the one called "medium") and used variables.  Here is a proposal:

\version "2.12.3"

\paper{
  #(set-paper-size "letter")
}

upper = \relative c'' {  % XS: you should mention a start pitch for  \relative !
  s1*2
  d4. e!8 fis4 gis8 a!
  b4 e, s2
}

medium = \relative c {
  \change Staff = "down" \stemUp
  dis8*2/3 cis' \change Staff = "up" \stemDown fis eis' cis fis
  \change Staff = "down" \stemUp a,, bis \change Staff = "up" \stemDown fis'
  a' bis, gis'
  \change Staff = "down" \stemUp gis,, bis \change Staff = up
  \stemDown a' fis' gis, eis' \change Staff = "down" \stemUp gis,, cis
  \change Staff = "up" \stemDown fis dis' eis, cis'
  cis,8*2/3 \change Staff = "down" \stemUp fis, ais b cis d \change
  Staff = "up" \stemDown e \change Staff = "down" \stemUp eis fis \change
  Staff = "up" \stemDown d' e cis
  d e cis cis d b b dis, e e \change Staff = "down" \stemUp dis, e
  d!8*2/3 b' \change Staff = "up" \stemDown a' a' b, g' \change
  Staff = "down" \stemUp d,, b' \change Staff = "up" \stemDown g' g' a,
  fis'!
  \change Staff = "down" \stemUp b,,, g' \change Staff = "up" \stemDown
  fis' fis' g, e' \change Staff = "down" \stemUp a,,, g' \change Staff =
  "up" \stemDown a b' e, a
}

lowerUp = \relative c' {
  s1*3
  b4 cis d2
}

lower = \relative c {
  a2 gis
  cis, cis'4 bis
  b2 ais
  <a! f'> <gis e'>
  fis! e
  d cis
}

\score {
  \new PianoStaff <<
    \new Staff = "up" {
      \clef treble
      \key a \major
      \time 4/4
      <<
        \new Voice = "upper" {
          \voiceOne  % XS: stems, slurs, etc. UP!
          \upper
        }
        \new Voice = "medium" {  % XS: this is the voice changing Staff
          \medium
        }
      >>
    }
    \new Staff = "down" {
      \clef bass
      \key a \major
      \time 4/4
      <<
        \new Voice = "lowerUp" {
          \voiceOne
          \lowerUp
        }
        \new Voice = "lower" {
          \voiceTwo  % XS: stems, slurs, etc. DOWN!
          \lower
        }
      >>
    }
  >>
  \layout{
    \context {
      \Score
      \remove "Bar_number_engraver"
    }
  }
}


Cheers,
Xavier

-- 
Xavier Scheuer <address@hidden>



reply via email to

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