Hi Jordan,
You can get them from the world_matrix knob of your internal Axis node. It
will carry all concatenated transforms up to that point.
For translations, you could just point to the right indices in that
Array_knob (3, 7 and 11, I believe).
If you need to get rotations as well, you'll need to settle for a certain
rotation order, and derive the rotations for that particular order.
There's a convenient method in the Matrix4 class to get a tuple of
rotations for a ZXY rotation order.
The sequence would go like this:
mtx = nuke.math.Matrix4()
k = n['world_matrix']
# fill in the matrix object with values from the world_matrix knob
for y in range(k.height()):
for x in range(k.width()):
mtx[x+(y*k.width())] = k.value(x,y)
# And then your "ZXY" rotations would be
rotations = [math.degrees(x) for x in mtx.rotationsZXY()]
Hope that helps
Cheers,
Ivan
On Thu, Nov 3, 2011 at 6:58 PM, Jordan Olson <[email protected]> wrote:
> Hi everyone,
> I've got a group that takes a camera as an input.
> Internally however, I'd like to be able to use the 3D transform
> coordinates of whatever camera/axis that input is attached to...
>
> closet thing I could think of was to to attach an axis inside of the
> group to that input- so it should be inheriting the 3d transformations
> from the camera. This works great in practice- but how can I now query
> the 3D translation and rotation coordinates of that axis in absolute
> world space? By python or TCL is fine- I just need the coordinates for
> an expression.
>
> Cheers,
> Jordan
> _______________________________________________
> Nuke-python mailing list
> [email protected], http://forums.thefoundry.co.uk/
> http://support.thefoundry.co.uk/cgi-bin/mailman/listinfo/nuke-python
>
_______________________________________________
Nuke-python mailing list
[email protected], http://forums.thefoundry.co.uk/
http://support.thefoundry.co.uk/cgi-bin/mailman/listinfo/nuke-python