lilypond-user
[Top][All Lists]
Advanced

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

Re: Unterminated tie


From: David Sumbler
Subject: Re: Unterminated tie
Date: Sun, 13 Sep 2015 14:32:08 +0100

On Sun, 2015-09-13 at 00:46 +0200, Thomas Morley wrote:
> 2015-09-13 0:11 GMT+02:00 David Sumbler <address@hidden>:
> > I have yet another problem related to repeats.  The piece I am setting
> > has one instrument which is tied from the last note in the
> > first-time-bar to the note at the start of the repeat.  (Moving the
> > repeats does not help, because there are a lot of overlapping ties.)
> >
> > I tried to produce an unterminated tie in the last bar of the first
> > alternative by having a second, invisible voice with two tied notes in
> > the bar:
> >
> > \version "2.19.24"
> >
> > { g'1 ~|
> >   \repeat volta 2 { g'1 | d'1 | }
> >   \alternative {
> >       {
> >           << { g'1 } \\ { \override Dots.stencil = ##f
> >                           \override Stem.stencil = ##f
> >                           \override Flag.stencil = ##f
> >                           g'2... ~ g'16
> >                           \revert Flag.stencil
> >                           \revert Stem.stencil
> >                           \revert Dots.stencil
> >                       } >> |
> >       } {
> >           a'1 |
> >       } }
> >   g'1 |
> > }
> >
> > So far, so good, but the note heads in the bar are still there of
> > course.  But when I add "\override NoteHead.stencil = ##f" the compiler
> > gives up with the message:
> >
> > Drawing systems...lilypond:
> > /home/gub/NewGub/gub/target/linux-64/src/lilypond-git.sv.gnu.org--lilypond.git-release-unstable/lily/skyline.cc:119:
> > void Building::precompute(Real, Real, Real, Real): Assertion `!isinf
> > (slope_) && !isnan (slope_)' failed.
> >
> > Why does this happen?  And is there perhaps a simpler way of producing
> > my unterminated tie?
> 
> If you set NoteHead.stencil #f, then the Tie has nothing to attach to.
> Use point-stencil instead.
> Scaling durations will save much code:
> 
> \version "2.19.24"
> 
> {
>   g'1 ~|
>   \repeat volta 2 { g'1 | d'1 | }
>   \alternative {
>       {
>         g'1*15/16~
>         \once \override Stem.stencil = #point-stencil
>         \once \override Flag.stencil = #point-stencil
>         \once \override NoteHead.stencil = #point-stencil
>         \once \override Tie.minimum-length = 10
>         g'16
>       }
>       { a'1 | }
>   }
>   g'1 |
> }
> 
> 
> Other possibility would be to use \repeatTie and use \shape on it.
> I doubt it would be the better one ...
> 
> Cheers,
>   Harm

That's brilliant - thank you so much.

I wasn't aware of point-stencil (or had forgotten about it).

The scaling of durations is a neat trick too - I hadn't thought of it.

I find that the override of the tie-length is unnecessary.

David




reply via email to

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