python - 如何将写节点附加到读节点?

标签 python nuke

嗯,我刚刚开始了解 Nuke 的 API。这里我导入素材:

nuke.nodes.Read(file="E:/Final/Practice/MVI_8411.mov", name="Footage")

选择了素材(并存储在变量中):

footage = nuke.toNode("Footage")

当我将其通过管道传输到 Write 节点时,它不起作用:

nuke.createNode("Write")

虽然我创建了一个写入节点,但它未连接到读取节点。我预计它会连接。 toNode() 函数不是在非 GUI 模式下选择节点吗?

最佳答案

特别注意节点图中的节点类别及其名称。在以下示例中,Read 是一个类,Read1 是一个名称。

因此请尝试使用此脚本来连接您的 Write 节点:

import nuke as nk
import nukescripts

nk.nodes.Read(file="E:/Final/Practice/MVI_8411.mov")
nk.toNode("Read1").setSelected(True)
nk.createNode("Write")
nukescripts.connect_selected_to_viewer(0)

或者这样:

import nuke as nk
import nukescripts    

nk.createNode("Read", "file E:/Final/Practice/MVI_8411.mov name footage")
nk.toNode("footage").setSelected(True)
nk.createNode("Write")
nukescripts.connect_selected_to_viewer(0)

要找出节点所属的类,请创建一个 CheckerBoard,选择它并按键盘上的 i 快捷键。您将看到它的类是 CheckerBoard2,其名称是 CheckerBoard1

如果您使用 class 2 的节点,您的行应如下所示:

nk.createNode("CheckerBoard2")
nk.toNode("CheckerBoard1").setSelected(True)
nk.createNode("Write")

或者你的语法将是这样的:

nk.nodes.CheckerBoard2(name="board")
nk.toNode("board").setSelected(True)
nk.createNode("Write")

...或者就像这样:

nk.createNode("CheckerBoard2", "name board")
nk.toNode("board").setSelected(True)
nk.createNode("Write")

关于python - 如何将写节点附加到读节点?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45666629/

相关文章:

python - 通过 Alembic Sc​​eneGraph 重命名 ReadGeo 节点

python - 如何将 Python 字典附加到 Pandas DataFrame,将键与列名匹配

python - 将 python 2 检查哈希转换为 python 3

python - joblib 中的 batch_size 和 pre_dispatch 到底是什么意思

python - The Foundry Nuke – 获取字体的文件路径

python - 使用 python 设置 nuke 中下拉菜单的默认值

python - 如何获取对象函数的输出作为变量

python - Python中有Rake等价物吗?

python - 我尝试在 nuke 脚本编辑中使用 Kivy,但它会转换 'unable to find any valuable Text provider at all'

python - Foundry Nuke 的重新格式化节点问题