TechArt Chronicle

Library

Houdini / Tool

节点输入数量

import hou

# 获取选中的节点列表
node_list = hou.selectedNodes()

# 定义一个字典,用于存储属性模板的类型
parm_templates = {
    "int": hou.IntParmTemplate
}

def add_parameter(node):
    # 如果节点已经有名为 "num_inputs" 的参数,则先删除该参数
    if node.parm('num_inputs') is None:
        # 创建一个整数类型的参数模板
        parm_template = parm_templates["int"]('num_inputs', "Number of Inputs", 1)
        # 将参数模板插入到节点的参数模板组中
        node.addSpareParmTuple(parm_template)

# 遍历选中的每个节点
for node in node_list:
    # 添加一个表示输入数量的属性
    add_parameter(node)
    
    # 计算节点的输入连接数量
    num_inputs = len(node.inputs())
    
    # 设置 'num_inputs' 参数的值
    node.parm('num_inputs').set(num_inputs)