Definition of BulgeFactor in _BlendCrv

I was checking out the new and improved version of _BlendCrv for R9 and have some questions and comments.

What exactly is the BulgeFactor? I recently had the misfortune of having to implement Ck/Gk continous joining myself, so the math is clear. This reference helped a lot.

For a k continous join, i can specify k parameters. Rhino however lets you only specify the BulgeFactor, which seems to be something in between, independent of the continuity of the join. However there is no documentation, how it works mathematically.

Can someone from McNeel point me in the direction, where this can be found in literature?

Also in my opinion, the documentation is not very good/wrong explaining the concept of continuity.

G4 continuity is very seldom used, but can be important in certain isolated cases. G4 continuous curves have all the same requirements as G3 curves, but their curvature acceleration is equal in three dimensions.

This is wrong! G4 is not G3 with 3 instead of 2 dimensions.

Best
Dan

I have created an issue for this. https://mcneel.myjetbrains.com/youtrack/issue/RH-97033

I’m a user; not associated with McNeel.

You can drag the control points. While BlendCrv is active the control points are restricted in how you can drag them and are linked to maintain the request level of G continuity.

For example with G3 continuity requested you can drag the control point next to the end control point only in the direction which maintains tangency, and the two control points further away from the end also move so that curvature and rate of curvature continuity is also maintained.

The second control point from the end can only be moved so that curvature continuity is maintained and the thrid control point from the end will automatically move so that rate of change of curvature is maintained. The first control point from the end does not move.

The third control point from the end can only be moved so that the rate of change of curvature is maintained. The first and second control points do not move.

The “k factors” are the linked control points. Note that the linkage is “triangular”, equivalent to the triangular form of the equations and matrices in your reference.

The “bulge factor” sliders appear to be equivalent to moving the first control point from the end with the other control points moving as described above.

【FlowUs 息流】二阶和三阶贝塞尔曲线的G2连续问题

This is an article from my Chinese blog regarding the qualitative and quantitative analysis of curvature continuity using Grasshopper (GH). You can refer to the script design and the underlying logic; it may help you gain a quantitative understanding of continuity.