set_empty ();
}
Interval_t (T m, T M) : Drul_array<T> (m,M)
- {}
+ {
+ }
Interval_t<T> &operator -= (T r) {
*this += -r;
return *this;
{
elem (LEFT) *= r;
elem (RIGHT) *= r;
- if (r < T (0)) {
- T t = elem (LEFT);
- elem (LEFT) = elem (RIGHT);
- elem (RIGHT) = t;
- }
+ if (r < T (0))
+ swap();
+
}
return *this;
}
elem (LEFT) = l;
elem (RIGHT) =r;
}
+private:
+
+ void swap ()
+ {
+ T t = elem (LEFT);
+ elem (LEFT) = elem (RIGHT);
+ elem (RIGHT) = t;
+ }
};
--- /dev/null
+\header {
+texidoc = "Downstem notes following a barline are
+printed with some extra space. This is an optical correction similar
+to juxtaposed stems.
+
+Accidentals after the barline get some space as well.
+"
+}
+
+sd = \property Voice.Stem \set #'direction = #-1
+su = \property Voice.Stem \set #'direction = #1
+\score { \notes\relative c''
+{
+
+%\property Staff.StaffSpacing \override #'stem-spacing-correction = #10
+%\property Staff.NoteSpacing \override #'stem-spacing-correction = #10
+
+\time 1/4 \sd c4 \su c4
+\sd c4 \su c4
+\sd f c,4 c'4 cis4 \stemUp c4
+}
+\paper { linewidth = -1. }
+}