log = open(r"D:\sfm_test.txt", "w")
def w(s):
log.write(str(s) + "\n")
log.flush()
# 1. Намеренно неверный режим, чтобы увидеть, какие значения допустимы
try:
sfm.SetOperationMode("zzz_wrong")
w("mode: wrong value was accepted (?)")
except Exception, e:
w("mode error: %s" % e)
# 2. Найти корень модели
anim = sfm.GetCurrentAnimationSet()
w("animset: %s" % anim)
root = None
for name in ["rootTransform", "RootTransform", "root"]:
try:
root = sfm.FindDag(name)
except Exception, e:
w("FindDag %s error: %s" % (name, e))
if root:
w("found dag: %s" % name)
break
if root:
sfm.ClearSelection()
sfm.SelectDag(root)
sfm.SetCurrentFrame(0)
w("frame 0 position BEFORE: %s" % str(sfm.GetPosition()))
sfm.SetCurrentFrame(20)
sfm.Move(50, 0, 0, relative=True)
w("frame 20 position AFTER move: %s" % str(sfm.GetPosition()))
sfm.SetCurrentFrame(0)
w("frame 0 position AFTER move: %s" % str(sfm.GetPosition()))
else:
w("root dag not found")
log.close()
print "keytest done"