X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=lily%2Fslur-scoring.cc;h=543137dc486b368edea25cb69ac2eaf536512df8;hb=505fa5b0ee7bf06bcefea05a3854c31e63e991ba;hp=d8c7655185fd082796e3b20461faad75cde719a7;hpb=f581e0199e1d303c18aa86650350b4678313a461;p=lilypond.git diff --git a/lily/slur-scoring.cc b/lily/slur-scoring.cc index d8c7655185..543137dc48 100644 --- a/lily/slur-scoring.cc +++ b/lily/slur-scoring.cc @@ -1,7 +1,7 @@ /* This file is part of LilyPond, the GNU music typesetter. - Copyright (C) 1996--2011 Han-Wen Nienhuys + Copyright (C) 1996--2012 Han-Wen Nienhuys Jan Nieuwenhuizen LilyPond is free software: you can redistribute it and/or modify @@ -26,6 +26,7 @@ #include "beam.hh" #include "clef.hh" #include "directional-element-interface.hh" +#include "dots.hh" #include "libc-extension.hh" #include "main.hh" #include "misc.hh" @@ -267,7 +268,7 @@ Slur_score_state::fill (Grob *me) extra_encompass_infos_ = get_extra_encompass_infos (); - Interval additional_ys (0.0,0.0); + Interval additional_ys (0.0, 0.0); for (vsize i = 0; i < extra_encompass_infos_.size (); i++) { @@ -293,10 +294,10 @@ Slur_score_state::fill (Grob *me) (dir_ * (parameters_.encompass_object_range_overshoot_ + (y_place - encompass_place) - * (normalize (extra_encompass_infos_[i].extents_[X_AXIS].center (), - base_attachments_[RIGHT][X_AXIS], - base_attachments_[LEFT][X_AXIS]) - + (dir_ == LEFT ? 0 : -1))))); + * (normalize (extra_encompass_infos_[i].extents_[X_AXIS].center (), + base_attachments_[RIGHT][X_AXIS], + base_attachments_[LEFT][X_AXIS]) + + (dir_ == LEFT ? 0 : -1))))); while (flip (&d) != LEFT); } } @@ -806,6 +807,8 @@ Slur_score_state::get_extra_encompass_infos () const Grob *g = encompasses [i]; Interval xe = g->extent (common_[X_AXIS], X_AXIS); Interval ye = g->extent (common_[Y_AXIS], Y_AXIS); + if (Dots::has_interface (g)) + ye.widen (0.2); Real xp = 0.0; Real penalty = parameters_.extra_object_collision_penalty_;