IKは pm.ikHandle() によって作成することができます。
import pymel.core as pm def makeIkRP(): j1 = pm.joint(p=(0, 10, 0)) j2 = pm.joint(p=(0, 5, 0)) pm.joint(j1, e=True, zso=True, oj='xyz', sao='yup') // ジョイントの向きを決める j3 = pm.joint(p=(0, 0, 0)) pm.joint(j2, e=True, zso=True, oj='xyz', sao='yup') // ジョイントの向きを決める j2.ry.set(10) // ジョイントの優先角にする方向に回転 pm.joint(j2, e=True, spa=True, ch=True) // ジョイントの優先角の設定 j2.ry.set(0) // 回転を元に戻す rps = pm.ikHandle(sj=j1, ee=j3, sol='ikRPsolver') // ikRPsolverソルバでIK作成 return rps
import pymel.core as pm def makeIkSC(): j4 = pm.joint(p=(0, 5, 0)) pm.joint(j4, e=True, zso=True, oj='xyz', sao='yup') // ジョイントの向きを決める j5 = pm.joint(j4, p=(0, 0, 0)) pm.joint(j5, e=True, zso=True, oj='xyz', sao='yup') // ジョイントの向きを決める scs = pm.ikHandle(sj=j4, ee=j5, sol='ikSCsolver') // ikSCsolverソルバでIK作成 return scs