]> git.donarmstrong.com Git - lilypond.git/blobdiff - scm/output-lib.scm
Fix 1286.
[lilypond.git] / scm / output-lib.scm
index 025590e5bae0e001db8f089a96b811485faa1198..e76c46cdb18ddbfade41573a913de1b5dd889671 100644 (file)
   (ly:duration-log
    (ly:event-property (event-cause grob) 'duration)))
 
+(define-public (stem::length val)
+  (lambda (grob)
+    (let* ((d (ly:grob-property grob 'direction))
+           (ss (ly:staff-symbol-staff-space grob))
+           (beg (ly:stem::calc-stem-begin-position grob))
+           (y1 (* beg (* 0.5 ss)))
+           (y2 (* ((if (eqv? d DOWN) - +) beg val) (* 0.5 ss))))
+      (if (eqv? d DOWN)
+          (cons y2 y1)
+          (cons y1 y2)))))
+
 (define-public (note-head::calc-duration-log grob)
   (min 2
        (ly:duration-log