我对 Python 比较陌生,需要一些帮助。这也是我在这个网站上的第一篇文章。我正在尝试更改已标记为“Plate”的读取节点中颜色空间旋钮的值。我想稍后使用该值。到目前为止,这是我的代码:
def LabelPlate():
n = nuke.thisNode()
if n != None:
label = n['label'].value()
n['label'].setValue('Plate')
def LabelLook():
name= "Plate"
for node in nuke.allNodes():
if name == node.knob("label").value():
return True
def LabelLookTwo():
name= "Plate"
for node in nuke.allNodes():
if name == node.knob("label").value():
return node.knob("name").value()
def PlateColorspaceSet():
n = LabelLookTwo()
if nuke.toNode("n")["colorspace"].value() == "default (sRGB)":
nuke.toNode("n")["colorspace"].setValue("sRGB")
def LabelQuestion():
if LabelLook() != True:
if nuke.ask('Is this Read your main Plate?'):
LabelPlate()
PlateColorspaceSet()
nuke.addOnUserCreate(LabelQuestion, nodeClass = 'Read')
所以事件顺序:
- 引入读取节点
询问读取节点是否是您的主要板块
一个。如果是,将节点标记为“Plate”,继续执行步骤 3
b。如果否,则引入未标记的读取节点将标记为“Plate”的节点中的颜色空间从默认值更改为实际值。
到目前为止,我可以完成前两个步骤。但在第 3 步,我得到
“‘NoneType’对象没有属性‘ getitem ’”
任何想法为什么?有没有更好的方法来获取色彩空间值?