]> git.donarmstrong.com Git - lilypond.git/commitdiff
*** empty log message ***
authorHan-Wen Nienhuys <hanwen@xs4all.nl>
Sun, 19 Feb 2006 12:04:42 +0000 (12:04 +0000)
committerHan-Wen Nienhuys <hanwen@xs4all.nl>
Sun, 19 Feb 2006 12:04:42 +0000 (12:04 +0000)
ChangeLog
scm/lily-library.scm
scm/stencil.scm

index 81abed7292f092ee0902c98742a5780e9b09921e..34a45b14a03b7c3e1246f3f30d790e8c1c82d587 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -7,6 +7,10 @@
 
 2006-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
 
+       * scm/stencil.scm (annotate-y-interval): use it.
+
+       * scm/lily-library.scm (interval-sane?): new function.
+
        * buildscripts/mf-to-table.py (Char_metric.__init__): remove
        tfm_checksum stuff.
 
index 3ad2d2764b865c17241e2d568315c5c7e8dee2ca..d3e75530a3e99678f4ca2f86709554e32065214d 100644 (file)
@@ -316,6 +316,9 @@ found."
       (cons (cons (car coords) (cadr coords))
            (ly:list->offsets accum (cddr coords)))))
 
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+;; intervals
+
 (define-public (interval-length x)
   "Length of the number-pair X, when an interval"
   (max 0 (- (cdr x) (car x))))
@@ -350,6 +353,16 @@ found."
    (cons (min (car i1) (car i2))
         (max (cdr i1) (cdr i2))))
 
+(define-public (interval-sane? i)
+  (not (or  (nan? (car i))
+           (inf? (car i))
+           (nan? (cdr i))
+           (inf? (cdr i)))))
+
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+;;
+
+
 (define-public (write-me message x)
   "Return X.  Display MESSAGE and write X.  Handy for debugging,
 possibly turned off."
index 1bfa43a74557f5e897daa2794c4fa445c97eb31e..58b19346186c5654af29992d43c69d23b36a4254 100644 (file)
@@ -177,7 +177,7 @@ encloses the contents.
 ;; spacing variables 
 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
 
-(define-public (annotate-y-interval layout name extent is-length?)
+(define-public (annotate-y-interval layout name extent is-length)
   ;; do something sensible for 0,0 intervals. 
   (set! extent (interval-widen extent 0.001))
   (let*
@@ -192,10 +192,15 @@ encloses the contents.
                      (make-whiteout-markup (make-simple-markup name))
                      (make-whiteout-markup
                       (make-simple-markup
-                       (if is-length?
-                           (format "~$" (interval-length extent))
-                           (format "(~$,~$)" (car extent)
-                                   (cdr extent)))))))))
+                       (begin
+                         (display extent)
+                       (cond
+                        ((interval-empty? extent) "empty")
+                        ((not (interval-sane? extent)) "insane")
+                        (is-length (format "~$" (interval-length extent)))
+                        (else
+                         (format "(~$,~$)" (car extent)
+                                   (cdr extent)))))))))))
        (arrows
        (ly:stencil-translate-axis 
         (dimension-arrows (cons 0 (interval-length extent)))