Python 框架选定的isn';行不通

Python 框架选定的isn';行不通,python,focus,maya,pymel,Python,Focus,Maya,Pymel,我遇到这个问题,无法使函数FrameSelected()工作 基本上,在我的场景中,有一个名为TT_CAM的摄像头和一个名为“Model”的标签模型列表(类似于pCube/Sphere等,称为多边形) 我的目标是,当用户执行脚本时,视口将更改为TT_CAM,同时聚焦(“f”键盘键)所有模型对象 我尝试使用下面的代码,但对于选定的框架,它失败了 以下是我尝试过的: import maya.cmds as cmds cmds.lookThru("TT_CAM") mAssets =

我遇到这个问题,无法使函数
FrameSelected()
工作 基本上,在我的场景中,有一个名为TT_CAM的摄像头和一个名为“Model”的标签模型列表(类似于pCube/Sphere等,称为多边形)

我的目标是,当用户执行脚本时,视口将更改为TT_CAM,同时聚焦(“f”键盘键)所有模型对象

我尝试使用下面的代码,但对于选定的框架,它失败了

以下是我尝试过的:

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

我会把这个贴出来作为回答。我没有意识到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()
类似,它接受其他参数,例如,在何处可以传递一个浮点值来确定要安装的视口的百分比。

viewFit()有什么问题?另外,据我所知,cmds没有
FrameSelected()
函数。也就是说,您键入它的方式意味着
FrameSelected()
是一个类,您正在将所选对象添加到该类中。您好,
viewFit()
有点工作,但不是我希望它作为
FrameSelected()
(也称焦点)的方式早些时候,我遇到了
pymel.core.runtime.FrameSelected
,其中它被记录为
FrameSelected(*args,**kwargs)
这是如何工作的?很酷,我会尽快试用它,等我能拿到我的程序时,再回来给你看看它是否有用。顺便说一句,我试着在网上搜索,试图了解什么是*args和**kwargs,有什么想法吗?不幸的是,不知道,似乎到处都没有关于它的任何文档。@yan*args和*kwargs代表参数和关键字参数,你可以用它们让你的函数接受任意数量的关键字参数,当您不确定有多少个参数可以传递给您的函数时,您可以使用
*args
,同样,
**kwargs
允许您处理您事先未定义的命名参数。@Shannon Hochkins我相信他指的是这些参数在这个特定函数中的实际作用。.大家好,谢谢你的反馈。我刚刚试用了@ArigirlKotsaris发布的代码。。。它仍然在选择我的对象,但是FrameSelect不起作用。在我执行代码之前/之后,仍然在我的cam中使用相同的视图