CVSROOT: /cvsroot/lilypond
Module name: lilypond
Branch:
Changes by: Han-Wen Nienhuys <[EMAIL PROTECTED]> 05/08/24 20:36:03
Modified files:
. : ChangeLog
lily : beam.cc
Log message:
(print): fix X start/end points of isolated
beamlets.
CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/ChangeLog.diff?tr1=1.4076&tr2=1.4077&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/lily/beam.cc.diff?tr1=1.310&tr2=1.311&r1=text&r2=text
Patches:
Index: lilypond/ChangeLog
diff -u lilypond/ChangeLog:1.4076 lilypond/ChangeLog:1.4077
--- lilypond/ChangeLog:1.4076 Wed Aug 24 19:56:08 2005
+++ lilypond/ChangeLog Wed Aug 24 20:36:03 2005
@@ -1,5 +1,8 @@
2005-08-24 Han-Wen Nienhuys <[EMAIL PROTECTED]>
+ * lily/beam.cc (print): fix X start/end points of isolated
+ beamlets.
+
* scm/output-ps.scm (grob-cause): escape spaces in URLs.
* lily/multi-measure-rest.cc (set_text_rods): new function.
Index: lilypond/lily/beam.cc
diff -u lilypond/lily/beam.cc:1.310 lilypond/lily/beam.cc:1.311
--- lilypond/lily/beam.cc:1.310 Sat Aug 13 21:35:23 2005
+++ lilypond/lily/beam.cc Wed Aug 24 20:36:03 2005
@@ -280,8 +280,10 @@
}
/*
- TODO: should not make beams per stem, but per Y-level; probably when
- someone wants to sponsor feathered beaming.
+ I really enjoy spaghetti, but spaghetti should be kept on a plate
+ with a little garlic and olive oil. This is too much.
+
+ rewrite-me
*/
MAKE_SCHEME_CALLBACK (Beam, print, 1);
SCM
@@ -454,19 +456,25 @@
- last_xposn
+ break_overshoot[RIGHT];
+ rw += stem_width / 2;
+ lw += last_stem_width / 2;
+
Stencil rhalf = Lookup::beam (slope, rw, thick, blot);
Stencil lhalf = Lookup::beam (slope, lw, thick, blot);
for (int j = lfliebertjes.size (); j--;)
{
Stencil b (lhalf);
- b.translate_axis (last_xposn - x0, X_AXIS);
- b.translate_axis (slope * (last_xposn - x0) + bdy *
lfliebertjes[j], Y_AXIS);
+ b.translate_axis (last_xposn - x0 - last_stem_width /2,
+ X_AXIS);
+ b.translate_axis (slope * (last_xposn - x0)
+ + bdy * lfliebertjes[j],
+ Y_AXIS);
the_beam.add_stencil (b);
}
for (int j = rfliebertjes.size (); j--;)
{
Stencil b (rhalf);
- b.translate_axis (xposn - x0 - rw, X_AXIS);
+ b.translate_axis (xposn - x0 - rw + stem_width / 2, X_AXIS);
b.translate_axis (slope * (xposn - x0 - rw)
+ bdy * rfliebertjes[j], Y_AXIS);
the_beam.add_stencil (b);
@@ -478,13 +486,14 @@
last_beaming = this_beaming;
}
- the_beam.translate_axis (x0 - me->relative_coordinate (xcommon, X_AXIS),
X_AXIS);
+ the_beam.translate_axis (x0 - me->relative_coordinate (xcommon, X_AXIS),
+ X_AXIS);
the_beam.translate_axis (pos[LEFT], Y_AXIS);
#if (DEBUG_QUANTING)
SCM quant_score = me->get_property ("quant-score");
- if (to_boolean (me->get_layout ()->lookup_variable (ly_symbol2scm
("debug-beam-quanting")))
- && scm_is_string (quant_score))
+ SCM debug = me->get_layout ()->lookup_variable (ly_symbol2scm
("debug-beam-quanting"));
+ if (to_boolean (debug) && scm_is_string (quant_score))
{
/*
_______________________________________________
Lilypond-cvs mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/lilypond-cvs