----- Original Message -----
Sent: Monday, September 19,
2016 11:40 PM
Subject: Re: What to do
wanting a 4th order Bézier?
Am 19.09.2016 um 22:49 schrieb Urs
Liska:
Am 19.09.2016 um 20:50 schrieb David Kastrup:
Urs Liska <address@hidden> writes:
[...]
You are working with slopes here. Don't. They don't support vertical
lines.
Yes, that's what I realized ...
Please take a look at the recently added functions
ly:length ly:angle ly:directed
They will usually make it easy to do the operations you want. In
particular ly:directed can also use a vector as a direction without ever
calculating its angle.
Thanks! From looking at the docs it seems they'll do exactly what I want
(and had partially implemented in Scheme). Can't wait to return to my
LilyPond computer :-)
I think I now have it in a state where we can work from. The
angle of the inflection is now given as an angle relative to the
line connecting the end points of the whole slur. While an angle
relative to the horizontal line would be somewhat more
straightforward I think this approach is more robust against
changes (for example when the slur is cross-staff and the
staff-staff distance changes).
TODO:
- support more than two segments
(shouldn't be *that* difficult, just tedious and slightly
complex)
- support broken slurs
(each sibling should be togglable between multi-segment or
not, and it should be \shape-able)
- support Slur, PhrasingSlur and Tie (like \shape)
- specify shapes as polar coordinates (or all options that
\shapeII has)
The code is now at https://github.com/openlilylib/snippets/tree/compound-slur/notation-snippets/shaping-bezier-curves
Best
Urs
_______________________________________________
lilypond-user mailing list
address@hidden
https://lists.gnu.org/mailman/listinfo/lilypond-user