Nuke ChannelMask_Knob必需参数

时间:2017-10-13 17:33:31

标签: python nuke

我试图找出nuke.ChannelMask_Knob()函数所需的字符串参数对应的内容。在其他一些旋钮构造函数中,第一个参数似乎是名称/标签,但对于ChannelMask_Knob来说似乎不是这样......

我查看了Nuke Python API,但我不确定如何将其关注回适当的函数定义来回答我的问题。我的想法是,这与通过ChannelMask_Knob类重写的 init 函数有关,但根据API的参数列表只是“...”,我相信它意味着它与内置函数有关。由于我看不到 init 函数的主体,我不知道该参数用于什么,因此我的问题......

以下是我的问题的一个例子:

SELECT [otherColumn] 
INTO #Results 
FROM [myOtherTable]

SELECT * 
FROM [myTable]
WHERE [myColumn] IN (#Results)

这很好用,但我想知道“required_argument”的用途,因为它显然不是旋钮的名称或标签。

1 个答案:

答案 0 :(得分:0)

您必须在ChannelMask_Knob('')方法中为参数留出空白空间。它不起作用。但是,要分配namelabel,您需要分别使用.setName('name').setLabel('label')方法。它工作正常。

这是一段代码:

import nuke

noop = nuke.nodes.NoOp()
### maskKnob = nuke.ChannelMask_Knob('name', 'label', False)
maskKnob = nuke.ChannelMask_Knob('')
maskKnob.setName('name')
maskKnob.setLabel('label')
noop.addKnob(maskKnob)

要在此下拉菜单中选择频道,最好使用以下方法:

nuke.selectedNode().knob('name').setValue('alpha')
nuke.selectedNode().knob('name').setValue('disparity')