7 comments on “curve studies:bending limbs effortlessly…

  1. Awesome stuff! – loving the knot adding features you have there. Im guessing you refining the spline somehow. Do you have any info on how your twisting the the mesh about the spline?

    Great suff!

    • Hello Charles, thanks. Maya gives really a lot of control and tools to tame this nasty beast that is nurbsCurve : adding knot is child’s play and we don’t need to dwelve deep in maths to do it.
      Refining the driving curve is one part of the process, the mesh must also adapts its topology to draw a smooth tube like surface.
      This article is not yet completed but I am pretty sure that you will love what comes next : there will epic matrix transformation, sneaky quaternion interpolation , a bit of geodesic study and rotation minimizing frame propagation…

      • Sweet! – looking forward to it. Currently i’m in matrix land with pivots, transform switches and bi/multi-directional constraints. Rotations are next – used durac twist trick several years ago for +360/-360 (the notion of a belt thats twisted twice can unfold, where as a belt thats only twisted once cant).

        On the notion of curves if you need a hand with the math, just shout. I’ve been building a library of curve types and there methods i.e summation using bernstein, cubic, quadratic, conic, rational – with the bernstein ive got the derivatives too – so you can find the tangent along any tangent of any degree.

      • Nice, Charles,

        At this time I was able to dig a lot of stuff on curve with the basic MFnNurbsCurve API method: tangent , normal, derivatives, closestPoint, paramFromLenght etc .We are really spoiled. I might use your brain for a really special node that defines ball articulation behavior. Your discussion with Adam Mechtley on his shoulder constraint (http://forums.cgsociety.org/archive/index.php/t-717380.html) really haunts me. I tried to slerp a quaternion with weight barycenter but failed miserably . So I just design a geodesic system that drives the twist value on top of quaternion ( i really like your idea and try to play with it ). Its not perfect but it will enables us to do a genuine no flip articulation .

  2. Hi Cedric,
    This is looking really great. I have one question, how would you animate this? If you add more knots the does the curve retain the new count through the animation ?

    Looking forward to your next update 🙂

    • I have 1 idea to implement animation: My network node accept curve shape so we can change on the fly all its properties( degree, cv counts etc ) without killing the output deformation because the deformed mesh is transformed in a normalized curve space.

      – It would be to have several driver curve that are plugged in a node with an input selector attribute . its responsibility will be to act as switch and output the selected curve input .

      An extension of this project will be to write a tube node with adaptive subdivision base on length, curvature, and twist. it will gives animator a precise idea of a surface shape by displacing is points.

  3. I side note – I just found Jeremie Passerin put the operator for the isner spine in python format. Does’nt seem to crazy – crucially it blends between lerp and slerp based on the two quaternions – my hunch is that its using the dot product to keep each quat on the same side as the hemisphere. It’s for XSI so a little tricky to debug..


    Gunna have to bite the bullet dive into ‘Visualizing Quaternions’ – at 560 pages it might take a while…

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.