1 %% DO NOT EDIT this file manually; it is automatically
2 %% generated from LSR http://lsr.di.unimi.it
3 %% Make any changes in LSR itself, or in Documentation/snippets/new/ ,
4 %% and then run scripts/auxiliar/makelsr.py
6 %% This file is in the public domain.
10 lsrtags = "contemporary-notation, scheme-language, staff-notation, tweaks-and-overrides"
13 The function takes the default @code{Tie.stencil} as an argument,
14 calculating the result relying on the extents of this default. Further
15 tweaking is possible by overriding @code{Tie.details.height-limit} or
16 with @code{\\shape}. It's also possible to change the custom-definition
20 doctitle = "Flat Ties"
23 %% http://lsr.di.unimi.it/LSR/Item?id=1031
25 #(define ((flared-tie coords) grob)
27 (define (pair-to-list pair)
28 (list (car pair) (cdr pair)))
30 (define (normalize-coords goods x y dir)
33 ;(coord-scale coord (cons x (* y dir)))
34 (cons (* x (car coord)) (* y dir (cdr coord))))
37 (define (my-c-p-s points thick)
38 (make-connected-path-stencil
46 ;; outer let to trigger suicide
47 (let ((sten (ly:tie::print grob)))
48 (if (grob::is-live? grob)
49 (let* ((layout (ly:grob-layout grob))
50 (line-thickness (ly:output-def-lookup layout 'line-thickness))
51 (thickness (ly:grob-property grob 'thickness 0.1))
52 (used-thick (* line-thickness thickness))
53 (dir (ly:grob-property grob 'direction))
54 (xex (ly:stencil-extent sten X))
55 (yex (ly:stencil-extent sten Y))
56 (lenx (interval-length xex))
57 (leny (interval-length yex))
59 (ytrans (if (> dir 0)(car yex) (cdr yex)))
62 (normalize-coords coords lenx (* leny 2) dir))))
65 (my-c-p-s uplist used-thick)
66 (cons xtrans ytrans)))
70 (flared-tie '((0 . 0)(0.1 . 0.2) (0.9 . 0.2) (1.0 . 0.0))))
75 \override Tie.stencil = #flare-tie
79 \paper { ragged-right = ##f }
83 \override Tie.height-limit = 4
86 <a,, c e a c e a c e>~ q
91 \once \override Tie.details.height-limit = 14
97 \once \override Tie.details.height-limit = 0.5
103 \shape #'((0 . 0) (0 . 0.4) (0 . 0.4) (0 . 0)) Tie
109 \once \override Tie.stencil =
110 #(flared-tie '((0 . 0)(0.1 . 0.4) (0.9 . 0.4) (1.0 . 0.0)))
114 \once \override Tie.stencil =
115 #(flared-tie '((0 . 0)(0.06 . 0.1) (0.94 . 0.1) (1.0 . 0.0)))