我试着在玛雅解决这个问题:
例如,我想要一个可以隐藏我未选中的灯光的脚本,所以唯一能想到(但不起作用)的方法是:

lt=cmds.ls(lt=True,sl=False)
cmds.hide(lt)

我发现选择错误的论点不起作用,所以我想找出其他一些方法…谢谢

最佳答案

我想大多数答案都是关于过度工程的。问题是如何在操作结束时隐藏未选定的灯光,没有任何东西表明不能将它们全部隐藏并将选定的灯光带回来。因此,在概念上更容易做到(而且速度稍快,但这与重点无关):

cmds.hide(cmds.ls(lights=True, dag=True))
cmds.showHidden()

一条评论:在这种情况下不需要单独获取形状,因为它有一个dag标志。从概念上看,Maya项分别是变换包和形状包。但是,它的常见情况是,您希望在shape和dag之间转换为ls提供了一种使用dag和shapes标志的方法的shape。
第二个注释:如果不将列表传递给Maya,它将对选择进行操作,这就是showHidden在没有任何数据的情况下工作的原因。
注:从概念上讲,我的答案和@theodox答案在所有情况下都不起作用,因为您可能确实选择了形状。然而,大多数用户不会这样做,所以它通常会这样工作。

10-05 22:39