lilypond-user
[Top][All Lists]
Advanced

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

Re: Parenthesize bass figures as a whole


From: Thomas Morley
Subject: Re: Parenthesize bass figures as a whole
Date: Tue, 25 Apr 2017 23:50:58 +0200

2017-04-25 12:45 GMT+02:00 Lukas-Fabian Moser <address@hidden>:
> Hello,
>
> I hope I don't mess up completely, this being my first posting to this list
> (which I nevertheless often consulted before).

You know you can insert brackets doing what you want?

To have them look like rounded paranthesis is more difficult.
Currently I've only an ugly hack for you (see below), mayne someone
comes up with a better idea.

hack =
\override BassFigureBracket.stencil =
  #(lambda (grob)
     (let* ((default-stil (ly:enclosing-bracket::print grob))
            (x-ext (ly:stencil-extent default-stil X))
            (y-ext (ly:stencil-extent default-stil Y))
            (thick (ly:grob-property grob 'thickness 0.1))
            (height-limit 0.7)
            (ratio 0.15)
            (padding -0.3)
            ;; taken from bezier-bow.cc
            (F0_1
              (lambda (x) (* (/ 2 PI) (atan (* PI x 0.5)))))
            (bow-height
              (lambda (w h_inf r_0) (F0_1 (* (/ (* w r_0) h_inf) h_inf))))
            ;; length from bow start to end
            (lngth (abs (- (cdr y-ext) (car y-ext))))
            (angularity 0.5)
            (height (bow-height lngth height-limit ratio)))
       (parenthesize-stencil
         (make-transparent-box-stencil x-ext y-ext)
         thick
         height
         angularity
         padding)))

tst-figures =
\figuremode {
  <[2]>
  <[2 4]>
  <[2 4 5]>
  <[2 4 5 7]>
  <[2 4 5 7 8]>
  <[2] [4 5 7 8]>
  <[2 4] [5 7 8]>
}

\new FiguredBass {
  \tst-figures
  \hack
  \tst-figures
}

Cheers,
  Harm



reply via email to

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