rjSplineIK package

Module contents

Create a Spline IK setup on a curve. The setup features variable stretch and squash, variable rotation and sliding on curve.

https://github.com/robertjoosten/rjSplineIK/raw/master/data/header.png

Installation

Copy the rjSplineIK folder to your Maya scripts directory

C:/Users/<USER>/Documents/maya/scripts

Usage

Command line

from rjSplineIK import SplineIK

splineIK = SplineIK()
splineIK.create(
    name,
    curve,
    numJoints,
    upDirection="y", 
    worldUpDirection="y", 
    forwardDirection="x"
)

Display UI

import rjSplineIK.ui
rjSplineIK.ui.show()  
https://github.com/robertjoosten/rjSplineIK/raw/master/data/ui.png

UI example

Note

The Spline IK module works on a curve and generates an joint chain that sticks to it’s position on the curve. This means that stretch and squash will only occur in the areas that manipulates as opposed to it scaling as a whole.

https://github.com/robertjoosten/rjSplineIK/raw/master/data/stretchSquash.gif

Stretch and Squash demo

The other benefit of using this module over a regular spline IK is the fact that the twist is divided over the controls that are generated and not just limited to the beginning and end.

https://github.com/robertjoosten/rjSplineIK/raw/master/data/partialTwist.gif

Partial Twist demo

https://github.com/robertjoosten/rjSplineIK/raw/master/data/shift.gif

Shift demo

Apart from the main settings, the control colour, position and orientation is adjustable. This can be done on the Spline IK class before the create function is called.

  • controlShape
  • rootControlShape
  • slideControlShape
  • tangentControlShape
  • controlColour
  • rootControlColour
  • slideControlColour
  • tangentControlColour
  • orientToCurve
  • orientRootToCurve