Nuke自定义Knob操作

节点里添加自定义knob

1
2
3
4
5
6
7
8
# 可以用这样的方法,查看knob类型
print nuke.selectedNode()["size"]
>>> Result: <WH_Knob object at xxxx>

# 给节点添加一个knob
node = nuke.selectedNode()
knob = nuke.Double_Knob("real_name", "label name")
node.addKnob(knob)

对knob的一些操作

1
2
3
4
5
6
# 对knob进行隐藏操作
node["Double_Knob"].setVisible(False)

# 使一个knob不可编辑
node["Double_Knob"].setEnabled(False)

自定义Knob概览

Knob 使用 描述
Array_Knob Array_Knob(name, label, int) 矢量
Color_Knob Color_Knob(name, label) RGB
AColor_Knob AColor_Knob(name, label) RGBA
Eyedropper_Knob Eyedropper_Knob(name, label) 取色
BBox_Knob BBox_Knob(name, label) 边界框
Enumeration_Knob Enumeration_Knob(name, label, list) 下拉框
Bitmask_Knob Bitmask_Knob(name, label, list) 多选
Radio_Knob Radio_Knob(name, label, list) 单选
ColorChip_Knob ColorChip_Knob(name, label) 取色
Boolean_Knob Boolean_Knob(name, label) 选择
Double_Knob Double_Knob(name, label) 小数
Int_Knob Int_Knob(name, label) 整数
Keyer_Knob Keyer_Knob(name, label) Keyer
Channel_Knob Channel_Knob(name, label) 通道
EvalString_Knob EvalString_Knob(name, label) 文本
File_Knob File_Knob(name, label) 文件
PyScript_Knob PyScript_Knob(name, label, str) 按钮
Font_Knob Font_Knob(name, label) 字体
Format_Knob Format_Knob(name, label) 格式
Text_Knob Text_Knob(name, label) 分割线