]> git.donarmstrong.com Git - lilypond.git/commitdiff
* input/regression/system-overstrike.ly: new file.
authorHan-Wen Nienhuys <hanwen@xs4all.nl>
Sun, 12 Sep 2004 08:55:24 +0000 (08:55 +0000)
committerHan-Wen Nienhuys <hanwen@xs4all.nl>
Sun, 12 Sep 2004 08:55:24 +0000 (08:55 +0000)
* scm/page-layout.scm (ly:optimal-page-breaks): add
betweensystempadding also to fixed distance for the spring.

This fixes: morgenlied.ly and input/regression/beam-concave.ly

ChangeLog
input/regression/system-overstrike.ly [new file with mode: 0644]
scm/page-layout.scm

index c4056bc0f8fa284797a5d52bb259a6a84c8b15b9..896358812dadcaa5a426ddf8dbb6cac35ab41cdf 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,10 @@
 2004-09-12  Han-Wen Nienhuys   <hanwen@xs4all.nl>
 
+       * input/regression/system-overstrike.ly: new file.
+
+       * scm/page-layout.scm (ly:optimal-page-breaks): add
+       betweensystempadding also to fixed distance for the spring.
        * scm/define-grobs.scm (all-grob-descriptions): fix order of
        key-cancellation.
 
diff --git a/input/regression/system-overstrike.ly b/input/regression/system-overstrike.ly
new file mode 100644 (file)
index 0000000..0537736
--- /dev/null
@@ -0,0 +1,18 @@
+\version "2.3.16"
+\header { texidoc = "By setting betweensystempadding to a negative
+value, it is possible to eliminate the anti-collision constraints.
+Then  setting @code{betweensystemspace} to a low (nonzero) value,
+print  systems in overstrike. "
+}
+
+\bookpaper {
+    raggedbottom =##t
+    betweensystempadding = - 4\cm
+    betweensystemspace = 3\mm
+}
+
+{
+    c1 \break
+    c'''1
+}
+
index 296444317b289d3554f62d51e5b277104a2b5402..3912db064bf4762de8c27510d5ed0f22b45b3a2a 100644 (file)
@@ -273,13 +273,15 @@ is what have collected so far, and has ascending page numbers."
                   (-  (car (vector-ref real-extents (1- no-systems))))
                   ))
 
+        (fixed-dist (ly:output-def-lookup bookpaper 'betweensystempadding))
         (calc-spring
          (lambda (idx)
            (let*
                ((this-system-ext (vector-ref staff-extents idx))
                 (next-system-ext (vector-ref staff-extents (1+ idx)))
-                (fixed (- (cdr next-system-ext)
-                          (car this-system-ext)))
+                (fixed (max 0  (- (+ (cdr next-system-ext)
+                                     fixed-dist)
+                                  (car this-system-ext))))
                 (ideal (+ inter-system-space fixed))
                 (hooke (/ 1 (- ideal fixed)))
                 )
@@ -287,16 +289,15 @@ is what have collected so far, and has ascending page numbers."
            ))
 
         (springs (map calc-spring (iota (1- no-systems))))
-        (fixed-dist (ly:output-def-lookup bookpaper 'betweensystempadding))
         (calc-rod
          (lambda (idx)
            (let*
                ((this-system-ext (vector-ref real-extents idx))
                 (next-system-ext (vector-ref real-extents (1+ idx)))
-                (distance (- (+ (cdr next-system-ext)
+                (distance (max  (- (+ (cdr next-system-ext)
                                 fixed-dist)
-                             (car this-system-ext)
-                             ))
+                                   (car this-system-ext)
+                                   ) 0)) 
                 (entry (list idx (1+ idx) distance)))
              entry)))
         (rods (map calc-rod (iota (1- no-systems))))
@@ -314,13 +315,13 @@ is what have collected so far, and has ascending page numbers."
               (cdr  result)))
         )
 
-     (if #f ;; debug.
+     (if #t ;; debug.
         (begin
           (display (list "\n# systems: " no-systems
                          "\nreal-ext" real-extents "\nstaff-ext" staff-extents
                          "\ninterscore" inter-system-space
                          "\nspace-letf" space-left
-                         "\npage empty" page-very-empty
+                         "\npage empty" page-very-empty?
                          "\nspring,rod" springs rods
                          "\ntopskip " topskip
                          " space " space