Как получить параметр узла в Houdini с Python - PullRequest
0 голосов
/ 06 мая 2019

Я очень новичок в Гудини, и это может быть что-то очень очевидное, чтобы спросить, но я попал в кирпичную стену. Я хотел бы сохранить параметр, в частности, имя файла объекта alembic, чтобы я мог проверить имя файла, чтобы увидеть, соответствует ли оно соглашению пространства имен

Property I am trying to get circled in red

Вот все, что у меня есть

import hou

node = hou.node('obj/alembic1/alembic1')

после получения узла, как мне получить свойство File Name? Любое руководство с благодарностью

1 Ответ

1 голос
/ 09 мая 2019

Существует два основных способа:

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 ().Обратитесь к справке здесь .

Вы можете увидеть имя параметра, которое будет использоваться в вашем коде, когда вы наводите курсор на имя параметра, к которому вы хотите получить доступ, в окне параметров.То есть, если вы наведите курсор на «Имя файла» в узле Alembic, он покажет:

Параметр: fileName

...