Maya Python mass.obj导入如何关闭obj导入警告?

Maya Python mass.obj导入如何关闭obj导入警告?,python,maya,Python,Maya,嘿,我正在通过python将文件列表导入maya场景 每次导入.obj时,maya都会向我发出以下警告: Warning: Option "Use legacy vertex order" will only take effect when option "Multiple Objects" is enabled. 我的问题:是否可以关闭此警告?或者一开始就不显示警告的方式 编辑:问题是此警告将显示在从列表导入的每个文件上。我添加了一个来自maya的屏幕截图 我加载的文件如下所示: cmd

嘿,我正在通过python将文件列表导入maya场景

每次导入.obj时,maya都会向我发出以下警告:

Warning: Option "Use legacy vertex order" will only take effect when option "Multiple Objects" is enabled.
我的问题:是否可以关闭此警告?或者一开始就不显示警告的方式

编辑:问题是此警告将显示在从列表导入的每个文件上。我添加了一个来自maya的屏幕截图

我加载的文件如下所示:

cmds.file(filePath, i = True)
edit2:这是我的函数,它循环遍历目录中的文件

def loadFiles(*args):
# load References into scene from savefile

files = 'c:/testfolder'

if os.path.exists(files):

    filesInFolder = [f for f in listdir(files) if isfile(join(files, f))]

    for file in filesInFolder:

        filePath = files + '/' + file
        #cmds.file(filePath, i = True)
        mel.eval("catchQuiet(`python(\"cmds.file(filePath, i=True)\")`)")

        #print filePath

谢谢你抽出时间,祝你度过愉快的一天

尝试此操作以关闭脚本编辑器中的错误、警告和信息:

import maya.cmds as cmds

filePath="/Users/swift/Desktop/file.ma"
cmds.file(filePath,i=True)

cmds.scriptEditorInfo(suppressErrors=True)
cmds.scriptEditorInfo(suppressWarnings=True)
cmds.scriptEditorInfo(suppressInfo=True)
或者尝试此方法仅用于警告:

cmds.warning()
print '',
然后,再次打开它们:

cmds.scriptEditorInfo(se=False,sw=False,si=False)

Maya有一个名为
catchQuiet
的函数,这是抑制警告/错误消息的最简单方法。如果表达式抛出错误,它将返回
1
,否则
0

catchQuiet(python("cmds.file(\"/drive/myfile.obj\", i=True)"))
不幸的是,此函数只存在于
mel
中,但您可以使用
maya.cmds.mel
将其包装在python中执行

Python包装器

Python变体看起来有点令人讨厌,但这应该是可行的

mel.eval("catchQuiet(`python(\"cmds.file('/drive/myfile.obj', i=1)\")`)")

尽管这可能是一种解决方案,但关闭警告是一种不好的做法。这对我来说并不适用@andy。我知道这是一种不好的做法,但当出现此错误时,文件导入器在导入多个文件时节省时间并不能真正节省时间。谢谢您的回复。是的,在梅尔,我会用这个。但遗憾的是,我真的不知道如何将这个命令包装到python中。你能给我一个完整的例子吗?还添加了python包装器,谢谢你,但这对我不起作用。它不会导入我的文件。它是否会为您返回
0
1
?当我在代码中使用它时,不会返回任何内容。当我将它粘贴到scripteditor中时,它返回1L。我会用我的代码编辑我的帖子,也许这会有帮助。