]> git.donarmstrong.com Git - lilypond.git/commitdiff
* input/regression/tuplet-slope.ly: add a test case.
authorHan-Wen Nienhuys <hanwen@xs4all.nl>
Mon, 15 Aug 2005 18:47:48 +0000 (18:47 +0000)
committerHan-Wen Nienhuys <hanwen@xs4all.nl>
Mon, 15 Aug 2005 18:47:48 +0000 (18:47 +0000)
* lily/tuplet-bracket.cc (calc_position_and_height): revert
erroneous fix. Add spanner bounds to offset array with relative X
positions.

ChangeLog
input/regression/tuplet-slope.ly
lily/tuplet-bracket.cc

index 7f8807dae1693b910507f07767b71705da4d574e..9d720f1d8116ee971bbcfd20881f1688f2100c1e 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,11 @@
 2005-08-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
 
+       * input/regression/tuplet-slope.ly: add a test case.
+
+       * lily/tuplet-bracket.cc (calc_position_and_height): revert
+       erroneous fix. Add spanner bounds to offset array with relative X
+       positions.
+
        * ly/engraver-init.ly: add Rest_engraver only once.
 
        * scm/define-music-display-methods.scm (KeyChangeEvent): only do
index cf56eebd8199b29c8434c86d3af68bb7ce6ce97d..c44b2bc7eb92dc540f7b3e8d99ead0623342ae10 100644 (file)
@@ -11,19 +11,24 @@ The bracket direction is determined by the dominating stem direction.
 
 }
 
+\layout {
+  raggedright = ##t 
+}
 
 \version "2.6.0"
 
-\score {
-     \relative c' {
-       \times 4/5 { a'4 as g fis f }
-       \times 4/5 { fis4 e es d des }
-       \times 4/5 { fis,4 e es d des }
-       \times 4/5 { bes'''4 bes,, b c cis }
-       \times 4/5 { a''4 b b c cis }
-    }
-    \layout {
-       raggedright = ##t 
-    }
+\new Voice {
+  \relative c'' {
+    \times 2/3 { c4 d e}
+    \times 2/3 { c4 d e}
+  }
+  
+  \relative c' {
+    \times 4/5 { a'4 as g fis f }
+    \times 4/5 { fis4 e es d des }
+    \times 4/5 { fis,4 e es d des }
+    \times 4/5 { bes'''4 bes,, b c cis }
+    \times 4/5 { a''4 b b c cis }
+  }
 }
 
index df5b9f30964af62ae2e83a2f719cc5df03cc1e06..faf1b7daa7457c631c4150855cf423c19de3ffa0 100644 (file)
@@ -443,14 +443,9 @@ Tuplet_bracket::calc_position_and_height (Grob *me_grob, Real *offset, Real *dy)
   Real x0 = robust_relative_extent (lgr, commonx, X_AXIS)[LEFT];
   Real x1 = robust_relative_extent (rgr, commonx, X_AXIS)[RIGHT];
 
-  /*
-    offset
-  */
-  Real factor = columns.size () > 1 ? 1 / (x1 - x0) : 1.0;
-
   Array<Offset> points;
-  points.push (Offset (x0, staff[dir]));
-  points.push (Offset (x1, staff[dir]));
+  points.push (Offset (x0 - x0, staff[dir]));
+  points.push (Offset (x1 - x0, staff[dir]));
 
   for (int i = 0; i < columns.size (); i++)
     {
@@ -502,13 +497,14 @@ Tuplet_bracket::calc_position_and_height (Grob *me_grob, Real *offset, Real *dy)
       while (flip (&d) != LEFT);
     }
 
+  Real factor = (columns.size () > 1) ? 1 / (x1 - x0) : 1.0;
   for (int i = 0; i < points.size (); i++)
     {
       Real x = points[i][X_AXIS];
-      Real tuplety = *dy * x * factor;
+      Real tuplety = (*dy) * x * factor;
 
       if (points[i][Y_AXIS] * dir > (*offset + tuplety) * dir)
-       *offset = points[i][Y_AXIS] - tuplety * sign (*dy) * dir;
+       *offset = points[i][Y_AXIS] - tuplety;
     }
 
   *offset += scm_to_double (me->get_property ("padding")) * dir;