Maya检查属性是否已启用/禁用

2024-10-03 23:20:38 发布

您现在位置:Python中文网/ 问答频道 /正文

几个小时以来,我一直在努力解决我在Maya/MEL/Python中遇到的问题。 我有一个脚本来设置流体容器的值。在

例如setAttr“fluidShape1.densityDisassusion”0.2

效果很好。。。在

我的问题是:实际上不可能使用接口更改值(请参见图片)。有没有办法找出是否启用了“文本框”?在

谢谢!!在

另外,我不能上传图片:(。但我希望你们明白我的意思


Tags: 脚本图片容器流体小时文本框效果maya
3条回答

要确定属性是否可设置,请使用

getAttr -settable your_object.your_attribute

如果可以使用setAttr设置属性,则返回1;如果不能,则返回0

如果该值在UI中灰显,则属性为锁定,则可以使用

^{pr2}$

如果UI中的值是紫色的,它是由某种连接驱动的,则需要使用hypergraph或listConnections命令来找出驱动它的原因,并决定是否要覆盖该连接。在

我已经尝试了-可设置的标志,但由于某些原因,这在我的案例中不起作用。在

好的,假设我创建了一个FluidContainer。使用以下命令,密度设置为零:

setAttr "fluidShape1.densityMethod" 0;

通过使用-setable标志

^{pr2}$

结果是1。但我无法更改相应的滑块。 但是仍然可以通过使用setAttr。。。这让我很困惑!在

好吧,我想我找到了解决问题的办法,但我想我可以做得更好。 我使用以下命令获取滑块和字段的“grougID”:

import maya.cmds as cmds
txt = "attrFieldSliderGrp214" 
cmds.attrFieldSliderGrp( txt, q=True, l=True ) # Density Scale

现在我可以通过以下方式使用启用字段:

^{pr2}$

相关问题 更多 >