Haltebogen nach Polyphonie

Begonnen von chf, Sonntag, 15. April 2018, 16:49

« vorheriges - nächstes »

chf


\version "2.18.2"
\relative c''
{<<{<g b>2}\\{c,~}>> <c g' c> } 


Liebe Freunde,

immer wieder stoße ich auf ein Problem, für das ich meistens einen Trick finde, aber diesmal klappt es nicht:
Aus der Mehrstimmigkeit entwickelt sich ein Akkord, der  dann weiter gehalten werden soll. die Klammern verhindern die Haltebogen.
Könnt ihr helfen?

Gruß chf

harm6

Hallo,

meinst Du:


\version "2.18.2"

\relative c'' {
  <<
    { <g b>2 }
    \\
    { c,~ \oneVoice }
  >>
  \context Voice = "2"
  <c g' c>



?

Gruß,
  Harm

chf

#2
Hallo Harm, da habe ich wieder geschusselt - dein  ? ist berechtigt! 
zweiter Anlauf, jetzt mit dem konkreten Beispiel:


\version "2.18.2"
\relative c' {
<<{\override Tie.minimum-length = #5.5
   \set tieWaitForNote = ##t
   es16[ ~ f ~ g ~ a ]_ ~
   \once \hideNotes <es f g a>4 ~}\\{s4 \stemUp bes'~}>>
<es, f g a bes>2
}


Zur Verdeutlichung ein Ausschnitt aus dem Original

harm6

#3
Warum nicht:


\version "2.18.2"

\relative c' {
\key f \major
    \override Tie.minimum-length = #5.5
    \set tieWaitForNote = ##t
    es16[~ f~ g~ a]~ \once \stemUp bes4~
    <es, f g a bes>2
}

Sieht in meinen Augen besser aus als die Handschrift.

Falls Du den vierten Haltebogen wirklich aufwärts haben willst, so muß man die Ties in der TieColumn tweaken. Ist leider aufwendig:


\version "2.18.2"

shapeTieColumn =
#(define-music-function (parser location all-offsets) (list?)
"Limitation: Tweaking line-breaking Ties is not supported!"
  (define (offset-control-points coords offsets)
    (if (null? offsets)
        coords
        (map coord-translate coords offsets)))
       
  #{
    \override TieColumn.after-line-breaking =
      #(lambda (grob)
        (let* ((ties (ly:grob-array->list (ly:grob-object grob 'ties)))
           (cps-list
             (map
               (lambda (tie) (ly:tie::calc-control-points tie))
               ties))
           (moved-cps-list
             (map
               (lambda (cps offs)(offset-control-points cps offs))
               cps-list
               all-offsets)))
               
      (for-each
        (lambda (tie moved) (ly:grob-set-property! tie 'control-points moved))
        ties
    moved-cps-list)))
  #})
         
\relative c' {
\key f \major
    \override Tie.minimum-length = #5.5
    \set tieWaitForNote = ##t
    es16[~ f~ g~ a] ~ \once \stemUp bes4~
    \once \shapeTieColumn
      #'(
         ()
         ()
         ()
         ((1 . 3)(1 . 5)(1 . 5)(1 . 3))
         ())
    <es, f g a bes>2
}


HTH,
  Harm

EDIT dritten <-> vierten

chf