View Full Version : Plz explain how maya coordinate system works

02 February 2008, 04:00 PM
I need to clear my concept on how maya evaluates the transform of an object in hierarchy.
e.g. if I take a single joint and a nurbs circle and do the following

1). joint1 is child of circle

2). circle when translated 3 units up in Y

position of joint1 is still 0 in Y

3) When Transforms are frozen for the circle , the position of joint1 changes from 0 to 3 units in Y.

Why so?
if parent coordinate system is the real transform
system in a 3d software...joint should still be at 0 with respect to its parent.

how do maya allows to set an objectís transforms to
zero without any additions in hierarchy while object is still
offset in world

see ataached image for clearity:)

02 February 2008, 09:28 PM
I recreated the problem myself and it seems a bit unintuitive to have the joint sudden recieve 3 in Ty. Try it again but dont use a joint but another NURBS circle and you will see that it doesn't behave the same as the joint. This is because of this:

"Freeze Transformations does not affect the translation transforms of joints because their translation transforms are required to define the lengths of their bones."

this from the help file. There are three "spaces" in Maya world space, object space, and local space. and what i think "freeze" is doing is changing the local space of the object to the world space, but all transformations to an object are relative to the pivot point so it appears to not have moved and when you rotate the object it rotates about the pivot not the local space which would is probably at the orgin now. but since the joints can't be frozen its relative position to the parent is now what the parents world space was. I'm not sure if that makes since or if I understand. i just had one of our rendering guys try to explain it to me, so this info is second hand. Good Luck!

02 February 2008, 06:55 AM
thanks for the xplaination mate but actually I'm more confused now :)

so then what freeze transform does is a cheat. I've also used 3dsmax and in that resetting transforms(xform) will reset the scale and orientation while maintaining the absolute world position. Not an ease as maya's freeze transform but makes sense to me.

If bone's positions are not frozen in maya to maintain length(although root has no length, its just a transform), how come it shows zero at first .

Plz help me xplain it if possible as we have to use joints and not just nurbs curves in hierarchy

02 February 2008, 02:59 PM
maybe this diagram I drew up will help :)

Also if you just want to zero out joints and other object in a heirarchy check this out too.

02 February 2008, 04:02 PM
mberglund : the diagram did help settle for some answers but don't you think its kinda weired that for any frozen object, the transform pivot we see remains where it is and local space jumps to origin. Maybe that's what maya does for ease of use:rolleyes:. These joints are really special.

Thanks for the help man:applause:

02 February 2008, 04:10 PM
Yeah I would agree that it is strange, i try not to use freeze transform that much and use the mGroup thing or for joints I build CV curves first then at creation time snap the joints to the curves. That way the only values for the joints channel box are in the TX (except the root joint).

Max's freeze transform works similar to the grouping method, except it uses position lists.

CGTalk Moderation
02 February 2008, 04:10 PM
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.