Autor Thema: tweak-Befehl als scheme-Ausdruck  (Gelesen 1612 mal)

harm6

  • Member
tweak-Befehl als scheme-Ausdruck
« am: Dienstag, 5. April 2011, 00:49 »
Hallo,

ich versuche den tweak-Befehl aus

\version "2.12.3"

#(define pi  3.141592654)

\relative c'' {
  \set fingeringOrientations = #'(left)
  \displayMusic
  <c-5
  -\tweak #'text #(markup  #:line (" "
          #:raise -1.8
          #:pad-x 0.5
          #:draw-line (cons 1.5 (* 1.5 (tan (* (* 2 pi) (/ 24 360)))))))
-5>
}

in einen scheme-Ausdruck zu übersetzen.

(Der car-Wert in draw-line ist die übliche horizontale Ausdehnung hier: 1.5
Als cdr-Wert möchte ich den Winkel zw. X-Achse und Hypotenuse haben hier: 24°. Deshalb die aufwendige Umrechnung erst ins Bogenmaß und dann die Bestimmung des y-Wert mittels der umgeformten tangens-Gleichung.)


Mit Anleitung durch http://lilypond.org/doc/v2.12/Documentation/user/lilypond/Using-Scheme-code-instead-of-_005ctweak#Using-Scheme-code-instead-of-_005ctweak habe ich

\version "2.12.3"

#(define pi  3.141592654)

E = #(let ((m (make-music 'FingeringEvent
                          'digit 5 )))
       (set! (ly:music-property m 'tweaks)
             (acons list (list 'text
              line-markup
              (list (markup #:line
              (#:simple " "
              #:raise -1.8
              (#:pad-x 0.5
              (#:draw-line (cons 1.5  (* 1.5 (tan (* (* 2 pi) (/ 24 360)))))))))))
                    (ly:music-property m 'tweaks)))
       m)

\relative c'' {
       
  \set fingeringOrientations = #'(left)
  \displayMusic         

  <c-5-\E>
}

erstellt, was fast richtig ist wie \displayMusic  zeigt, aber noch ohne die gewünschte Linie.

Nun komme ich nicht weiter.

Weiß jemand Rat?

Gruß,
  Harm

harm6

  • Member
Re:tweak-Befehl als scheme-Ausdruck
« Antwort #1 am: Montag, 11. April 2011, 01:23 »
Nach einem längeren Lernprozeß habe ich es hinbekommen.
Richtig ist:

\version "2.12.3"

#(define pi  3.141592654)

E = #(let ((m (make-music 'FingeringEvent
                          'digit 5 )))
       (set! (ly:music-property m 'tweaks)
             (list (list 'text
              line-markup
              (list (markup
            #:line
            (#:simple
            " "
            #:raise
            -1.8
                (#:pad-x
              0.5
            (#:draw-line (cons 1.5 (* 1.5 (tan (* (* 2 pi) (/ 24 360)))))))))))))
       m)

\relative c'' {
       
  \set fingeringOrientations = #'(left)     
<c-5-\E>
}