This commit is contained in:
Jakub Trllo 2019-01-02 15:46:53 +01:00
parent 9e5b648aa2
commit c55181548c
2 changed files with 30 additions and 19 deletions

View file

@ -14,8 +14,8 @@ class CrateRead(avalon.nuke.Creator):
name = "ReadCopy"
label = "Create Read Copy"
hosts = ["nuke"]
# family = "read"
family = "source"
families = family
icon = "sign-out"
def __init__(self, *args, **kwargs):
@ -23,7 +23,7 @@ class CrateRead(avalon.nuke.Creator):
data = OrderedDict()
data['family'] = self.family
data['families'] = self.family
{data.update({k: v}) for k, v in self.data.items()
if k not in data.keys()}
self.data = data
@ -35,24 +35,32 @@ class CrateRead(avalon.nuke.Creator):
if not nodes or len(nodes) == 0:
nuke.message('Please select Read node')
elif len(nodes) == 1:
if nodes[0].Class() != 'Read':
nuke.message('Please select Read node')
else:
node = nodes[0]
name = node["name"].value()
avalon_data = self.data
avalon_data['subset'] = "{}_{}".format(self.family, name)
change_read_node(self.data["subset"], node, avalon_data)
else:
count_reads = 0
for node in nodes:
if node.Class() != 'Read':
continue
name = node["name"].value()
avalon_data = self.data
avalon_data['subset'] = "{}_{}".format(self.family, name)
change_read_node(self.data["subset"], node, avalon_data)
self.change_read_node(self.data["subset"], node, avalon_data)
count_reads += 1
if count_reads < 1:
nuke.message('Please select Read node')
return
def change_read_node(self, name, node, data):
node = avalon.nuke.lib.imprint(node, data)
node = self.add_transfer_knob(node)
node['tile_color'].setValue(16711935)
def change_read_node(name, node, data):
node = avalon.nuke.lib.imprint(node, data)
node['tile_color'].setValue(16711935)
def add_transfer_knob(self, node):
knob_name = "transferSource"
knob_label = "Transfer"
if knob_name not in node.knobs():
knob = nuke.Boolean_Knob(knob_name, knob_label)
knob.setValue(True)
knob.setFlag(nuke.STARTLINE)
node.addKnob(knob)
return node

View file

@ -48,8 +48,6 @@ class CollectNukeReads(pyblish.api.ContextPlugin):
isSequence = True
# # Get frame range
# first_frame = int(nuke.root()["first_frame"].getValue())
# last_frame = int(nuke.root()["last_frame"].getValue())
first_frame = node['first'].value()
last_frame = node['last'].value()
@ -72,12 +70,17 @@ class CollectNukeReads(pyblish.api.ContextPlugin):
int(first_frame),
int(last_frame)
)
nuke.message(str(source_files))
self.log.debug("collected_frames: {}".format(label))
if "files" not in instance.data:
instance.data["files"] = list()
instance.data["files"] = source_files
instance.data['transfer'] = False
transfer = False
if "transferSource" in node.knobs():
transfer = node["transferSource"]
instance.data['transfer'] = transfer
self.log.debug("checking for error: {}".format(label))
instance.data.update({