Discussion:
Beam & feathered beam together
Pierre Perol-Schneider
2018-11-14 11:43:35 UTC
Permalink
Hi,
I'm trying to make the following output (see attached png).
Any idea ?

snippet:
%%
\version "2.19.82"
\relative c' {
c16-\offset positions #2 [ c c c ]
\override Beam.grow-direction = #RIGHT
\featherDurations #(ly:make-moment 3/4)
{ c64[ c c c c c c c] }
}
%%

TIA, chears,
Pierre
Pierre Perol-Schneider
2018-11-14 13:44:09 UTC
Permalink
BTW, here's the -- ugly -- coding to obtain the image:

\relative c' {
\once\override Beam.stencil =
#(lambda (grob) ly:beam::print
(grob-interpret-markup grob
#{ \markup\raise #1.8 \pattern #2 #Y #0.13 \beam #45 #0 #.41 #}))
c16-\offset positions #1.8 [ c c c c ]
\override Beam.grow-direction = #RIGHT
\featherDurations #(ly:make-moment 3/4)
{ c64[ c c c c c c c] }
}

Cheers,
Pierre

Le mer. 14 nov. 2018 à 12:43, Pierre Perol-Schneider <
Post by Pierre Perol-Schneider
Hi,
I'm trying to make the following output (see attached png).
Any idea ?
%%
\version "2.19.82"
\relative c' {
c16-\offset positions #2 [ c c c ]
\override Beam.grow-direction = #RIGHT
\featherDurations #(ly:make-moment 3/4)
{ c64[ c c c c c c c] }
}
%%
TIA, chears,
Pierre
Pierre Perol-Schneider
2018-11-14 17:06:17 UTC
Permalink
Here's where I am so far:

\version "2.19.82"
\fixed c' {
<<
{ \voiceOne
c16-\offset positions #-1 [ c c c c c c c c c c c c ] }
\\
{ \voiceOne s4
\once\override Beam.positions = #'(0 . -.8)
c8[ s s s c] }
}

Cheers,
Pierre

Le mer. 14 nov. 2018 à 14:44, Pierre Perol-Schneider <
Post by Pierre Perol-Schneider
\relative c' {
\once\override Beam.stencil =
#(lambda (grob) ly:beam::print
(grob-interpret-markup grob
#{ \markup\raise #1.8 \pattern #2 #Y #0.13 \beam #45 #0 #.41 #}))
c16-\offset positions #1.8 [ c c c c ]
\override Beam.grow-direction = #RIGHT
\featherDurations #(ly:make-moment 3/4)
{ c64[ c c c c c c c] }
}
Cheers,
Pierre
Le mer. 14 nov. 2018 à 12:43, Pierre Perol-Schneider <
Post by Pierre Perol-Schneider
Hi,
I'm trying to make the following output (see attached png).
Any idea ?
%%
\version "2.19.82"
\relative c' {
c16-\offset positions #2 [ c c c ]
\override Beam.grow-direction = #RIGHT
\featherDurations #(ly:make-moment 3/4)
{ c64[ c c c c c c c] }
}
%%
TIA, chears,
Pierre
Thomas Morley
2018-11-14 22:07:22 UTC
Permalink
Am Mi., 14. Nov. 2018 um 18:07 Uhr schrieb Pierre Perol-Schneider
Post by Pierre Perol-Schneider
\version "2.19.82"
\fixed c' {
<<
{ \voiceOne
c16-\offset positions #-1 [ c c c c c c c c c c c c ] }
\\
{ \voiceOne s4
\once\override Beam.positions = #'(0 . -.8)
c8[ s s s c] }
}
Cheers,
Pierre
Post by Pierre Perol-Schneider
\relative c' {
\once\override Beam.stencil =
#(lambda (grob) ly:beam::print
(grob-interpret-markup grob
#{ \markup\raise #1.8 \pattern #2 #Y #0.13 \beam #45 #0 #.41 #}))
c16-\offset positions #1.8 [ c c c c ]
\override Beam.grow-direction = #RIGHT
\featherDurations #(ly:make-moment 3/4)
{ c64[ c c c c c c c] }
}
Cheers,
Pierre
Post by Pierre Perol-Schneider
Hi,
I'm trying to make the following output (see attached png).
Any idea ?
%%
\version "2.19.82"
\relative c' {
c16-\offset positions #2 [ c c c ]
\override Beam.grow-direction = #RIGHT
\featherDurations #(ly:make-moment 3/4)
{ c64[ c c c c c c c] }
}
%%
TIA, chears,
Pierre
_______________________________________________
lilypond-user mailing list
https://lists.gnu.org/mailman/listinfo/lilypond-user
Hi Pierre,

currently setting 'grow-direction is possible for the whole beam only,
but not starting a feather at arbitrary position after the beam has
already begun.

It _is_ possible to code a stencil-override to create such a thing,
but it is a huge effort. I did similar before, alas not exactly what's
needed here.

You could try to hack two voices as you already posted, probably like:

\fixed c' {
<<
{ \voiceOne
c16-\offset positions #-1.7 [ c c c c c c c c c c c c ] }
\\
{ \voiceOne
s4
\override Beam.grow-direction = #RIGHT
c64*4 [ \repeat unfold 7 s c] }
}

or

\fixed c' {
<<
{ \voiceOne
c16-\offset positions #-1.2 [ c c c c c c c c c c c c ] }
\\
{ \voiceOne
s4
\override Beam.grow-direction = #RIGHT
c32*4 [ \repeat unfold 3 s c] }
}

If you need a more robust thingy I could give it a try, but I'm not
sure when. Probably you'll have to wait some weeks.
Some other things are more prominent on my TODO-list:
Things that I've promised to do have even less priority than things
I've promised to finish last week have less priority than things I've
promised to have done weeks ago etc ...

Cheers,
Harm
Pierre Perol-Schneider
2018-11-15 10:29:35 UTC
Permalink
Hi Harm,
Post by Thomas Morley
currently setting 'grow-direction is possible for the whole beam only,
but not starting a feather at arbitrary position after the beam has
already begun.
It _is_ possible to code a stencil-override to create such a thing,
but it is a huge effort. I did similar before, alas not exactly what's
needed here.
Yep, I've already checked the work you did few years ago on the english
list and the german board.
Post by Thomas Morley
\fixed c' {
<<
{ \voiceOne
c16-\offset positions #-1.2 [ c c c c c c c c c c c c ] }
\\
{ \voiceOne
s4
\override Beam.grow-direction = #RIGHT
c32*4 [ \repeat unfold 3 s c] }
}
Nice! Thank you.

If you need a more robust thingy I could give it a try, but I'm not
Post by Thomas Morley
sure when. Probably you'll have to wait some weeks.
Things that I've promised to do have even less priority than things
I've promised to finish last week have less priority than things I've
promised to have done weeks ago etc ...
;)...
Don't worry, you're hack is just great for the moment. Thanks again.
Cheers,
Pierre

Loading...