]> git.donarmstrong.com Git - lilypond.git/blobdiff - lily/slur-scoring.cc
Release: update news.
[lilypond.git] / lily / slur-scoring.cc
index d8c7655185fd082796e3b20461faad75cde719a7..543137dc486b368edea25cb69ac2eaf536512df8 100644 (file)
@@ -1,7 +1,7 @@
 /*
   This file is part of LilyPond, the GNU music typesetter.
 
-  Copyright (C) 1996--2011 Han-Wen Nienhuys <hanwen@xs4all.nl>
+  Copyright (C) 1996--2012 Han-Wen Nienhuys <hanwen@xs4all.nl>
   Jan Nieuwenhuizen <janneke@gnu.org>
 
   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_;