Click arrow on the exposed Group pararmeter in a subnet/HDA gives error...

   7336   5   1
User Avatar
Member
79 posts
Joined: Feb. 2008
Offline
Hi,

I'm trying to expose/promote the Group parameter of a node inside a subnet/HDA so I can manually select points from the subnet/HDA exposed/promoted parameter. It works if we type in the values manually or select a group from the list, but as soon as I click the little arrow to make a manual selection, Houdini pops up a “argument of type ‘NoneType’ is not iterable” error message. What's going on? How can I make this work?
User Avatar
Member
47 posts
Joined: Dec. 2016
Offline
Am having same issue. Ever find a solution Mathieu?
User Avatar
Member
79 posts
Joined: Feb. 2008
Offline
No
User Avatar
Member
453 posts
Joined: Feb. 2013
Offline
In the action button tab, replace the script with, the following and replace “keepMe” with the name of the node

import soputils
path = kwargs.path()+“/keepMe”
#keepMe is the name/relative path of the node we want to actually use.

kwargs = (hou.geometryType.Primitives,) #fix this for selection type
kwargs = hou.node(path)
kwargs = 0

soputils.selectGroupParm(kwargs)
User Avatar
Member
1 posts
Joined: March 2015
Offline
Hi,
I have the same issue,but now I solved it.

The original group nodes has the action button script is :
import soputils
kwargs['geometrytype'] = kwargs['node'].parmTuple('grouptype')
kwargs['inputindex'] = 0
soputils.selectGroupParm(kwargs)

If you want your hda has the same feature, you need to modified the script like this:
import soputils 
node = kwargs['node']
path = node.path() + "/split1" //the group node in your hda
split_node = hou.node(path) //the group node in your hda
kwargs['node'] = split_node //modifies the kwargs argments 'node'
kwargs['geometrytype'] = kwargs['node'].parmTuple('grouptype') 
kwargs['inputindex'] = 0 
soputils.selectGroupParm(kwargs)

I hope it's helpful
User Avatar
Member
8785 posts
Joined: July 2007
Offline
you don't need to reference or even have internal node that also uses group:
just either specify “grouptype” parameter on your HDA or define the type internally
import soputils
kwargs['geometrytype'] = hou.geometryType.Primitives
kwargs['inputindex'] = 0
soputils.selectGroupParm(kwargs)
Edited by tamte - Dec. 9, 2019 14:24:08
Tomas Slancik
FX Supervisor
Method Studios, NY
  • Quick Links