On 4/17/19, 9:50 PM, "Aaron Hill" <lilyp...@hillvisions.com> wrote:
Additionally, it is important to consider velocity along the curve. Based on the positioning of the control points, we may be walking at times and running at others. You see this with the variable spacing of dots when you sampled a curve at regular intervals of the parameter t. A value of one half for t does not mean you are halfway between the initial and final points in terms of Cartesian distance. This is why I had to go through the trouble of computing arc lengths, since I needed to know the slope of the curve at a specific distance from the end points. My approximation for arc length and position will fail for exotic Bezier curves, since I am using a fixed subdivision count; but typically ties and slurs are more well-behaved in this regard. Now when a composer decides to invent notation where a slur has a cusp or loop in it, then we will need to worry: I believe that the dashed tie /slur functions have a helper function that eliminates the nonlinearity with t. I started using t as a curve-length, but it isn't so. So I created a subdivision algorithm that works properly. Maybe in scm/Bezier-functions.scm? I can't recall the exact name of the scm file right now, and I don't good access to a lilypond source tree. Thanks, Carl _______________________________________________ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user