View Full Version : Orient Constraint not recognizing 360 + rot.

 pixelmangler12 December 2004, 05:26 PMI have a problem where the orient constraint's rotations reset instead or registering a rotation past 360 degrees, which is not what I want. I want the orient constraint's rotations to reflect multiple revolutions. I see no option in the orient constraint that would change that outcome. I'm consolidating rotations from a parent and child node to just the child node. I create a transfer object, which I constrain to the child object. The Rotation order is XYZ on the parent and YXZ on the child. Just adding the rotations of parent and child (when their Rotation orders are the same) together doesn't work past a single axis. If someone has found a good solution or a work around to above problem that would be great. If someone can explain why just adding the rotations together does not work that would also be great. Thanks
macaroniKazoo
12 December 2004, 10:26 PM
i dont think you can get orient constraints to output values over 360. internally they work using quats, which don't deal with numbers outside the 360 range.

and adding rotations should work if the rotate orders are the same. if they're differenti expect you're stuffed... of course i'm no mathematician, so i could very well be wrong about that.

pixelmangler
12 December 2004, 12:04 AM
Thank you macaroniKazoo. It's unfortunate that the orient constraint doesn't recognize rotations past 360 degrees and all the other constraints that might substitute (Aim and IK) function the same.

I guess I get to learn the math to do this, Woopee!

PEN
12 December 2004, 05:59 PM
i dont think you can get orient constraints to output values over 360. internally they work using quats, which don't deal with numbers outside the 360 range.

and adding rotations should work if the rotate orders are the same. if they're differenti expect you're stuffed... of course i'm no mathematician, so i could very well be wrong about that.
Please correct me if I am wrong but quat values will not wind up past 180°. This is because they are not dirived from and XYZ axis but a point vector on a surface of a sphere. Euler axis values have multiple solutions for the same rotation but a quat con only have two, either positive or negative.

misterdi
12 December 2004, 12:56 PM
Have you try to apply euler filter to the rotation curves?.

pixelmangler
12 December 2004, 10:06 PM
misterdi, I'm not quite sure what your driving at with "apply euler filter to the rotation curves". I'm currently using an Orient constraint to consolidate rotations from a hierarchry where the node have different rotation orders. I want the Orient Constraint to reflect the number revolutions (which it currently does not) that the object goes through. And I believe the Euler Filter itself will change rotations so they don't go past 360 degrees which again is the opposite of what I want.
What I need is a way to consolidate the rotations onto one node that keeps rotations that go over 360 degrees. I need to know the real rotation whether the consolidated rotations goes 750 or 30 degrees.

misterdi
12 December 2004, 01:10 PM
pixelmangler, maybe this is not what you want.

If you open the graph editor for the constraint transfer object, and show result it will show the graph you will see it is inside -180 to 180 zone, you could bake the curves and use Curves->Euler filter to let maya break this situation.

But the draw back you will have keyframes on each frame of the resulting curves.

CGTalk Moderation
01 January 2006, 02:00 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.

1