On 14/01/17 20:46, Noeck wrote:
> tupletBracketToSlur = {
> % Use slur-stencil
> \override TupletBracket.stencil = #ly:slur::print
> %% Use 'thickness from Slur
> \override TupletBracket.thickness = #1.2
> %% 'control-points need to be set
> \override TupletBracket.control-points =
> #(lambda (grob)
> (let* ((x-pos (ly:grob-property grob 'X-positions))
> (pos (ly:grob-property grob 'positions))
> (x-ln (interval-length x-pos))
> (dir (ly:grob-property grob 'direction))
> ;; read out the height of the TupletBracket, may be
> ;; negative!
> (height (- (cdr pos) (car pos)))
> ;; height-corr is introduced because sometimes the shape
> ;; of the slur needs to be adjusted.
> ;; It is used in the 2nd/3rd control-point.
> ;; The value of 0.3 is found by trial and error
> (height-corr (* 0.3 dir height))
> (edge-height (ly:grob-property grob 'edge-height
> '(0.7 . 0.7)))
> (pad 1.0))
> (list
> ;; first cp
> (cons
> (+ (car x-pos) 0.5)
> (- (+ (* dir pad) (+ (car pos) (* -1 dir
> (car edge-height))))
> (if (= dir -1)
> (if (> height 3)
> (/ dir 2.0)
> 0.0)
> (if (< height -3)
> (/ dir 2.0)
> 0.0))))
> ;; second cp
> (cons
> (+ (car x-pos) (* x-ln 1/4))
> (+ (* dir pad) (+ (car pos) (* dir (+ 0.5 height-corr)))))
> ;; third cp
> (cons
> (+ (car x-pos) (* x-ln 3/4))
> (+ (* dir pad) (+ (cdr pos) (* dir (- 0.5 height-corr)))))
> ;; fourth cp
> (cons
> (- (cdr x-pos) 0.5)
> (+ (* dir pad) (+ (cdr pos) (* -1 dir (cdr edge-height)))))
> )))
> \override TupletBracket.staff-padding = #'()
> #(define (invert-direction x) (if (eq? UP
> (ly:tuplet-bracket::calc-direction x)) DOWN UP))
> \override TupletBracket.direction = #invert-direction
> }I'm afraid that fails identically to the one Richard provided, please see my response to him. Thanks, Martin
signature.asc
Description: OpenPGP digital signature
_______________________________________________ lilypond-user mailing list [email protected] https://lists.gnu.org/mailman/listinfo/lilypond-user
