如何使用 Python 在 Houdini 中获取节点参数
How to get node parameter in Houdini with Python
我对 Houdini 非常陌生,这可能是一个很明显的问题,但我遇到了困难。我想存储一个参数,特别是 alembic 对象的文件名,以便我可以验证文件名以查看它是否遵循命名空间约定
以下是我的全部
import hou
node = hou.node('obj/alembic1/alembic1')
获取节点后,如何获取文件名属性?非常感谢任何指导
主要有两种方式:
1 正如您开始在代码中所做的那样,访问节点然后访问节点的 parm HOM 方法:
parm = hou.node('obj/alembic1/alembic1').parm('fileName')
2 直接使用hou.parm:
parm = hou.parm('obj/alembic1/alembic1/fileName')
parm是一个表示参数的对象,要获取参数的值需要调用它的eval方法:
parmval = parm.eval()
通常情况是这样的:
node = hou.node('obj/alembic1/alembic1')
parmVal = node.parm('fileName').eval()
请注意,parm.eval() 适用于大多数情况,但有时您可能需要更详细的方法,例如 parm.evalAsNode()。查看帮助 here.
将鼠标悬停在参数 window 中要访问的参数名称上时,您可以看到要在代码中使用的参数名称。也就是说,如果您将鼠标悬停在 Alembic 节点中的 "File Name" 上,它将显示:
Parameter: fileName
我对 Houdini 非常陌生,这可能是一个很明显的问题,但我遇到了困难。我想存储一个参数,特别是 alembic 对象的文件名,以便我可以验证文件名以查看它是否遵循命名空间约定
以下是我的全部
import hou
node = hou.node('obj/alembic1/alembic1')
获取节点后,如何获取文件名属性?非常感谢任何指导
主要有两种方式:
1 正如您开始在代码中所做的那样,访问节点然后访问节点的 parm HOM 方法:
parm = hou.node('obj/alembic1/alembic1').parm('fileName')
2 直接使用hou.parm:
parm = hou.parm('obj/alembic1/alembic1/fileName')
parm是一个表示参数的对象,要获取参数的值需要调用它的eval方法:
parmval = parm.eval()
通常情况是这样的:
node = hou.node('obj/alembic1/alembic1')
parmVal = node.parm('fileName').eval()
请注意,parm.eval() 适用于大多数情况,但有时您可能需要更详细的方法,例如 parm.evalAsNode()。查看帮助 here.
将鼠标悬停在参数 window 中要访问的参数名称上时,您可以看到要在代码中使用的参数名称。也就是说,如果您将鼠标悬停在 Alembic 节点中的 "File Name" 上,它将显示:
Parameter: fileName