gpt4 book ai didi

python - StickyNote节点标签清除

转载 作者:太空宇宙 更新时间:2023-11-03 20:19:41 25 4
gpt4 key购买 nike

我的总体想法是最终在创建 StickyNote 节点时添加一个按钮,单击该按钮将运行一个脚本,该脚本将给我一个弹出窗口,允许我更改值。我的第二个想法是,它只采用创建的默认值中的值并将其设置为空,而不是使用“在此处键入注释”创建时出现的默认值。

我试图将值设置为(“”),在我看来,那里不会有任何东西,但节点仍然使用“在此处键入注释”创建


def setColor(R,G,B):
return int("%02x%02x%02x%02x" % (R,G,B,1),16)

def StickyNoteOverride():
nuke.thisNode()["tile_color"].setValue(setColor(R=(255*.298),G=(255*.298),B=(255*.298)))
nuke.thisNode()["note_font_size"].setValue(60)
nuke.thisNode()["note_font_color"].setValue(setColor(R=(255),G=(255*.624),B=(255*.0)))
nuke.thisNode()["note_font"].setValue("Deja Vu Sans Bold")
nuke.thisNode()["label"].setValue("")
####nuke.thisNode()['label'].setText("")
####nuke.thisNode()['label'].setText("1")

nuke.addOnUserCreate(StickyNoteOverride, nodeClass = "StickyNote")

到目前为止,我预期的代码也做了我想要的一切,除了将 usercreate 值的默认值更改为字段中的任何值,或者更改为我通过 .setText 使用的值 1 来打印其中的任何内容字段或更改字段。尝试在已创建的 StickyNote 上更改 .setText 以更改值。运行 .setText("1) 时,该值随 .getValue 用法返回,因为字段中的值为 1。但实际节点根本没有改变。而且我陷入了仅更改标签值的困境在我进一步学习如何创建用户定义的按钮之前。

最佳答案

它仅适用于两种变体 - 对于字符串值 "Lorem Ipsum Dolor..." 和空字符串 "":

def stickyNoteOverridden():
colour = int('%02x%02x%02x%02x' % (0,128,64,1),16) # Greenish
nuke.thisNode()["tile_color"].setValue(colour)
nuke.thisNode()["note_font_size"].setValue(60)
nuke.thisNode()["note_font_color"].setValue(100)
nuke.thisNode()["note_font"].setValue("Deja Vu Sans Bold")

# nuke.thisNode()["label"].setValue("Lorem Ipsum Dolor...")
# nuke.thisNode()["label"].setValue("")

nuke.addOnUserCreate(stickyNoteOverridden, nodeClass = "StickyNote")
nuke.createNode("StickyNote")

这里的关键时刻是使用 .createNode() 命令:

nuke.createNode("StickyNote")

在 macOS Mojave 10.14.6 上的 NukeX 11v3.5 NC 中进行了测试。

关于python - StickyNote节点标签清除,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58241334/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com