单骨骼 ik fk 无缝转换
$ik_fk = `getAttr IKFK_crv.IKFK `;
//fk to ik//
if($ik_fk == 0)
{
$IK_t = `xform -q -ws -t FK_wrist_crv`;
xform -ws -t $IK_t[0] $IK_t[1] $IK_t[2] IKCon_crv;
$IK_ro = `xform -q -ws -ro FK_wrist_crv`;
xform -ws -ro $IK_ro[0] $IK_ro[1] $IK_ro[2] IKCon_crv;
$IK_elbow_t = `xform -q -ws -t IK_elbow_pole_match`;
xform -ws -t $IK_elbow_t[0] $IK_elbow_t[1] $IK_elbow_t[2] IK_elbow_pole;
setAttr IKFK_crv.IKFK 1;
};
//ik to fk//
if($ik_fk == 1)
{
$FK_arm_ro = `xform -q -ws -ro FK_arm_crv_match`;
xform -ws -ro $FK_arm_ro[0] $FK_arm_ro[1] $FK_arm_ro[2] FK_arm_crv;
$FK_elbow_ro = `xform -q -ws -ro FK_elbow_crv_match`;
xform -ws -ro $FK_elbow_ro[0] $FK_elbow_ro[1] $FK_elbow_ro[2] FK_elbow_crv;
$FK_wrist_ro = `xform -q -ws -ro IKCon_crv`;
xform -ws -ro $FK_wrist_ro[0] $FK_wrist_ro[1] $FK_wrist_ro[2] FK_wrist_crv;
setAttr IKFK_crv.IKFK 0;
};