Group { name GM_Round_Matte tile_color 0xffbb56ff selected true xpos 1390 ypos 1046 addUserKnob {20 User} addUserKnob {7 round1 l Roundness R 0 200} round1 40 addUserKnob {7 contr l "Edge Contrast"} contr 0.5 addUserKnob {26 ""} addUserKnob {6 conc l "Keep Concave Angle" +STARTLINE} conc true addUserKnob {6 prem l Premult +STARTLINE} prem true addUserKnob {26 ""} addUserKnob {7 mix l Mix} mix 1 addUserKnob {26 ""} addUserKnob {22 tut l Tutorial t "Opens the relevant tutorial from my site in your browser. " -STARTLINE T "import os\nimport sys\n\ntry:\n import subprocess\n def _run(cmd, shell, wait):\n opener = subprocess.Popen(cmd, shell=shell)\n if wait:\n opener.wait()\n return opener.pid\nexcept ImportError:\n import popen2\n def _run(cmd, shell, wait):\n opener = popen2.Popen3(cmd)\n if wait:\n opener.wait()\n return opener.pid\n\ndef _open(url, wait=0):\n if sys.platform == \"darwin\":\n cmd = \[\"open\", url]\n elif hasattr(os, \"startfile\"):\n return os.startfile(url)\n elif os.environ.has_key(\"KDE_FULL_SESSION\") or os.environ.has_key(\"KDE_MULTIHEAD\") or \\\n os.environ.has_key(\"GNOME_DESKTOP_SESSION_ID\") or os.environ.has_key(\"GNOME_KEYRING_SOCKET\"):\n cmd = \[\"xdg-open\", url]\n else:\n raise OSError, \"Desktop not supported.\"\n\n return _run(cmd, 0, wait)\n\n_open('https://www.gatimedia.co.uk/round-matte')\n"} addUserKnob {26 ""} addUserKnob {26 TEXT l "" +STARTLINE T "1.01 version"} addUserKnob {26 HeadlineB l "" +STARTLINE T "GM_Round_MatteĀ© by Attila Gasparetz"} } Input { inputs 0 name Input tile_color 0x555555ff xpos -370 ypos -586 } Dot { name Dot2 xpos -336 ypos -486 } set Nab011500 [stack 0] Dot { name Dot23 xpos -556 ypos -486 } set Nab011180 [stack 0] Clamp { name Clamp tile_color 0x555555ff xpos -700 ypos -496 } Group { name key_chew help "======== KeyChew beta ========\n=============================\n\nThis is a port of the KeyChew macro for Shake to Nuke.\n\nThere might be tiny differences on the results given in both apps. Some of them are caused by the internal algorithms of each app, and others by the way I faked the JSplineV\nexpression of Shake in Nuke. If you know a better way to solve this, let\nme know!!\n\n=============================\n 2009 Cuco Bures\n=============================" tile_color 0x555555ff xpos -810 ypos -490 addUserKnob {20 Controls} addUserKnob {7 chew t "\t\t" R -200 200} chew {{"- parent.round1"}} addUserKnob {7 soften R 0 200} addUserKnob {6 matteMult +STARTLINE} } Input { inputs 0 name Input xpos 0 } set Nab010a80 [stack 0] Dot { name Dot1 xpos 366 ypos 5 } set Nab010700 [stack 0] push $Nab010700 Invert { name Invert1 xpos 177 ypos 34 } push $Nab010700 Switch { inputs 2 which {{"\[value parent.chew]>=0?0:1"}} name Switch1 xpos 177 ypos 87 } Blur { size {{"(floor(abs(\[value parent.chew]))/4)+(floor(abs(\[value parent.chew]))/8)" i}} name FgEdgeBlur xpos 177 ypos 111 } Grade { channels alpha multiply {1 1 1 {max(FgEdgeBlur.size*1.5,1) i}} black_clamp false name FgEdgeMult xpos 177 ypos 165 } Grade { channels alpha gamma {1 1 1 {JSplineVFake(floor(abs(parent.chew))) i}} name FgEdgeGamma1 xpos 177 ypos 213 addUserKnob {20 User} addUserKnob {7 JSplineVFake} JSplineVFake {{curve i l 0.9958 k x5 0.95 0.8 x20 0.5 x40 0.3 x80 0.2 l x200 0.1}} } set Ncc9a3500 [stack 0] Merge2 { inputs 2 operation minus name Merge1 xpos 332 ypos 218 } push $Ncc9a3500 Switch { inputs 2 which {{"\[value parent.chew]>=0?0:1"}} name Switch2 xpos 177 ypos 284 } Clamp { name Clamp2 xpos 177 ypos 323 } Blur { size {{"(floor(abs(\[value parent.soften]))/4)+(floor(abs(\[value parent.soften]))/8)"}} name BlurResult xpos 177 ypos 446 } push $Nab010a80 ShuffleCopy { inputs 2 name ShuffleCopy1 xpos 0 ypos 451 } Premult { name Premult1 xpos 0 ypos 486 disable {{"1-\[value parent.matteMult]" i}} } Output { name Output1 xpos 0 ypos 556 } end_group Group { name key_chew2 help "======== KeyChew beta ========\n=============================\n\nThis is a port of the KeyChew macro for Shake to Nuke.\n\nThere might be tiny differences on the results given in both apps. Some of them are caused by the internal algorithms of each app, and others by the way I faked the JSplineV\nexpression of Shake in Nuke. If you know a better way to solve this, let\nme know!!\n\n=============================\n 2009 Cuco Bures\n=============================" tile_color 0x555555ff xpos -810 ypos -346 addUserKnob {20 Controls} addUserKnob {7 chew t "\t\t" R -200 200} chew {{"- parent.key_chew.chew"}} addUserKnob {7 soften R 0 200} addUserKnob {6 matteMult +STARTLINE} } Input { inputs 0 name Input xpos 0 } set Nab24d880 [stack 0] Dot { name Dot1 xpos 366 ypos 5 } set Nab24d500 [stack 0] push $Nab24d500 Invert { name Invert1 xpos 177 ypos 34 } push $Nab24d500 Switch { inputs 2 which {{"\[value parent.chew]>=0?0:1"}} name Switch1 xpos 177 ypos 87 } Blur { size {{"(floor(abs(\[value parent.chew]))/4)+(floor(abs(\[value parent.chew]))/8)" i}} name FgEdgeBlur xpos 177 ypos 111 } Grade { channels alpha multiply {1 1 1 {max(FgEdgeBlur.size*1.5,1) i}} black_clamp false name FgEdgeMult xpos 177 ypos 165 } Grade { channels alpha gamma {1 1 1 {JSplineVFake(floor(abs(parent.chew))) i}} name FgEdgeGamma1 xpos 177 ypos 213 addUserKnob {20 User} addUserKnob {7 JSplineVFake} JSplineVFake {{curve i l 0.9958 k x5 0.95 0.8 x20 0.5 x40 0.3 x80 0.2 l x200 0.1}} } set Nab24c380 [stack 0] Merge2 { inputs 2 operation minus name Merge1 xpos 332 ypos 218 } push $Nab24c380 Switch { inputs 2 which {{"\[value parent.chew]>=0?0:1"}} name Switch2 xpos 177 ypos 284 } Clamp { name Clamp2 xpos 177 ypos 323 } Blur { size {{"(floor(abs(\[value parent.soften]))/4)+(floor(abs(\[value parent.soften]))/8)"}} name BlurResult xpos 177 ypos 446 } push $Nab24d880 ShuffleCopy { inputs 2 name ShuffleCopy1 xpos 0 ypos 451 } Premult { name Premult1 xpos 0 ypos 486 disable {{"1-\[value parent.matteMult]" i}} } Output { name Output1 xpos 0 ypos 556 } end_group set Naf176800 [stack 0] Dot { name Dot1 xpos -776 ypos -246 } push $Naf176800 push $Nab011180 Merge2 { inputs 2 operation mask name Merge tile_color 0x555555ff xpos -590 ypos -346 } Switch { inputs 2 which {{parent.conc}} name Switch tile_color 0x555555ff xpos -590 ypos -250 } Grade { channels alpha blackpoint {{"parent.contr * .45"}} whitepoint {{"1 - ( blackpoint * 1.1) "}} white_clamp true name Grade tile_color 0x555555ff xpos -480 ypos -256 } push $Nab011500 Copy { inputs 2 from0 rgba.alpha to0 rgba.alpha mix {{parent.mix}} name Copy tile_color 0x555555ff xpos -370 ypos -256 } Premult { name Premult tile_color 0x555555ff xpos -370 ypos -34 disable {{"parent.prem == 0"}} } Output { name Output1 tile_color 0x555555ff xpos -370 ypos 38 } end_group