View Full Version : zero rotation Values, How?

07 July 2008, 04:15 AM
Simple IK arm rig: Shoulder > Elbow > Wrist

Why am I getting rotation values on shoulder joint when creating pole vector on the right hand side of the arm? Rotation Axis is perfectly aligned. Did it to the left side perfectly, with no rotation values.

Can anyone help?

(see attachment)

07 July 2008, 09:02 AM
If you've mirrored your joint hierarchy, it's probably because your left arm hierarchy has micro values which were not copied over to the right arm hierarcy.

Do this test. Select your left shoulder joint and type:
getAttr .translateX;
Now select your right shoulder joint and do the same. I bet there are very small values beyond the third decimal place on your original arm which are not present on your mirrored arm. It seems the mirror joint function mirrors off to the third decimal place by default.

I use this script:

select -hi;
string $lister[] = `ls -sl -et joint`;
string $item;
string $currentName;
float $tx;
float $ty;
float $tz;
for($item in $lister)
$currentName = `substitute "L_" $item "R_"`;
$tx = `getAttr ($item + ".translateX")`;
$ty = `getAttr ($item + ".translateY")`;
$tz = `getAttr ($item + ".translateZ")`;
setAttr ($currentName + ".tx") ($tx * -1);
setAttr ($currentName + ".ty") ($ty * -1);
setAttr ($currentName + ".tz") ($tz * -1);

Provided that your left and right side use the "L_" and "R_" indicator, select the highest left arm hierarchy joint before your arm hits the spine, then execute. This will copy the micro values from the left to the right side.

07 July 2008, 11:17 AM
Iíve decided to live with it (rotation value). The script did not solve the problem, likely reason is that
the centre joints (root, spine, neck joints) are not on the origin.

Micro Values:
This is the micro value of the left shoulder joint 3.559452
This is the micro value of the right shoulder joint -10.3125

Thanks for the script and micro value, Iím sure they will be handy for me in the future.

CGTalk Moderation
07 July 2008, 11:17 AM
This thread has been automatically closed as it remained inactive for 12 months. If you wish to continue the discussion, please create a new thread in the appropriate forum.