0

在改进镜头取景时,我经常希望将相机移动某个“百分比”。我意识到当您不确定相机的起始位置时,“百分比”可能是任意的,但对于客户来说,以百分比而不是单位来谈论更有意义(例如“推入 10%”)

在 Maya 的 python 库中,我看到cameraanddolly命令,但不是将相机移动到当前位置一小部分的内置方法。解决这个问题的最优雅的方法是什么?

4

2 回答 2

0

这是我的 10% 推入示例解决方案,这绝不是优雅的:

import maya.cmds as cmds
import maya.mel as mm

currentPosition = cmds.camera("MyCameraShape", q=True, coi=True)
desiredPosition = float(currentPosition) - (currentPosition * (float(pushPercent) / 100.0) )
cmds.dolly('MyCameraShape', absolute=True, distance=desiredPosition)

我的理解是我想要absolute=True,因为我想保留我的 coi(兴趣中心)。

于 2013-07-02T22:50:56.243 回答
0

这对于您描述的应用程序来说很好。如果只使用小数,数学会更简单:

def push_pct (cameraShape, amt):
  ''' where .1 = in 10%, -.1 = out 10%, etc'''
  cmds.dolly(cameraShape, abs = True, d =  (1 - amt) * cmds.camera(cameraShape, q=True, coi=True))
于 2013-07-03T05:17:28.310 回答