Votes
0
Product:
iClone 7
Version:
7.4
Status:
Not a Bug
Issue 5571
object.GetControl("Transform").GetDataBlock().SetValue(timemark, new_transform_object) set double angle
# Get new data holders for tranformation
scale = RLPy.RVector3()
rot = RLPy.RQuaternion.IDENTITY
pos = RLPy.RVector3.UNIT_XYZ
# Set old data
scale_old=transform_key.GetTransform().S()
rot_old=transform_key.GetTransform().R()
pos_old=transform_key.GetTransform().T()
# Add old values in new variables
scale.x=scale_old.x
scale.y=scale_old.y
scale.z=scale_old.z
rot.x=rot_old.x
rot.y=rot_old.y
rot.z=rot_old.z
pos.x=pos_old.x
pos.y=pos_old.y
pos.z=pos_old.z
# set new angle
rot.x=0.24... (14 degrees)

timemark=RLPy.RGlobal.GetTime()
new_transform_object = RLPy.RTransform(scale, rot, pos)
object.GetControl("Transform").GetDataBlock().SetValue(timemark, new_transform_object)

In iClone the angle is now 29 degrees (0.5 around double of input)
OS: Windows 10
  •  2
  •  897
Submitted byThe-any-Key
1
COMMENTS (2)
The-any-Key
Oh.Wait. Do R() just get the rotation values from the matrix? And not the iClone transform settings. My mistake.
The-any-Key
Sorry: GetDataBlock() should not be there. But the bug is still there :-)
1