Hi,
I am trying to add parameters with the same name to a node using python.
Looking at the output of asCode() on a node I thought I could use name# so that houdini would automatically add name1, name2 etc if the names were the same
parm_group = n.parmTemplateGroup()
hou_parm_template2 = hou.ToggleParmTemplate(“passOn#”, “Pass On”, default_value=True, disable_when=“”)
hou_parm_template3 = hou.ToggleParmTemplate(“passOn#”, “Pass On”, default_value=True, disable_when=“”)
parm_group.appendToFolder((“Passes”, ), hou_parm_template2)
parm_group.appendToFolder((“Passes”, ), hou_parm_template3)
n.setParmTemplateGroup(parm_group)
errors with …
Traceback (most recent call last):
File “<console>”, line 1, in <module>
File “/opt/hfs11.0.426/houdini/python2.6libs/hou.py”, line 5040, in setParmTemplateGroup
def setParmTemplateGroup(*args, **kwargs): return _hou.Node_setParmTemplateGroup(*args, **kwargs)
OperationFailed: The attempted operation failed.
Parameter name ‘passOn#’ is invalid or already exists
I was looking at the .asCode of a mantra node as an example which had ..
hou_parm_template4 = hou.FloatParmTemplate(“vm_gain_plane#”, “Gain”, 1, default_value), min=0.001, max=10, min_is_strict=False, max_is_strict=False, look=hou.parmLook.Regular, naming_scheme=hou.parmNamingScheme.Base1)
I am not sure why “vm_gain_plane#” worked on the mantra node but my “passOn#”
in the first example doesn't
Thanks in advance
Stephen
Automatically adding parameters with the same name in python
5508 2 0- anon_user_47126064
- Member
- 24 posts
- Joined: Feb. 2010
- Offline
- Ondrej
- Staff
- 1072 posts
- Joined: July 2005
- Offline
jumper
I am trying to add parameters with the same name to a node using python.
Looking at the output of asCode() on a node I thought I could use name# so that houdini would automatically add name1, name2 etc if the names were the same
parm_group = n.parmTemplateGroup()
hou_parm_template2 = hou.ToggleParmTemplate(“passOn#”, “Pass On”, default_value=True, disable_when=“”)
hou_parm_template3 = hou.ToggleParmTemplate(“passOn#”, “Pass On”, default_value=True, disable_when=“”)
parm_group.appendToFolder((“Passes”, ), hou_parm_template2)
parm_group.appendToFolder((“Passes”, ), hou_parm_template3)
n.setParmTemplateGroup(parm_group)
The # is a special symbol used for parameters instanced via a multi-parm, and shouldn't be used outside of this context.
- anon_user_47126064
- Member
- 24 posts
- Joined: Feb. 2010
- Offline
-
- Quick Links