[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
TrillPitch* whiteout bug
From: |
Trevor Bača |
Subject: |
TrillPitch* whiteout bug |
Date: |
Thu, 27 Jun 2024 17:04:36 +0200 |
Hi,
Here is a two-staff example with a bug relating to the way that whiteout
works with TrillPitchAccidental, TrillPitchHead, TrilPitchParentheses; the
parenthesized pitched-trill fails to print, leaving behind some type of
visual artifact:
%%% PITCHED-TRILL WHITEOUT BUG %%%
\version "2.25.16"
\language "english"
A = {
% measure 1
c''4
c''16
c''16
c''16
c''16
c''16
c''16
c''8
% measure 2
c''8
c''16
c''16
c''16
c''16
c''16
c''16
\once \override Beam.grow-direction = #right
c''16 * 29952/5120
[
c''16 * 16128/5120
c''16 * 13312/5120
c''16 * 11776/5120
c''16 * 10752/5120
]
}
B = {
% measure 1
\time 3/4
\set Score.proportionalNotationDuration = #(ly:make-moment 1/32)
\override TrillPitchAccidental.layer = 2
\override TrillPitchHead.layer = 2
\override TrillPitchParentheses.layer = 2
\clef "bass"
r16
\once \override TrillPitchAccidental.whiteout = ##t
\once \override TrillPitchHead.whiteout = ##t
\once \override TrillPitchParentheses.whiteout = ##t
\pitchedTrill
cs4..
\glissando
\startTrillSpan ds
\afterGrace
e4
{
f8
\glissando
}
% measure 2
\time 6/4
d16
r8.
\stopTrillSpan
r1
r4
}
\new Score
<<
<<
\new Staff { \A }
\new Staff { \B }
>>
>>
%%% END %%%
[image: pitched-trill-whiteout-bug.png]
What causes the bug to go away?
Many things, apparently.
Removing the upper staff causes the bug to go away:
%%% OK WITHOUT UPPER STAFF %%%
\version "2.25.16"
\language "english"
A = {
% measure 1
c''4
c''16
c''16
c''16
c''16
c''16
c''16
c''8
% measure 2
c''8
c''16
c''16
c''16
c''16
c''16
c''16
\once \override Beam.grow-direction = #right
c''16 * 29952/5120
[
c''16 * 16128/5120
c''16 * 13312/5120
c''16 * 11776/5120
c''16 * 10752/5120
]
}
B = {
% measure 1
\time 3/4
\set Score.proportionalNotationDuration = #(ly:make-moment 1/32)
\override TrillPitchAccidental.layer = 2
\override TrillPitchHead.layer = 2
\override TrillPitchParentheses.layer = 2
\clef "bass"
r16
\once \override TrillPitchAccidental.whiteout = ##t
\once \override TrillPitchHead.whiteout = ##t
\once \override TrillPitchParentheses.whiteout = ##t
\pitchedTrill
cs4..
\glissando
\startTrillSpan ds
\afterGrace
e4
{
f8
\glissando
}
% measure 2
\time 6/4
d16
r8.
\stopTrillSpan
r1
r4
}
\new Score
<<
<<
% \new Staff { \A } % <= THIS IS THE ONLY LINE THAT IS CHANGED
\new Staff { \B }
>>
>>
%%% END %%%
[image: ok-without-upper-staff.png]
Strangely, the bug also goes away when the second glissando is removed:
%%% OK WITHOUT SECOND GLISSANDO %%%
\version "2.25.16"
\language "english"
A = {
% measure 1
c''4
c''16
c''16
c''16
c''16
c''16
c''16
c''8
% measure 2
c''8
c''16
c''16
c''16
c''16
c''16
c''16
\once \override Beam.grow-direction = #right
c''16 * 29952/5120
[
c''16 * 16128/5120
c''16 * 13312/5120
c''16 * 11776/5120
c''16 * 10752/5120
]
}
B = {
% measure 1
\time 3/4
\set Score.proportionalNotationDuration = #(ly:make-moment 1/32)
\override TrillPitchAccidental.layer = 2
\override TrillPitchHead.layer = 2
\override TrillPitchParentheses.layer = 2
\clef "bass"
r16
\once \override TrillPitchAccidental.whiteout = ##t
\once \override TrillPitchHead.whiteout = ##t
\once \override TrillPitchParentheses.whiteout = ##t
\pitchedTrill
cs4..
\glissando
\startTrillSpan ds
\afterGrace
e4
{
f8
% \glissando % <= THIS IS THE ONLY LINE THAT IS CHANGED
}
% measure 2
\time 6/4
d16
r8.
\stopTrillSpan
r1
r4
}
\new Score
<<
<<
\new Staff { \A }
\new Staff { \B }
>>
>>
%%% END %%%
[image: ok-without-second-glissando.png]
The bug also goes away when the rhythm of the upper staff is changed:
%%% OK WITH RHYTHMIC SIMPLIFICATION %%%
\version "2.25.16"
\language "english"
A = {
% measure 1
% c''4
% c''16
% c''16
% c''16
% c''16
% c''16
% c''16
% c''8
c''2. % <= THIS IS THE ONLY NEW LINE
% measure 2
c''8
c''16
c''16
c''16
c''16
c''16
c''16
\once \override Beam.grow-direction = #right
c''16 * 29952/5120
[
c''16 * 16128/5120
c''16 * 13312/5120
c''16 * 11776/5120
c''16 * 10752/5120
]
}
B = {
% measure 1
\time 3/4
\set Score.proportionalNotationDuration = #(ly:make-moment 1/32)
\override TrillPitchAccidental.layer = 2
\override TrillPitchHead.layer = 2
\override TrillPitchParentheses.layer = 2
\clef "bass"
r16
\once \override TrillPitchAccidental.whiteout = ##t
\once \override TrillPitchHead.whiteout = ##t
\once \override TrillPitchParentheses.whiteout = ##t
\pitchedTrill
cs4..
\glissando
\startTrillSpan ds
\afterGrace
e4
{
f8
\glissando
}
% measure 2
\time 6/4
d16
r8.
\stopTrillSpan
r1
r4
}
\new Score
<<
<<
\new Staff { \A }
\new Staff { \B }
>>
>>
%%% END %%%
[image: ok-with-slight-rhythmic-simplification.png]
In fact, changing almost any one single thing about the original example
makes the invisible-pitched-trill bug go away.
Does anyone have any idea what is happening here? Or should I open an issue
in the tracker?
Trevor.
--
Trevor Bača
www.trevorbaca.com
soundcloud.com/trevorbaca
- TrillPitch* whiteout bug,
Trevor Bača <=