hou.NodeTypeCategory class

Represents a category of node types, such as surface nodes (SOPs) or particle nodes (POPs).

Subclasses: hou.ShopNodeTypeCategory

See also: hou.nodeTypeCategories, hou.objNodeTypeCategory, hou.sopNodeTypeCategory, hou.popNodeTypeCategory 12 more , hou.dopNodeTypeCategory, hou.cop2NodeTypeCategory, hou.shopNodeTypeCategory_, hou.vopNodeTypeCategory, hou.ropNodeTypeCategory, hou.chopNodeTypeCategory, hou.popNetNodeTypeCategory, hou.cop2NetNodeTypeCategory, hou.vopNetNodeTypeCategory, hou.chopNetNodeTypeCategory, hou.managerNodeTypeCategory, hou.rootNodeTypeCategory

Use hou.nodeTypeCategories to get a dict of node type category names to NodeTypeCategory objects. You can use hou.objNodeTypeCategory, hou.sopNodeTypeCategory, etc. to directly access a particular node type category.

See also hou.NodeType and hou.Node.

# Get the names of all the node type categories.
>>> hou.nodeTypeCategories().keys()
['Shop', 'Cop2', 'CopNet', 'Particle', 'ChopNet', 'Object', 'Driver', 'Pop',
'Chop', 'Sop', 'Manager', 'Vop', 'Director', 'Dop', 'VopNet']

Methods

loadDSO(self, dso_path)

Loads the HDK custom operator identified by the given file path for this node type category. It will use the HOUDINI_DSO_PATH environment variable to find it if necessary.

name(self)str

Returns the name of this node type category.

nodeTypes(self)dict of str to hou.NodeType

Return a dict mapping node type names to node types in this category.

For example, if this node type category is SOPs, the keys in the dictionary would be “box”, “sphere”, “polyextrude”, “subdivide”, etc.

Note that the node types in this category may not all be instances of the same class. For example, most node types in the SOP node type category are instances of hou.SopNodeType, but some, like SHOP networks, CHOP networks, etc. are not.

# Access the box SOP's node type.
hou.sopNodeTypeCategory().nodeTypes()['box']
def findNodeTypes(node_type_category, pattern):
    '''Return a list of node types in a particular node type category
       whose names match a pattern.'''
    import fnmatch

    return [node_type
        for node_type_name, node_type in node_type_category.nodeTypes().items()
        if fnmatch.fnmatch(node_type_name, pattern)]

See also hou.nodeType_.

scriptDirName(self)

Not implemented yet

viewerStates(self, viewer_type)tuple of hou.ViewerState

Not documented yet