Knute - 

I think you're looking at more than third order Bezier. curve I found this in 
the archive that is probably the way to do it in vanilla Lilypond. 

https://mail.gnu.org/archive/html/lilypond-user/2016-09/msg00439.html 

There also seemed to be some talk in the chain about making xth order curves 
available, but the third order is hard coded into the code: 
https://github.com/lilypond/lilypond/blob/38f1b21a9cadb9640f7d271980e47e32a2cbd1b3/lily/bezier.cc#L111
 

Even the graphic markup is limited to cubic curves. 

-kwb 


> On Mar 12, 2026, at 3:47 PM, [email protected] wrote:
> 
> Send lilypond-user mailing list submissions to
>       [email protected]
> 
> To subscribe or unsubscribe via the World Wide Web, visit
>       https://lists.gnu.org/mailman/listinfo/lilypond-user
> or, via email, send a message with subject or body 'help' to
>       [email protected]
> 
> You can reach the person managing the list at
>       [email protected]
> 
> When replying, please edit your Subject line so it is more specific
> than "Re: Contents of lilypond-user digest..."
> 
> 
> Today's Topics:
> 
>   1. Can't get a tricky slur correct (Knute Snortum)
> 
> 
> ----------------------------------------------------------------------
> 
> Message: 1
> Date: Thu, 12 Mar 2026 15:46:53 -0700
> From: Knute Snortum <[email protected]>
> To: [email protected]
> Subject: Can't get a tricky slur correct
> Message-ID:
>       <calmejxtkwwxnqiejnd03bsrdynny2tro7bwvqjuyoufr2qz...@mail.gmail.com>
> Content-Type: text/plain; charset="utf-8"
> 
> Hello everyone,
> 
> I'm having a "how do I do that in LinyPond" moment because of a complex
> slur I need to engrave (see first attachment).  The closest I've gotten is
> this (second attachment). The problem seems to be that there are three
> "bends" in the curve but \shape can only make two.  How would I do this in
> LilyPond?  (I've included the code used to make the second curve below in
> case it's a helpful starting point.)
> 
> %%% Start
> \version "2.24.4"
> 
> slurShapeA = \shape #'((0 . 0) (23 . -1) (-3 . 0) (0 . 0)) \etc
> 
> rightHand = \relative {
>  \partial 4 <c'' c'>4( |
>  <bes bes'>2. \once \override Stem.length = #11 <a a'>4) |
>  s2 s8 r q4
> }
> 
> leftHandUpper = \relative {
>  \partial 4 s4 |
>  \voiceThree
>  \once \override Beam.positions = #'(4 . 6)
>  c,8-\slurShapeA ([ e c' e  c' e, c a' |
>  \change Staff = "upper" \voiceFour  c8 a' c e]  c') s4. |
> }
> 
> leftHandLower = \relative {
>  \partial 4 r4 |
>  \voiceTwo s2.. \once \hideNotes a8~ |
>  <e a e'>2.-> \oneVoice r4 |
> }
> 
> leftHand = {
>  \clef bass
>  <<
>    \new Voice \leftHandUpper
>    \new Voice \leftHandLower
>>> 
> }
> 
> \score {
>  \new PianoStaff \with {
>    \override StaffGrouper.staff-staff-spacing.basic-distance = #10
>  } <<
>    \new Staff = "upper" \rightHand
>    \new Staff = "lower" \leftHand
>>> 
> }
> %%% End
> 
> --
> Knute Snortum
> -------------- next part --------------
> An HTML attachment was scrubbed...
> URL: 
> <https://lists.gnu.org/archive/html/lilypond-user/attachments/20260312/0db12564/attachment.htm>
> -------------- next part --------------
> A non-text attachment was scrubbed...
> Name: brahms-beginning.png
> Type: image/png
> Size: 131700 bytes
> Desc: not available
> URL: 
> <https://lists.gnu.org/archive/html/lilypond-user/attachments/20260312/0db12564/attachment.png>
> -------------- next part --------------
> A non-text attachment was scrubbed...
> Name: brahms-slur-problem.png
> Type: image/png
> Size: 122252 bytes
> Desc: not available
> URL: 
> <https://lists.gnu.org/archive/html/lilypond-user/attachments/20260312/0db12564/attachment-0001.png>
> 
> ------------------------------
> 
> Subject: Digest Footer
> 
> _______________________________________________
> lilypond-user mailing list
> [email protected]
> https://lists.gnu.org/mailman/listinfo/lilypond-user
> 
> 
> ------------------------------
> 
> End of lilypond-user Digest, Vol 280, Issue 31
> **********************************************

Reply via email to