xsi.Selection(0).Kinematics.Local.Transform returns a copy of the Transform object. So you
are changing the rotation values in a temporary copy of the
object.
See the reference page for KinematicState.Transform (see
the last paragraph under Description).
From: owner-xsi(at)Softimage.COM
[mailto:owner-xsi(at)Softimage.COM] On Behalf Of Andy Jones
Sent:
Mon 29 October 2007 9:05 PM
To: XSI(at)Softimage.COM
Subject:
Re: setting rotations
I think you have to call the copy command, or call SetRotation on the
transformation object. It's something like that.
On 10/29/07, Steven
Caron < carons(at)gmail.com>
wrote:
i
am trying to figure out with this little bit of my script doesn't work... i
create an empty rotation and try to set an object's rotation equal to it.
essentially zeroing it out. no error logged. where is the failure in my logic?
#imports
import win32com.client
from win32com.client import
constants
#globals
xsi =
win32com.client.Dispatch( "XSI.Application" ).Application
xsiPrint =
xsi.LogMessage
rot =
XSIMath.CreateRotation()
xsi.Selection(0).Kinematics.Local.Transform.Rotation
= rot