FrameSelected不起作用

时间:2014-02-17 10:26:25

标签: python focus maya pymel

我有这个问题,我无法让函数FrameSelected()起作用 基本上在我的场景中,有一个名为TT_CAM的相机和一个名为'Model'的模型列表(就像pCube / Sphere等被称为多边形)

我的目标是当用户执行脚本时,视口将在所有Model对象上聚焦('f'键盘键)时更改为TT_CAM。

我尝试使用下面的代码但是FrameSelected失败了。

以下是我的尝试:

import maya.cmds as cmds
    cmds.lookThru("TT_CAM")
    mAssets = cmds.select('Model*')
    #cmds.viewFit(mAssets)
    cmds.FrameSelected(mAssets)

1 个答案:

答案 0 :(得分:1)

我会发布这个作为答案。我没有意识到pymel实际上有这样的功能,但是你必须明确地导入它才能使用它(这就是你在cmds中调用它时遇到的问题之一)。由于代码的大小,我只是使用pymel重写它。

import pymel.core as pm
from pymel.core.runtime import FrameSelected

pm.lookThru("TT_CAM")
mAssets = pm.select('Model*')
FrameSelected() # no arguments need be passed, works off selected objects

虽然这看起来像viewFit()一样,它接受fitFactor之类的其他参数,你可以传递一个浮点数来确定你想要的视口的百分比。