QC Note
- 6月19日
- 読了時間: 2分
QCのメモ用ツール


修正のメモ用に使えます
Based on Compositing Academy NK606
set cut_paste_input [stack 0]
version 14.0 v4
StickyNote {
inputs 0
name QC_NOTE1
label "QC NOTE:\n ------------------------- \n"
note_font Verdana
note_font_size 41
selected true
xpos 10380
ypos 16839
bookmark true
addUserKnob {20 User}
addUserKnob {3 frame}
addUserKnob {22 set_frame -STARTLINE T "import math\ndef set_frame():\n\n\n frame = nuke.frame()\n frame_ceil = math.ceil(frame)\n\n\n nuke.thisNode()\['frame'].setValue(int(frame))\n\n\n return\nset_frame()"}
addUserKnob {22 allFrame -STARTLINE T "nuke.thisNode()\['frame'].setValue(0)"}
addUserKnob {1 note}
addUserKnob {26 ""}
addUserKnob {26 text_1 l "" +STARTLINE T " "}
addUserKnob {22 setLabel l "set label" T "import nuke\n\n\n\n\n\ndef qc_note():\n\n\n note = nuke.thisNode()\['note'].value()\n thisNode = nuke.thisNode()\n old_comment = nuke.thisNode()\['label'].value()\n frame = nuke.thisNode()\['frame'].value()\n frame_int = int(frame)\n\n\n if not frame_int == 0:\n thisNode\['label'].setValue(old_comment + \"\\n\" + str(frame_int)+ \": \"+ note)\n else:\n thisNode\['label'].setValue(old_comment + \"\\n\" + \"all\"+ \": \"+ note)\n thisNode\['note'].setValue(\"\")\n\n\n return\n\n\n\n\ndef sort_label():\n\n\n note = nuke.thisNode()\['label'].value()\n note_list = note.split(' ------------------------- ')\n note = \"\".join(note_list)\n note_list = note.split('\\n')\n del note_list\[0]\n\n\n def remove_elements(lst):\n return\[item for item in lst if item]\n\n\n note_list = remove_elements(note_list)\n note_list.sort()\n\n\n note = '\\n'.join(note_list)\n\n\n titleList = \[]\n titleList = \['QC NOTE:',' ------------------------- ','\\n']\n title = '\\n'.join(titleList) \n\n\n label = title + note+'\\n'\n\n\n nuke.thisNode()\['label'].setValue(label)\n\n\n\n\n\nqc_note()\nsort_label()" +STARTLINE}
addUserKnob {26 _1 l " " T " "}
addUserKnob {22 sort T "import nuke\n\n\nnote = nuke.thisNode()\['label'].value()\nnote_list = note.split(' ------------------------- ')\nnote = \"\".join(note_list)\nnote_list = note.split('\\n')\ndel note_list\[0]\n\n\ndef remove_elements(lst):\n return\[item for item in lst if item]\n\n\nnote_list = remove_elements(note_list)\n\n\nnote_list.sort()\n\n\nnote = '\\n'.join(note_list)\n\n\ntitleList = \[]\ntitleList = \['QC NOTE:',' ------------------------- ','\\n']\ntitle = '\\n'.join(titleList) \n\n\nlabel = title + note+'\\n'\n\n\nnuke.thisNode()\['label'].setValue(label)" +STARTLINE}
addUserKnob {22 reverse -STARTLINE T "import nuke\n\n\nnote = nuke.thisNode()\['label'].value()\nnote_list = note.split(' ------------------------- ')\nnote = \"\".join(note_list)\nnote_list = note.split('\\n')\ndel note_list\[0]\n\n\ndef remove_elements(lst):\n return\[item for item in lst if item]\n\n\nnote_list = remove_elements(note_list)\n\n\nnote_list.sort()\nnote_list.reverse()\n\n\nnote = '\\n'.join(note_list)\n\n\ntitleList = \[]\ntitleList = \['QC NOTE:',' ------------------------- ','\\n']\ntitle = '\\n'.join(titleList) \n\n\nlabel = title + note+'\\n'\n\n\nnuke.thisNode()\['label'].setValue(label)"}
addUserKnob {26 text_2 l " " T " "}
addUserKnob {22 setDate l "set dateTime" T "import nuke\nimport datetime\n\n\ndef set_daytime():\n\n\n thisNode = nuke.thisNode()\n old_comment = thisNode\['label'].value()\n current_time = datetime.datetime.now()\n timecode = \"\{:04d\}-\{:02d\}-\{:02d\}\\n\{:02d\}:\{:02d\}\".format(current_time.year,current_time.month,current_time.day,current_time.hour,current_time.minute)\n\n\n thisNode\['label'].setValue(old_comment + \"\\n ------------------------- \\n\" + timecode)\n\n\n return\n\n\nset_daytime()" +STARTLINE}
addUserKnob {22 deletedatetime l "delete dateTime" -STARTLINE T "import nuke\n\n\n\ndef delete_comment():\n\n\n\n old_comment_list = \[]\n thisNode = nuke.thisNode()\n old_comment = thisNode\['label'].value()\n old_comment_list = old_comment.split(\"-------------------------\")\n\n\n\n if len(old_comment_list) > 2:\n\n\n\n del old_comment_list\[2]\n old_comment = '-------------------------'.join(old_comment_list)\n new_old_comment_list = old_comment.split(\"\\n\")\n new_old_comment_list.pop()\n old_comment = '\\n'.join(new_old_comment_list) \n thisNode\['label'].setValue(old_comment)\n \n else:\n nuke.message(\"There is no datetime\")\n\n\n\n return\n\n\n\n\ndelete_comment()"}
addUserKnob {26 text l "" +STARTLINE}
addUserKnob {22 delete_checked l "delete checked" T "import nuke\n\n\ndef delete_checked():\n node = nuke.thisNode()\n text = node\['label'].value()\n text_list = text.split('\\n')\n filtered_list = \[item for item in text_list if '\[X]' in item]\n\n\n for item_to_remove in filtered_list:\n new_text_list = \[item for item in text_list if item != item_to_remove]\n text_list = new_text_list # 更新されたリストで次のループを実行\n\n\n new_text = '\\n'.join(text_list)\n node\['label'].setValue(new_text)\n\n\ndelete_checked()\n\n" +STARTLINE}
addUserKnob {22 deleteAll l "delete all" -STARTLINE T "def delete_comment():\n\n\n thisNode = nuke.thisNode()\n \n thisNode\['label'].setValue(\"QC NOTE:\\n ------------------------- \\n\")\n\n\n return\n\n\ndelete_comment()"}
addUserKnob {26 _2 l " " T " "}
addUserKnob {1 checkMark}
checkMark "\[X]"
}
コメント