是否可以單獨導出給定對象的關鍵幀在其自己的關鍵幀範圍內?導出對象範圍內的關鍵幀
示例camA
在第1幀到第10幀的範圍內是關鍵幀。但是,當我試圖以另一種格式導出本相機時,它將考慮整體時間滑塊。因此exported_camA
在第1幀到第24幀範圍內是關鍵幀(24是我的時間滑塊的最大範圍)
這可能嗎?我嘗試了用cmds.playbackOptions
但顯然它是根據時間滑塊範圍還出口了
def __init__(self, transform, startAnimation, endAnimation, cameraObj):
self.fileExport = []
print ">>> Exported : %s" %self.fileExport
mayaGlobal = OpenMaya.MGlobal()
mayaGlobal.viewFrame(OpenMaya.MTime(1))
for i in range(startAnimation, endAnimation):
focalLength = cameraObj.focalLength()
vFilmApp = cameraObj.verticalFilmAperture()
focalOut = 2* math.degrees(math.atan(vFilmApp * 25.4/ (2* focalLength)))
myEuler = OpenMaya.MEulerRotation()
spc = OpenMaya.MSpace.kWorld
trans = transform.getTranslation(spc)
rotation = transform.getRotation(myEuler)
rotVector = OpenMaya.MVector(myEuler.asVector())
self.fileExport.append((str(i) + '\t' + str(trans[0]) + "\t" + str(trans[1]) + "\t" + str(trans[2]) + "\t" + str(math.degrees(rotVector[0])) + "\t" + str(math.degrees(rotVector[1])) + "\t" + str(math.degrees(rotVector[2])) + "\t" + str(focalOut) + "\n"))
mayaGlobal.viewFrame(OpenMaya.MTime(i+1))
謝謝你的信息。我還譴責我是否應該允許用戶通過場景範圍或者上述選擇範圍內的範圍允許用戶自由導出動畫。即使這樣,現在,後者是我正在嘗試在當前代碼中實現的。如果我想進一步改進我的代碼,我會考慮前者。再次感謝! – dissidia 2014-10-10 02:18:23