set cut_paste_input [stack 0] BackdropNode { inputs 0 name BackdropNode3 tile_color 0x676767ff label "
Test Images" note_font Helvetica note_font_size 18 note_font_color 0xffffffff selected true xpos 1223 ypos -3219 bdwidth 333 bdheight 317 z_order -10 } BackdropNode { inputs 0 name BackdropNode4 tile_color 0x392d3aff label "
Per-Channel" note_font Helvetica note_font_size 18 note_font_color 0xffffffff selected true xpos 1241 ypos -2799 bdwidth 299 bdheight 438 z_order -10 } BackdropNode { inputs 0 name BackdropNode5 tile_color 0x1f2c3aff label "
Chromaticity Preserving" note_font Helvetica note_font_size 18 note_font_color 0xffffffff selected true xpos 1565 ypos -2799 bdwidth 299 bdheight 438 z_order -10 } Group { inputs 0 name Planckian_Locus_XYZ note_font Helvetica selected true xpos 1280 ypos -3123 postage_stamp true } Constant { inputs 0 name Constant13 note_font Helvetica xpos 40 ypos -629 postage_stamp false } Reformat { type "to box" box_width 512 box_height 100 box_fixed true name ReformatBox3 xpos 40 ypos -600 } Expression { temp_name0 n temp_expr0 input.width/8 channel0 {rgba.red rgba.green rgba.blue none} expr0 x/width*(1-y/height) channel3 alpha expr3 1 name Expression6 xpos 40 ypos -528 } set Nc07a0af0 [stack 0] Dot { name Dot65 xpos 184 ypos -524 } ColorLookup { lut {master {curve L 0 s0 t0.9499999881 C k x0.308139503 1 s0} red {} green {} blue {} alpha {}} name ColorLookup8 xpos 150 ypos -480 } Dot { name Dot66 xpos 184 ypos -380 } push $Nc07a0af0 Multiply { channels rgb value 269 name Multiply9 label "\[value value]" xpos 40 ypos -486 } ColorLookup { lut {master {} red {curve C 1.8783474 1.85965741 1.8410753 1.82260251 1.80424976 1.78602886 1.76794314 1.75000143 1.73221421 1.71458244 1.69711792 1.67982578 1.66271067 1.6457777 1.62903571 1.6124835 1.59613538 1.57998943 1.56404996 1.54832447 1.5328095 1.51751649 1.50244594 1.48759735 1.47297573 1.45858264 1.44442391 1.43049574 1.41680288 1.40334678 1.39012623 1.37714779 1.36440396 1.35190022 1.33963728 1.32761216 1.31582856 1.30428183 1.29297352 1.28190565 1.27107596 1.2604804 1.25012183 1.23999798 1.23010659 1.22044563 1.21101499 1.20181489 1.19284034 1.18408906 1.17556167 1.16725397 1.15916491 1.15129638 1.14363372 1.13618886 1.12895167 1.12192106 1.11509454 1.10846853 1.10204577 1.09580922 1.08977199 1.08392429 1.07826447 1.07278681 1.06749392 1.06237841 1.05743873 1.05267084 1.04807138 1.04364109 1.03937256 1.03526449 1.03131545 1.02751946 1.02387333 1.02037668 1.01702523 1.01381445 1.01074362 1.00780725 1.00500631 1.00233305 0.99978602 0.99736285 0.9950608 0.99287677 0.99080539 0.98884678 0.98699367 0.9852494 0.98361033 0.98206747 0.98062134 0.97926998 0.97800934 0.97683728 0.97575116 0.97474778 0.97382426 0.97297859 0.97220623 0.97150886 0.97087657 0.97031689 0.96981871 0.96938527 0.96900952 0.96869147 0.96842706 0.96821606 0.96805781 0.96794283 0.96787858 0.96785843 0.96787864 0.96793604 0.96803701 0.96817231 0.96833968 0.96854311 0.96877253 0.96903455 0.96932232 0.96963543 0.96997368 0.97033387 0.97071254 0.9711163 0.97153723 0.97197378 0.97242606 0.97289121 0.97337079 0.97386622 0.97437072 0.97488332 0.97540969 0.97594237 0.97647977 0.97702706 0.97757769 0.97813445 0.97869468 0.97925854 0.97982538 0.98039114 0.98096472 0.98153675 0.98210776 0.98267955 0.98325121 0.98382008 0.98438704 0.9849571 0.98552132 0.98608243 0.98664182 0.98719966 0.98775077 0.98829895 0.98884273 0.98938417 0.98991877 0.9904511 0.99097681 0.99149919 0.99201453 0.99252397 0.99303031 0.99353105 0.99402624 0.99451613 0.99499857 0.99547589 0.99594522 0.99641174 0.99687338 0.99732745 0.99777603 0.9982177 0.99865389 0.999084 0.99950838 0.99992663 1.00033772 1.00074494 1.00114489 1.00153947 1.00192833 1.00231075 1.00268865 1.00305855 1.00342607 1.00378489 1.00413895 1.00448751 1.00483036 1.00517035 1.00550389 1.00583148 1.00615203 1.00646758 1.00678015 1.00708604 1.00738645 1.00768471 1.00797844 1.0082655 1.00854778 1.00882483 1.00909901 1.00936711 1.00963116 1.00989032 1.0101465 1.01039672 1.01064491 1.01088691 1.0111258 1.01135957 1.01158977 1.01181614 1.01203847 1.01225793 1.01247287 1.01268291 1.01289058 1.01309609 1.01329684 1.01349473 1.0136888 1.0138787 1.01406395 1.01424909 1.01442885 1.01460576 1.01478052 1.01495218 1.01512218 1.01528883 1.01545072 1.01561022 1.01576698 1.01592219 1.01607502 1.01622343 1.01636875 1.0165143 1.01665616 1.01679492 1.0169313 1.01706588 1.01719737 1.01732695 1.01745498 1.01757956 1.01770294 1.01782393 1.01794255 1.0180583 1.01817465 1.01828551 1.01839495 1.01850486 1.01861191 1.01871693 1.01882088 1.01891339} green {curve C 1} blue {curve C 0.00879261 0.00962762 0.010532 0.01151017 0.01256675 0.01370643 0.01493413 0.01625487 0.01767381 0.01919618 0.02082733 0.02257277 0.02443803 0.02642871 0.02855051 0.03080913 0.0332104 0.0357601 0.03846392 0.04132775 0.04435719 0.04755813 0.05093599 0.05449668 0.0582453 0.0621875 0.06632853 0.07067341 0.07522713 0.07999477 0.08498063 0.09018957 0.09562518 0.10129225 0.10719412 0.11333443 0.11971687 0.12634411 0.133219 0.14034435 0.14772213 0.15535444 0.16324303 0.17138906 0.179794 0.18845794 0.197382 0.20656651 0.21601067 0.22571453 0.23567709 0.24589771 0.25637382 0.26710594 0.2780903 0.28932518 0.30080822 0.3125369 0.32450783 0.33671761 0.34916404 0.36183971 0.37474373 0.38787127 0.40121818 0.41477671 0.42854655 0.44251823 0.45668846 0.47105014 0.48559928 0.50033116 0.5152359 0.5303098 0.5455451 0.56093836 0.5764783 0.59215891 0.60797763 0.62392306 0.63999057 0.65616876 0.6724565 0.68884456 0.70532417 0.72188419 0.73852479 0.7552371 0.77200818 0.78883314 0.80570388 0.82261622 0.83956301 0.8565321 0.87351894 0.89051074 0.90751225 0.92450547 0.94148719 0.95845115 0.97538745 0.99229181 1.00915313 1.02597356 1.04273522 1.05944169 1.07608175 1.09265125 1.10914159 1.12555146 1.14187002 1.15809321 1.1742171 1.190238 1.20614767 1.22194457 1.23762202 1.2531724 1.26859927 1.28389311 1.29905295 1.31407428 1.32895291 1.34368753 1.35827363 1.3727088 1.38699389 1.40111876 1.41508293 1.42889357 1.44254065 1.45602405 1.46934104 1.48249614 1.49548101 1.50830269 1.5209527 1.53343177 1.54574537 1.5578897 1.56985986 1.5816654 1.59329891 1.60476208 1.61605716 1.62718153 1.63813758 1.64892519 1.65955138 1.67000985 1.68030369 1.69043732 1.70040607 1.71021223 1.71985734 1.72934508 1.73867714 1.74785423 1.75688136 1.76575518 1.77447391 1.78304338 1.79146802 1.79975164 1.80788386 1.81587982 1.82373333 1.83144975 1.83902776 1.84647095 1.85378456 1.86096811 1.86802399 1.87495112 1.88175035 1.88842535 1.89497983 1.90141833 1.90774179 1.91394711 1.92004013 1.92602086 1.93188739 1.93765306 1.94330883 1.94886208 1.95430994 1.95965815 1.96490622 1.97005856 1.97511387 1.98007631 1.98494554 1.98972344 1.99441445 1.99901712 2.00353193 2.00796437 2.01231384 2.01658392 2.02076721 2.02487659 2.02890825 2.03286695 2.03675175 2.04056406 2.04430199 2.04797506 2.05157685 2.05511236 2.0585804 2.06198287 2.06532407 2.06860161 2.07181907 2.07497644 2.07807779 2.0811162 2.08409977 2.08702946 2.08990335 2.09272337 2.09549189 2.0982089 2.10087585 2.10349345 2.10606146 2.1085825 2.11105394 2.11348104 2.11586332 2.11820364 2.12050176 2.12275648 2.12496805 2.127141 2.12927723 2.13136625 2.13341999 2.13543844 2.13741732 2.13936305 2.1412704 2.1431427 2.14498401 2.14678812 2.14856291 2.1503005 2.15200949 2.15368938 2.15533352 2.15695238 2.15853977 2.16009951 2.16162968 2.16313291 2.16460824 2.16605687 2.16747928 2.16887903 2.17024994 2.1715951 2.17291784 2.17421341 2.17548871 2.17674041 2.17797112 2.17918396 2.18036819 2.18143296} alpha {}} name ColorLookup9 label "Planckian Locus 0-269" xpos 40 ypos -442 } Multiply { inputs 1+1 channels rgb value 0 maskChannelMask rgba.red invert_mask true name Multiply10 label dim xpos 40 ypos -390 } Output { name Output1 xpos 40 ypos -290 } end_group Group { name GamutConvert6 tile_color 0xbd91c9ff label "\[if \{\[value invert]\} \{return \"\[value dst_colorspace_name] to \[value src_colorspace_name]\"\} else \{return \"\[value src_colorspace_name] to \[value dst_colorspace_name]\"\}]" selected true xpos 1280 ypos -3016 addUserKnob {20 GamutConvert_tab l GamutConvert} addUserKnob {26 gamut_chromaticities_label l " " T "SRC Gamut Chromaticity Coordinates"} addUserKnob {35 src_presets l preset M {gamut/ACES "knobs this \{rxy \{0.73470 0.26530\} gxy \{0.00000 1.00000\} bxy \{0.00010 -0.07700\} wxy \{0.32168 0.33767\} src_colorspace_name \{ACES\}\}; python -exec nuke.thisNode().knob('calculate_matrix').execute()" gamut/ACEScg "knobs this \{rxy \{0.713 0.293\} gxy \{0.165 0.830\} bxy \{0.128 0.044\} wxy \{0.32168 0.33767\} src_colorspace_name \{ACEScg\}\}; python -exec nuke.thisNode().knob('calculate_matrix').execute()" "gamut/Filmlight E-Gamut" "knobs this \{ rxy \{0.8 0.3177\} gxy \{0.18 0.9\} bxy \{0.065 -0.0805\} wxy \{0.3127 0.329\} src_colorspace_name \{Filmlight E-Gamut\}\}; python -exec nuke.thisNode().knob('calculate_matrix').execute()" "gamut/DaVinci WG" "knobs this \{ rxy \{0.8 0.3130\} gxy \{0.1682 0.9877\} bxy \{0.079 -0.1155\} wxy \{0.3127 0.329\} src_colorspace_name \{DaVinci WG\}\}; python -exec nuke.thisNode().knob('calculate_matrix').execute()" gamut/Rec709 "knobs this \{rxy \{0.64000 0.33000\} gxy \{0.30000 0.60000\} bxy \{0.15000 0.06000\} wxy \{0.3127 0.329\} src_colorspace_name \{Rec709\}\}; python -exec nuke.thisNode().knob('calculate_matrix').execute()" gamut/Rec2020 "knobs this \{rxy \{0.70800 0.29200\} gxy \{0.17000 0.79700\} bxy \{0.13100 0.04600\} wxy \{0.3127 0.329\} src_colorspace_name \{Rec2020\}\}; python -exec nuke.thisNode().knob('calculate_matrix').execute()" gamut/P3D60 "knobs this \{rxy \{0.68000 0.32000\} gxy \{0.26500 0.69000\} bxy \{0.15000 0.06000\} wxy \{0.32168 0.33767\} src_colorspace_name \{P3D60\}\}; python -exec nuke.thisNode().knob('calculate_matrix').execute()" gamut/P3D65 "knobs this \{rxy \{0.68000 0.32000\} gxy \{0.26500 0.69000\} bxy \{0.15000 0.06000\} wxy \{0.3127 0.329\} src_colorspace_name \{P3D65\}\}; python -exec nuke.thisNode().knob('calculate_matrix').execute()" gamut/P3DCI "knobs this \{rxy \{0.68000 0.32000\} gxy \{0.26500 0.69000\} bxy \{0.15000 0.06000\} wxy \{0.314 0.351\} src_colorspace_name \{P3DCI\}\}; python -exec nuke.thisNode().knob('calculate_matrix').execute()" "gamut/Arri AlexaWideGamut" "knobs this \{rxy \{0.68400 0.31300\} gxy \{0.22100 0.84800\} bxy \{0.08610 -0.10200\} wxy \{0.3127 0.329\} src_colorspace_name \{Arri AlexaWideGamut\}\}; python -exec nuke.thisNode().knob('calculate_matrix').execute()" gamut/REDDRAGONcolor "knobs this \{rxy \{0.753044222785 0.327830576682\} gxy \{0.299570228481 0.700699321956\} bxy \{0.079642066735 -0.0549379510888\} wxy \{0.321683187724 0.337673316035\} src_colorspace_name \{REDDRAGONcolor\}\}; python -exec nuke.thisNode().knob('calculate_matrix').execute()" gamut/REDDRAGONcolor2 "knobs this \{rxy \{0.753044491143 0.327831029513\} gxy \{0.299570490451 0.700699415614\} bxy \{0.145011584278 0.0510971250879\} wxy \{0.321683210353 0.337673610062\} src_colorspace_name \{REDDRAGONcolor2\}\}; python -exec nuke.thisNode().knob('calculate_matrix').execute()" gamut/REDcolor "knobs this \{rxy \{0.699747001291 0.329046930313\} gxy \{0.304264039024 0.623641145129\} bxy \{0.134913961296 0.0347174412813\} wxy \{0.321683289449 0.337673447208\} src_colorspace_name \{REDcolor\}\}; python -exec nuke.thisNode().knob('calculate_matrix').execute()" gamut/REDcolor2 "knobs this \{rxy \{0.878682510476 0.32496400741\} gxy \{0.300888714367 0.679054755791\} bxy \{0.0953986946056 -0.0293793268343\} wxy \{0.321683289449 0.337673447208\} src_colorspace_name \{REDcolor2\}\}; python -exec nuke.thisNode().knob('calculate_matrix').execute()" gamut/REDcolor3 "knobs this \{rxy \{0.701181035906 0.329014155583\} gxy \{0.300600304652 0.683788834269\} bxy \{0.108154455624 -0.00868817578666\} wxy \{0.321683210353 0.337673610062\} src_colorspace_name \{REDcolor3\}\}; python -exec nuke.thisNode().knob('calculate_matrix').execute()" gamut/REDcolor4 "knobs this \{rxy \{0.701180591892 0.329013699116\} gxy \{0.300600395529 0.683788824257\} bxy \{0.145331946229 0.0516168036226\} wxy \{0.321683289449 0.337673447208\} src_colorspace_name \{REDcolor4\}\}; python -exec nuke.thisNode().knob('calculate_matrix').execute()" gamut/REDWideGamutRGB "knobs this \{rxy \{0.780308 0.304253\} gxy \{0.121595 1.493994\} bxy \{0.095612 -0.084589\} wxy \{0.3127 0.329\} src_colorspace_name \{REDWideGamutRGB\}\}; python -exec nuke.thisNode().knob('calculate_matrix').execute()" "gamut/GoPro Protune Native" "knobs this \{rxy \{0.69848046 0.19302645\} gxy \{0.32955538 1.02459662\} bxy \{0.10844263 -0.03467857\} wxy \{0.3127 0.329\} src_colorspace_name \{GoPro Protune Native\}\}; python -exec nuke.thisNode().knob('calculate_matrix').execute()" gamut/CanonCinemaGamut "knobs this \{rxy \{0.74 0.27\} gxy \{0.17 1.14\} bxy \{0.08 -0.1\} wxy \{0.3127 0.329\} src_colorspace_name \{CanonCinemaGamut\}\}; python -exec nuke.thisNode().knob('calculate_matrix').execute()" gamut/SonySGamut "knobs this \{rxy \{0.73 0.28\} gxy \{0.14 0.855\} bxy \{0.1 -0.05\} wxy \{0.3127 0.329\} src_colorspace_name \{SonySGamut\}\}; python -exec nuke.thisNode().knob('calculate_matrix').execute()" gamut/SonySGamut3Cine "knobs this \{rxy \{0.766 0.275\} gxy \{0.225 0.8\} bxy \{0.089 -0.087\} wxy \{0.3127 0.329\} src_colorspace_name \{SonySGamut3Cine\}\}; python -exec nuke.thisNode().knob('calculate_matrix').execute()" gamut/PanasonicVGamut "knobs this \{rxy \{0.730 0.280\} gxy \{0.165 0.840\} bxy \{0.100 -0.030\} wxy \{0.3127 0.329\} src_colorspace_name \{PanasonicVGamut\}\}; python -exec nuke.thisNode().knob('calculate_matrix').execute()" "gamut/DJI D-Gamut" "knobs this \{rxy \{0.71 0.31\} gxy \{0.21 0.88\} bxy \{0.09 -0.08\} wxy \{0.3127 0.329\} src_colorspace_name \{DJI D-Gamut\}\}; python -exec nuke.thisNode().knob('calculate_matrix').execute()" "gamut/Fujifilm F-Gamut" "knobs this \{rxy \{0.70800 0.29200\} gxy \{0.17000 0.79700\} bxy \{0.13100 0.04600\} wxy \{0.3127 0.329\} src_colorspace_name \{Fujifilm F-Gamut\}\}; python -exec nuke.thisNode().knob('calculate_matrix').execute()" gamut/BMDFilmV1 "knobs this \{rxy \{0.9173 0.2502\} gxy \{0.2833 1.7072\} bxy \{0.0856 -0.0708\} wxy \{0.3135 0.3305\} src_colorspace_name \{BMDFilmV1\}\}; python -exec nuke.thisNode().knob('calculate_matrix').execute()" gamut/BMD4kFilmV1 "knobs this \{rxy \{0.7422 0.2859\} gxy \{0.4140 1.3035\} bxy \{0.0342 -0.0833\} wxy \{0.3135 0.3305\} src_colorspace_name \{BMD4kFilmV1\}\}; python -exec nuke.thisNode().knob('calculate_matrix').execute()" gamut/BMD4kFilmV3 "knobs this \{rxy \{1.0625 0.3948\} gxy \{0.3689 0.7775\} bxy \{0.0956 -0.0332\} wxy \{0.3135 0.3305\} src_colorspace_name \{BMD4kFilmV3\}\}; python -exec nuke.thisNode().knob('calculate_matrix').execute()" gamut/BMD46kFilmV1 "knobs this \{rxy \{0.9175 0.2983\} gxy \{0.2983 1.2835\} bxy \{0.0756 -0.0860\} wxy \{0.3127 0.329\} src_colorspace_name \{BMD46kFilmV1\}\}; python -exec nuke.thisNode().knob('calculate_matrix').execute()" gamut/BMD46kFilmV3 "knobs this \{rxy \{0.8608 0.3689\} gxy \{0.3282 0.6156\} bxy \{0.0783 -0.0233\} wxy \{0.3127 0.329\} src_colorspace_name \{BMD46kFilmV3\}\}; python -exec nuke.thisNode().knob('calculate_matrix').execute()" gamut/BMDWideGamutV4 "knobs this \{rxy \{0.7177 0.3171\} gxy \{0.2280 0.8616\} bxy \{0.1006 -0.0820\} wxy \{0.3127 0.329\} src_colorspace_name \{BMDWideGamutV4\}\}; python -exec nuke.thisNode().knob('calculate_matrix').execute()" "gamut/AdobeRGB\t" "knobs this \{rxy \{0.6400 0.3300\} gxy \{0.2100 0.7100\} bxy \{0.1500 0.0600\} wxy \{0.3127 0.329\} src_colorspace_name \{AdobeRGB\}\}; python -exec nuke.thisNode().knob('calculate_matrix').execute()" gamut/AdobeWideGamutRGB "knobs this \{rxy \{0.7347 0.2653\} gxy \{0.1152 0.8264\} bxy \{0.1566 0.0177\} wxy \{0.3457 0.3585\} src_colorspace_name \{AdobeWideGamutRGB\}\}; python -exec nuke.thisNode().knob('calculate_matrix').execute()" gamut/ROMM "knobs this \{rxy \{7.34700000e-01 2.65300000e-01\} gxy \{1.59600000e-01 8.40400000e-01\} bxy \{3.66000000e-02 1.00000000e-04\} wxy \{0.3457 0.3585\} src_colorspace_name \{ROMM\}\}; python -exec nuke.thisNode().knob('calculate_matrix').execute()" gamut/RIMM "knobs this \{rxy \{7.34700000e-01 2.65300000e-01\} gxy \{1.59600000e-01 8.40400000e-01\} bxy \{3.66000000e-02 1.00000000e-04\} wxy \{0.3457 0.3585\} src_colorspace_name \{RIMM\}\}; python -exec nuke.thisNode().knob('calculate_matrix').execute()" gamut/ERIMM "knobs this \{rxy \{7.34700000e-01 2.65300000e-01\} gxy \{1.59600000e-01 8.40400000e-01\} bxy \{3.66000000e-02 1.00000000e-04\} wxy \{0.3457 0.3585\} src_colorspace_name \{ERIMM\}\}; python -exec nuke.thisNode().knob('calculate_matrix').execute()" gamut/ProPhotoRGB "knobs this \{rxy \{0.734699 0.265301\} gxy \{0.159597 0.840403\} bxy \{0.036598 0.000105\} wxy \{0.345704 0.358540\} src_colorspace_name \{ProPhotoRGB\}\}; python -exec nuke.thisNode().knob('calculate_matrix').execute()" gamut/RusselRGB "knobs this \{rxy \{0.6900 0.3100\} gxy \{0.1800 0.7700\} bxy \{0.1000 0.0200\} wxy \{0.33243 0.34744\} src_colorspace_name \{RusselRGB\}\}; python -exec nuke.thisNode().knob('calculate_matrix').execute()" gamut/SharpRGB "knobs this \{rxy \{0.6898 0.3206\} gxy \{0.0736 0.9003\} bxy \{0.1166 0.0374\} wxy \{0.33333333 0.33333333\} src_colorspace_name \{SharpRGB\}\}; python -exec nuke.thisNode().knob('calculate_matrix').execute()" gamut/AppleRGB "knobs this \{rxy \{0.6250 0.3400\} gxy \{0.2800 0.5950\} bxy \{0.1550 0.0700\} wxy \{0.3127 0.329\} src_colorspace_name \{AppleRGB\}\}; python -exec nuke.thisNode().knob('calculate_matrix').execute()" gamut/BestRGB "knobs this \{rxy \{0.735191637630662 0.264808362369338\} gxy \{0.215336134453781 0.774159663865546\} bxy \{0.130122950819672 0.034836065573770\} wxy \{0.3457 0.3585\} src_colorspace_name \{BestRGB\}\}; python -exec nuke.thisNode().knob('calculate_matrix').execute()" "gamut/XYZ D60" "knobs this \{rxy \{1 0\} gxy \{0 1\} bxy \{0 0\} wxy \{0.32162624 0.337737\} src_colorspace_name \{XYZ D60\}\}; python -exec nuke.thisNode().knob('calculate_matrix').execute()" "gamut/XYZ D65" "knobs this \{rxy \{1 0\} gxy \{0 1\} bxy \{0 0\} wxy \{0.3127 0.329\} src_colorspace_name \{XYZ D65\}\}; python -exec nuke.thisNode().knob('calculate_matrix').execute()" "gamut/XYZ E" "knobs this \{rxy \{1 0\} gxy \{0 1\} bxy \{0 0\} wxy \{0.333333333333 0.333333333333\} src_colorspace_name \{XYZ E\}\}; python -exec nuke.thisNode().knob('calculate_matrix').execute()"}} addUserKnob {12 rxy l r t "Red xy chromaticity coordinates in CIE 1931 colorspace."} rxy {1 0} addUserKnob {12 gxy l g t "Green xy chromaticity coordinates in CIE 1931 colorspace."} gxy {0 1} addUserKnob {12 bxy l b t "Blue xy chromaticity coordinates in CIE 1931 colorspace."} addUserKnob {12 wxy l w t "Whitepoint xy chromaticity coordinates in CIE 1931 colorspace."} wxy {0.3127 0.329} addUserKnob {1 src_colorspace_name l src +DISABLED} src_colorspace_name "XYZ D65" addUserKnob {26 ""} addUserKnob {26 dst_gamut_chromaticities_label l " " T "DST Gamut Chromaticity Coordinates"} addUserKnob {35 dst_presets l preset M {gamut/ACES "knobs this \{drxy \{0.73470 0.26530\} dgxy \{0.00000 1.00000\} dbxy \{0.00010 -0.07700\} dwxy \{0.32168 0.33767\} dst_colorspace_name \{ACES\}\}; python -exec nuke.thisNode().knob('calculate_matrix').execute()" gamut/ACEScg "knobs this \{drxy \{0.713 0.293\} dgxy \{0.165 0.830\} dbxy \{0.128 0.044\} dwxy \{0.32168 0.33767\} dst_colorspace_name \{ACEScg\}\}; python -exec nuke.thisNode().knob('calculate_matrix').execute()" "gamut/Filmlight E-Gamut" "knobs this \{ drxy \{0.8 0.3177\} dgxy \{0.18 0.9\} dbxy \{0.065 -0.0805\} dwxy \{0.3127 0.329\} dst_colorspace_name \{Filmlight E-Gamut\}\}; python -exec nuke.thisNode().knob('calculate_matrix').execute()" "gamut/DaVinci WG" "knobs this \{ drxy \{0.8 0.3130\} dgxy \{0.1682 0.9877\} dbxy \{0.079 -0.1155\} dwxy \{0.3127 0.329\} dst_colorspace_name \{DaVinci WG\}\}; python -exec nuke.thisNode().knob('calculate_matrix').execute()" gamut/Rec709 "knobs this \{drxy \{0.64000 0.33000\} dgxy \{0.30000 0.60000\} dbxy \{0.15000 0.06000\} dwxy \{0.3127 0.329\} dst_colorspace_name \{Rec709\}\}; python -exec nuke.thisNode().knob('calculate_matrix').execute()" gamut/Rec2020 "knobs this \{drxy \{0.70800 0.29200\} dgxy \{0.17000 0.79700\} dbxy \{0.13100 0.04600\} dwxy \{0.3127 0.329\} dst_colorspace_name \{Rec2020\}\}; python -exec nuke.thisNode().knob('calculate_matrix').execute()" gamut/P3D60 "knobs this \{drxy \{0.68000 0.32000\} dgxy \{0.26500 0.69000\} dbxy \{0.15000 0.06000\} dwxy \{0.32168 0.33767\} dst_colorspace_name \{P3D60\}\}; python -exec nuke.thisNode().knob('calculate_matrix').execute()" gamut/P3D65 "knobs this \{drxy \{0.68000 0.32000\} dgxy \{0.26500 0.69000\} dbxy \{0.15000 0.06000\} dwxy \{0.3127 0.329\} dst_colorspace_name \{P3D65\}\}; python -exec nuke.thisNode().knob('calculate_matrix').execute()" gamut/P3DCI "knobs this \{drxy \{0.68000 0.32000\} dgxy \{0.26500 0.69000\} dbxy \{0.15000 0.06000\} dwxy \{0.314 0.351\} dst_colorspace_name \{P3DCI\}\}; python -exec nuke.thisNode().knob('calculate_matrix').execute()" "gamut/Arri AlexaWideGamut" "knobs this \{drxy \{0.68400 0.31300\} dgxy \{0.22100 0.84800\} dbxy \{0.08610 -0.10200\} dwxy \{0.3127 0.329\} dst_colorspace_name \{Arri AlexaWideGamut\}\}; python -exec nuke.thisNode().knob('calculate_matrix').execute()" gamut/REDDRAGONcolor "knobs this \{drxy \{0.753044222785 0.327830576682\} dgxy \{0.299570228481 0.700699321956\} dbxy \{0.079642066735 -0.0549379510888\} dwxy \{0.321683187724 0.337673316035\} dst_colorspace_name \{REDDRAGONcolor\}\}; python -exec nuke.thisNode().knob('calculate_matrix').execute()" gamut/REDDRAGONcolor2 "knobs this \{drxy \{0.753044491143 0.327831029513\} dgxy \{0.299570490451 0.700699415614\} dbxy \{0.145011584278 0.0510971250879\} dwxy \{0.321683210353 0.337673610062\} dst_colorspace_name \{REDDRAGONcolor2\}\}; python -exec nuke.thisNode().knob('calculate_matrix').execute()" gamut/REDcolor "knobs this \{drxy \{0.699747001291 0.329046930313\} dgxy \{0.304264039024 0.623641145129\} dbxy \{0.134913961296 0.0347174412813\} dwxy \{0.321683289449 0.337673447208\} dst_colorspace_name \{REDcolor\}\}; python -exec nuke.thisNode().knob('calculate_matrix').execute()" gamut/REDcolor2 "knobs this \{drxy \{0.878682510476 0.32496400741\} dgxy \{0.300888714367 0.679054755791\} dbxy \{0.0953986946056 -0.0293793268343\} dwxy \{0.321683289449 0.337673447208\} dst_colorspace_name \{REDcolor2\}\}; python -exec nuke.thisNode().knob('calculate_matrix').execute()" gamut/REDcolor3 "knobs this \{drxy \{0.701181035906 0.329014155583\} dgxy \{0.300600304652 0.683788834269\} dbxy \{0.108154455624 -0.00868817578666\} dwxy \{0.321683210353 0.337673610062\} dst_colorspace_name \{REDcolor3\}\}; python -exec nuke.thisNode().knob('calculate_matrix').execute()" gamut/REDcolor4 "knobs this \{drxy \{0.701180591892 0.329013699116\} dgxy \{0.300600395529 0.683788824257\} dbxy \{0.145331946229 0.0516168036226\} dwxy \{0.321683289449 0.337673447208\} dst_colorspace_name \{REDcolor4\}\}; python -exec nuke.thisNode().knob('calculate_matrix').execute()" gamut/REDWideGamutRGB "knobs this \{drxy \{0.780308 0.304253\} dgxy \{0.121595 1.493994\} dbxy \{0.095612 -0.084589\} dwxy \{0.3127 0.329\} dst_colorspace_name \{REDWideGamutRGB\}\}; python -exec nuke.thisNode().knob('calculate_matrix').execute()" "gamut/GoPro Protune Native" "knobs this \{drxy \{0.69848046 0.19302645\} dgxy \{0.32955538 1.02459662\} dbxy \{0.10844263 -0.03467857\} dwxy \{0.3127 0.329\} dst_colorspace_name \{GoPro Protune Native\}\}; python -exec nuke.thisNode().knob('calculate_matrix').execute()" gamut/CanonCinemaGamut "knobs this \{drxy \{0.74 0.27\} dgxy \{0.17 1.14\} dbxy \{0.08 -0.1\} dwxy \{0.3127 0.329\} dst_colorspace_name \{CanonCinemaGamut\}\}; python -exec nuke.thisNode().knob('calculate_matrix').execute()" gamut/SonySGamut "knobs this \{drxy \{0.73 0.28\} dgxy \{0.14 0.855\} dbxy \{0.1 -0.05\} dwxy \{0.3127 0.329\} dst_colorspace_name \{SonySGamut\}\}; python -exec nuke.thisNode().knob('calculate_matrix').execute()" gamut/SonySGamut3Cine "knobs this \{drxy \{0.766 0.275\} dgxy \{0.225 0.8\} dbxy \{0.089 -0.087\} dwxy \{0.3127 0.329\} dst_colorspace_name \{SonySGamut3Cine\}\}; python -exec nuke.thisNode().knob('calculate_matrix').execute()" gamut/PanasonicVGamut "knobs this \{drxy \{0.730 0.280\} dgxy \{0.165 0.840\} dbxy \{0.100 -0.030\} dwxy \{0.3127 0.329\} dst_colorspace_name \{PanasonicVGamut\}\}; python -exec nuke.thisNode().knob('calculate_matrix').execute()" "gamut/DJI D-Gamut" "knobs this \{drxy \{0.71 0.31\} dgxy \{0.21 0.88\} dbxy \{0.09 -0.08\} dwxy \{0.3127 0.329\} dst_colorspace_name \{DJI D-Gamut\}\}; python -exec nuke.thisNode().knob('calculate_matrix').execute()" "gamut/Fujifilm F-Gamut" "knobs this \{drxy \{0.70800 0.29200\} dgxy \{0.17000 0.79700\} dbxy \{0.13100 0.04600\} dwxy \{0.3127 0.329\} dst_colorspace_name \{Fujifilm F-Gamut\}\}; python -exec nuke.thisNode().knob('calculate_matrix').execute()" gamut/BMDFilmV1 "knobs this \{drxy \{0.9173 0.2502\} dgxy \{0.2833 1.7072\} dbxy \{0.0856 -0.0708\} dwxy \{0.3135 0.3305\} dst_colorspace_name \{BMDFilmV1\}\}; python -exec nuke.thisNode().knob('calculate_matrix').execute()" gamut/BMD4kFilmV1 "knobs this \{drxy \{0.7422 0.2859\} dgxy \{0.4140 1.3035\} dbxy \{0.0342 -0.0833\} dwxy \{0.3135 0.3305\} dst_colorspace_name \{BMD4kFilmV1\}\}; python -exec nuke.thisNode().knob('calculate_matrix').execute()" gamut/BMD4kFilmV3 "knobs this \{drxy \{1.0625 0.3948\} dgxy \{0.3689 0.7775\} dbxy \{0.0956 -0.0332\} dwxy \{0.3135 0.3305\} dst_colorspace_name \{BMD4kFilmV3\}\}; python -exec nuke.thisNode().knob('calculate_matrix').execute()" gamut/BMD46kFilmV1 "knobs this \{drxy \{0.9175 0.2983\} dgxy \{0.2983 1.2835\} dbxy \{0.0756 -0.0860\} dwxy \{0.3127 0.329\} dst_colorspace_name \{BMD46kFilmV1\}\}; python -exec nuke.thisNode().knob('calculate_matrix').execute()" gamut/BMD46kFilmV3 "knobs this \{drxy \{0.8608 0.3689\} dgxy \{0.3282 0.6156\} dbxy \{0.0783 -0.0233\} dwxy \{0.3127 0.329\} dst_colorspace_name \{BMD46kFilmV3\}\}; python -exec nuke.thisNode().knob('calculate_matrix').execute()" gamut/BMDWideGamutV4 "knobs this \{drxy \{0.7177 0.3171\} dgxy \{0.2280 0.8616\} dbxy \{0.1006 -0.0820\} dwxy \{0.3127 0.329\} dst_colorspace_name \{BMDWideGamutV4\}\}; python -exec nuke.thisNode().knob('calculate_matrix').execute()" "gamut/AdobeRGB\t" "knobs this \{drxy \{0.6400 0.3300\} dgxy \{0.2100 0.7100\} dbxy \{0.1500 0.0600\} dwxy \{0.3127 0.329\} dst_colorspace_name \{AdobeRGB\}\}; python -exec nuke.thisNode().knob('calculate_matrix').execute()" gamut/AdobeWideGamutRGB "knobs this \{drxy \{0.7347 0.2653\} dgxy \{0.1152 0.8264\} dbxy \{0.1566 0.0177\} dwxy \{0.3457 0.3585\} dst_colorspace_name \{AdobeWideGamutRGB\}\}; python -exec nuke.thisNode().knob('calculate_matrix').execute()" gamut/ROMM "knobs this \{drxy \{7.34700000e-01 2.65300000e-01\} dgxy \{1.59600000e-01 8.40400000e-01\} dbxy \{3.66000000e-02 1.00000000e-04\} dwxy \{0.3457 0.3585\} dst_colorspace_name \{ROMM\}\}; python -exec nuke.thisNode().knob('calculate_matrix').execute()" gamut/RIMM "knobs this \{drxy \{7.34700000e-01 2.65300000e-01\} dgxy \{1.59600000e-01 8.40400000e-01\} dbxy \{3.66000000e-02 1.00000000e-04\} dwxy \{0.3457 0.3585\} dst_colorspace_name \{RIMM\}\}; python -exec nuke.thisNode().knob('calculate_matrix').execute()" gamut/ERIMM "knobs this \{drxy \{7.34700000e-01 2.65300000e-01\} dgxy \{1.59600000e-01 8.40400000e-01\} dbxy \{3.66000000e-02 1.00000000e-04\} dwxy \{0.3457 0.3585\} dst_colorspace_name \{ERIMM\}\}; python -exec nuke.thisNode().knob('calculate_matrix').execute()" gamut/ProPhotoRGB "knobs this \{drxy \{0.734699 0.265301\} dgxy \{0.159597 0.840403\} dbxy \{0.036598 0.000105\} dwxy \{0.345704 0.358540\} dst_colorspace_name \{ProPhotoRGB\}\}; python -exec nuke.thisNode().knob('calculate_matrix').execute()" gamut/RusselRGB "knobs this \{drxy \{0.6900 0.3100\} dgxy \{0.1800 0.7700\} dbxy \{0.1000 0.0200\} dwxy \{0.33243 0.34744\} dst_colorspace_name \{RusselRGB\}\}; python -exec nuke.thisNode().knob('calculate_matrix').execute()" gamut/SharpRGB "knobs this \{drxy \{0.6898 0.3206\} dgxy \{0.0736 0.9003\} dbxy \{0.1166 0.0374\} dwxy \{0.33333333 0.33333333\} dst_colorspace_name \{SharpRGB\}\}; python -exec nuke.thisNode().knob('calculate_matrix').execute()" gamut/AppleRGB "knobs this \{drxy \{0.6250 0.3400\} dgxy \{0.2800 0.5950\} dbxy \{0.1550 0.0700\} dwxy \{0.3127 0.329\} dst_colorspace_name \{AppleRGB\}\}; python -exec nuke.thisNode().knob('calculate_matrix').execute()" gamut/BestRGB "knobs this \{drxy \{0.735191637630662 0.264808362369338\} dgxy \{0.215336134453781 0.774159663865546\} dbxy \{0.130122950819672 0.034836065573770\} dwxy \{0.3457 0.3585\} dst_colorspace_name \{BestRGB\}\}; python -exec nuke.thisNode().knob('calculate_matrix').execute()" "gamut/XYZ D60" "knobs this \{drxy \{1 0\} dgxy \{0 1\} dbxy \{0 0\} dwxy \{0.32162624 0.337737\} dst_colorspace_name \{XYZ D60\}\}; python -exec nuke.thisNode().knob('calculate_matrix').execute()" "gamut/XYZ D65" "knobs this \{drxy \{1 0\} dgxy \{0 1\} dbxy \{0 0\} dwxy \{0.3127 0.329\} dst_colorspace_name \{XYZ D65\}\}; python -exec nuke.thisNode().knob('calculate_matrix').execute()" "gamut/XYZ E" "knobs this \{drxy \{1 0\} dgxy \{0 1\} dbxy \{0 0\} dwxy \{0.333333333333 0.333333333333\} dst_colorspace_name \{XYZ E\}\}; python -exec nuke.thisNode().knob('calculate_matrix').execute()"}} addUserKnob {12 drxy l r t "Red xy chromaticity coordinates in CIE 1931 colorspace."} drxy {0.713 0.293} addUserKnob {12 dgxy l g t "Green xy chromaticity coordinates in CIE 1931 colorspace."} dgxy {0.165 0.83} addUserKnob {12 dbxy l b t "Blue xy chromaticity coordinates in CIE 1931 colorspace."} dbxy {0.128 0.044} addUserKnob {12 dwxy l w t "Whitepoint xy chromaticity coordinates in CIE 1931 colorspace."} dwxy {0.32168 0.33767} addUserKnob {1 dst_colorspace_name l dst +DISABLED} dst_colorspace_name ACEScg addUserKnob {26 ""} addUserKnob {26 chromatic_adaptation_label l " " T "Chromatic Adaptation"} addUserKnob {4 cat_method l method t "Choose the chromatic adaptation method for adapting whitepoint." M {cat02 bradford cmccat2000 xyz_scaling none "" fairchild bianco cat02_brill_cat bianco_pc cmccat97 sharp von_kries "" ""}} addUserKnob {26 ""} addUserKnob {6 invert t "Invert direction of matrix." +STARTLINE} addUserKnob {22 calculate_matrix l "Calculate Matrix" t "Calculate 3x3 matrix based on the specified colorspace chromaticities." T "import nuke\nfloat3 = nuke.math.Vector3\nfloat3x3 = nuke.math.Matrix3\n\n\ndef transpose(m):\n # Transpose (swap rows and columns) of a nuke.math.Matrix3\n return float3x3(m\[0], m\[1], m\[2], m\[3], m\[4], m\[5], m\[6], m\[7], m\[8])\n\ndef set_matrix(m):\n # Populate a nuke.math.Matrix3 with a 3x3 python list (either 3x3 or 1x9)\n if len(m) is 3 and \[isinstance(r, list) for r in m]:\n m = sum(m, \[])\n o = float3x3(m\[0], m\[3], m\[6], m\[1], m\[4], m\[7], m\[2], m\[5], m\[8])\n return o\n\ndef diag(v):\n # Create a diagonal 3x3 matrix from a 1x3 vector\n return float3x3(v\[0], 0, 0, 0, v\[1], 0, 0, 0, v\[2])\n\n\ndef xyY_to_XYZ(xyY):\n # Convert an xyY chromaticity value to XYZ\n x = xyY\[0]\n y = xyY\[1]\n if len(xyY) is 2:\n # Assume an xy chromaticity coordinate, use default Y\n Y = 1.0\n else:\n Y = xyY\[2]\n XYZ = float3(x * Y / max(y, 1e-10), Y, (1.0 - x - y) * Y / max(y, 1e-10))\n return XYZ\n\ndef xy_to_xyz(xy):\n return float3(xy\[0], xy\[1], 1.0 - xy\[0] - xy\[1])\n\n\ndef calc_cat(src_xy, dst_xy, cat_method='cat02'):\n # Calculate Von Kries chromatic adaptation transform matrix,\n # given a source and destination illuminant and CAT method.\n # Illuminant is given as xy chromaticity coordinates. \n # CAT method is the name of one of the below cone response matrices.\n\n crmtxs = \{\n \"bianco\": \[\[0.8752, 0.2787, -0.1539], \[-0.8904, 1.8709, 0.0195], \[-0.0061, 0.0162, 0.9899]],\n \"bianco_pc\": \[\[0.6489, 0.3915, -0.0404], \[-0.3775, 1.3055, 0.072], \[-0.0271, 0.0888, 0.9383]],\n \"bradford\": \[\[0.8951, 0.2664, -0.1614], \[-0.7502, 1.7135, 0.0367], \[0.0389, -0.0685, 1.0296]],\n \"cat02\": \[\[0.7328, 0.4296, -0.1624], \[-0.7036, 1.6975, 0.0061], \[0.003, 0.0136, 0.9834]],\n \"cat02_brill_cat\": \[\[0.7328, 0.4296, -0.1624], \[-0.7036, 1.6975, 0.0061], \[0.0, 0.0, 1.0]],\n \"cmccat2000\": \[\[0.7982, 0.3389, -0.1371], \[-0.5918, 1.5512, 0.0406], \[0.0008, 0.0239, 0.9753]],\n \"cmccat97\": \[\[0.8951, -0.7502, 0.0389], \[0.2664, 1.7135, 0.0685], \[-0.1614, 0.0367, 1.0296]],\n \"fairchild\": \[\[0.8562, 0.3372, -0.1934], \[-0.836, 1.8327, 0.0033], \[0.0357, -0.0469, 1.0112]],\n \"sharp\": \[\[1.2694, -0.0988, -0.1706], \[-0.8364, 1.8006, 0.0357], \[0.0297, -0.0315, 1.0018]],\n \"von_kries\": \[\[0.40024, 0.7076, -0.08081], \[-0.2263, 1.16532, 0.0457], \[0.0, 0.0, 0.91822]],\n \"xyz_scaling\": \[\[1.0, 0.0, 0.0], \[0.0, 1.0, 0.0], \[0.0, 0.0, 1.0]]\n \}\n \n cat_method = cat_method.lower().replace(' ', '_')\n # Return identity matrix if no match\n if cat_method not in crmtxs.keys():\n m = float3x3()\n m.makeIdentity()\n return m\n \n crmtx = set_matrix(crmtxs\[cat_method])\n\n # Get XYZ values from xy chromaticity coordinates\n src_XYZ = xyY_to_XYZ(src_xy)\n dst_XYZ = xyY_to_XYZ(dst_xy)\n\n # Calculate source and destination cone response matrices\n src_crmtx = transpose(crmtx) * src_XYZ\n dst_crmtx = transpose(crmtx) * dst_XYZ\n\n von_kries_matrix = diag(dst_crmtx / src_crmtx)\n cat_mtx = float3x3()\n cat_mtx = crmtx * (von_kries_matrix * crmtx.inverse())\n\n return cat_mtx\n\n\ndef calc_npm(chr):\n # Calculate a normalized primaries matrix from the specified chromaticity coordinates,\n # given 2x4 list of xy chromaticity coordinates: red, green, blue, and white\n rxyz, gxyz, bxyz, wxyz = map(xy_to_xyz, chr)\n wy = chr\[3]\[1]\n wxyz = float3(wxyz.x / wy, wxyz.y / wy, wxyz.z / wy)\n np_mtx = float3x3(rxyz\[0], gxyz\[0], bxyz\[0],\n rxyz\[1], gxyz\[1], bxyz\[1],\n rxyz\[2], gxyz\[2], bxyz\[2])\n wscale = np_mtx.inverse() * wxyz \n np_mtx = transpose(np_mtx * diag(wscale))\n return np_mtx\n\ndef is_xyz(c):\n # return true if primaries are XYZ\n return c\[:3] == \[\[1.0, 0.0], \[0.0, 1.0], \[0.0, 0.0]]\n\n\ndef start(node):\n identity_mtx = float3x3()\n identity_mtx.makeIdentity()\n\n invert = node\['invert'].getValue()\n cat_method = node\['cat_method'].value()\n\n src_chr = \[node\[k].getValue() for k in \['rxy', 'gxy', 'bxy', 'wxy']]\n dst_chr = \[node\[k].getValue() for k in \['drxy', 'dgxy', 'dbxy', 'dwxy']]\n\n # bypass double scale if source or destination is XYZ\n if is_xyz(src_chr):\n rgb_to_xyz = identity_mtx\n else:\n rgb_to_xyz = calc_npm(src_chr)\n \n if is_xyz(dst_chr):\n xyz_to_rgb = identity_mtx\n else:\n xyz_to_rgb = calc_npm(dst_chr).inverse()\n\n if src_chr\[3] == dst_chr\[3]:\n cat_mtx = identity_mtx\n else:\n cat_mtx = calc_cat(src_chr\[3], dst_chr\[3], cat_method)\n\n mtx = (rgb_to_xyz * cat_mtx) * xyz_to_rgb\n\n if invert:\n mtx = mtx.inverse()\n\n node\['matrix'].setValue(mtx)\n\n\nif __name__=='__main__':\n start(nuke.thisNode())" +STARTLINE} addUserKnob {22 create_matrix_node l "Create Matrix" t "Create ColorMatrix node with the current values." -STARTLINE T "node = nuke.thisNode()\nnode\['calculate_matrix'].execute()\nnuke.root().begin()\n_ = \[n.setSelected(False) for n in nuke.allNodes(recurseGroups=True)]\nm = nuke.createNode('ColorMatrix')\nm\['matrix'].setValue(node\['matrix'].getValue())\nm.setXYpos(node.xpos()-120, node.ypos())\nsrc_name = node\['src_colorspace_name'].getValue()\ndst_name = node\['dst_colorspace_name'].getValue()\nif node\['invert'].getValue():\n label = '\{1\} to \{0\}'.format(src_name, dst_name)\nelse:\n label = '\{0\} to \{1\}'.format(src_name, dst_name)\nm\['label'].setValue(label)"} addUserKnob {41 matrix T ColorMatrix.matrix} addUserKnob {22 clear l Clear T "n = nuke.thisNode()\nn\['matrix'].setValue(\[1,0,0,0,1,0,0,0,1])\nn\['label'].setValue('')" +STARTLINE} addUserKnob {22 show_matrix l Show t "Show matrix values in a popup window for copying." T "node = nuke.thisNode()\nshow_4x4 = node\['show_matrix_4x4'].getValue()\nshow_commas = node\['show_matrix_commas'].getValue()\n\nif show_commas:\n sep = ', '\nelse:\n sep = ' '\n\nmtx = \[format(i, '.8f') for i in node\['matrix'].getValue()]\n\nif show_4x4:\n z = \['0']\n mtx = mtx\[0:3] + z + mtx\[3:6] + z + mtx\[6:9] + z*4 + \['1']\n\nnuke.message(sep.join(mtx))" +STARTLINE} addUserKnob {6 show_matrix_4x4 l "show 4x4" t "present values in a 4x4 matrix (useful for ocio)" -STARTLINE} addUserKnob {6 show_matrix_commas l "show comma sep" t "show matrix comma separated." -STARTLINE} addUserKnob {22 save_spimtx l "Save spimtx" T "# inspired by ColorMatrixPlus by hpd\ndef write_spimtx(mtx_node, spimtx_file):\n mtx_vals = mtx_node\['matrix'].getValue()\n with open(spimtx_file, \"w\") as f:\n f.write( \"%3.6f %3.6f %3.6f 0.0\\n\" % (\n mtx_vals\[0], mtx_vals\[1], mtx_vals\[2]) )\n f.write( \"%3.6f %3.6f %3.6f 0.0\\n\" % (\n mtx_vals\[3], mtx_vals\[4], mtx_vals\[5]) )\n f.write( \"%3.6f %3.6f %3.6f 0.0\\n\" % (\n mtx_vals\[6], mtx_vals\[7], mtx_vals\[8]) )\n\nnode = nuke.thisNode()\nfilepath = nuke.getFilename('Save Matrix', '*.spimtx')\n\nif filepath:\n if not filepath.endswith('.spimtx'):\n filepath = filepath + '.spimtx'\n write_spimtx(node, filepath)" +STARTLINE} addUserKnob {22 load_spimtx l "Load spimtx" -STARTLINE T "# Inspired by ColorMatrixPlus by hpd\ndef load_spimtx(spimtx, mtx_node):\n with open( spimtx, 'r') as file:\n lines = file.readlines()\n matrix_values = list()\n for line in lines:\n matrix_values.extend( map(float, line.strip().split(' ')\[0:3]) )\n mtx_node\['matrix'].setValue(matrix_values)\n\nspimtx = nuke.getFilename('Load SPIMTX', '*.spimtx')\nif spimtx:\n load_spimtx( spimtx, nuke.thisNode() )\n"} } Input { inputs 0 name Input xpos -40 ypos 206 } ColorMatrix { matrix { {1.658854365 -0.3118569255 -0.2431560308} {-0.662283361 1.612200022 0.01585912518} {0.01148056798 -0.009236329235 0.9166865349} } name ColorMatrix xpos -40 ypos 254 } Output { name Output xpos -40 ypos 302 } end_group Dot { name Dot67 note_font "Helvetica Bold" note_font_size 24 note_font_color 0xff selected true xpos 1314 ypos -2946 } Group { inputs 0 name HueSwatchesTwentyFour21 note_font Helvetica selected true xpos 1390 ypos -3123 postage_stamp true addUserKnob {20 User} addUserKnob {41 saturation T Saturation4.saturation} addUserKnob {3 patch_size l "patch size" t "size of each square patch"} patch_size 256 addUserKnob {7 sat_samples l "sat samples" t "number of steps on the saturation ramp" R 0 256} sat_samples 1024 } Group { inputs 0 name Swatch25 label "\[value value]" note_font Helvetica xpos 1160 ypos -698 postage_stamp true addUserKnob {20 User} addUserKnob {41 value l color T Multiply17.value} addUserKnob {3 size} size {{parent.patch_size}} } Constant { inputs 0 format "512 512 0 0 512 512 1 square_512" name Constant13 note_font Helvetica xpos 1155 ypos 666 postage_stamp false } Reformat { type "to box" box_width {{parent.size}} name Reformat1 note_font Helvetica xpos 1155 ypos 690 } Expression { channel0 rgba expr0 x/width name Expression14 note_font Helvetica xpos 1155 ypos 714 } Multiply { channels rgba value {0.25 0 1 1} name Multiply17 note_font Helvetica xpos 1155 ypos 754 } Expression { channel0 {none none none rgba.alpha} expr0 y/height name Expression15 note_font Helvetica xpos 1155 ypos 785 } Output { name Output1 xpos 1155 ypos 891 } end_group Group { inputs 0 name Swatch26 label "\[value value]" note_font Helvetica xpos 1040 ypos -698 postage_stamp true addUserKnob {20 User} addUserKnob {41 value l color T Multiply17.value} addUserKnob {3 size} size {{parent.patch_size}} } Constant { inputs 0 format "512 512 0 0 512 512 1 square_512" name Constant13 note_font Helvetica xpos 1155 ypos 666 postage_stamp false } Reformat { type "to box" box_width {{parent.size}} name Reformat1 note_font Helvetica xpos 1155 ypos 690 } Expression { channel0 rgba expr0 x/width name Expression14 note_font Helvetica xpos 1155 ypos 714 } Multiply { channels rgba value {0.5 0 1 1} name Multiply17 note_font Helvetica xpos 1155 ypos 754 } Expression { channel0 {none none none rgba.alpha} expr0 y/height name Expression15 note_font Helvetica xpos 1155 ypos 785 } Output { name Output1 xpos 1155 ypos 891 } end_group Group { inputs 0 name Swatch27 label "\[value value]" note_font Helvetica xpos 920 ypos -698 postage_stamp true addUserKnob {20 User} addUserKnob {41 value l color T Multiply17.value} addUserKnob {3 size} size {{parent.patch_size}} } Constant { inputs 0 format "512 512 0 0 512 512 1 square_512" name Constant13 note_font Helvetica xpos 1155 ypos 666 postage_stamp false } Reformat { type "to box" box_width {{parent.size}} name Reformat1 note_font Helvetica xpos 1155 ypos 690 } Expression { channel0 rgba expr0 x/width name Expression14 note_font Helvetica xpos 1155 ypos 714 } Multiply { channels rgba value {0.75 0 1 1} name Multiply17 note_font Helvetica xpos 1155 ypos 754 } Expression { channel0 {none none none rgba.alpha} expr0 y/height name Expression15 note_font Helvetica xpos 1155 ypos 785 } Output { name Output1 xpos 1155 ypos 891 } end_group Group { inputs 0 name Swatch28 label "\[value value]" note_font Helvetica xpos 800 ypos -698 postage_stamp true addUserKnob {20 User} addUserKnob {41 value l color T Multiply17.value} addUserKnob {3 size} size {{parent.patch_size}} } Constant { inputs 0 format "512 512 0 0 512 512 1 square_512" name Constant13 note_font Helvetica xpos 1155 ypos 666 postage_stamp false } Reformat { type "to box" box_width {{parent.size}} name Reformat1 note_font Helvetica xpos 1155 ypos 690 } Expression { channel0 rgba expr0 x/width name Expression14 note_font Helvetica xpos 1155 ypos 714 } Multiply { channels rgba value {1 0 1 1} name Multiply17 note_font Helvetica xpos 1155 ypos 754 } Expression { channel0 {none none none rgba.alpha} expr0 y/height name Expression15 note_font Helvetica xpos 1155 ypos 785 } Output { name Output1 xpos 1155 ypos 891 } end_group Group { inputs 0 name Swatch29 label "\[value value]" note_font Helvetica xpos 680 ypos -698 postage_stamp true addUserKnob {20 User} addUserKnob {41 value l color T Multiply17.value} addUserKnob {3 size} size {{parent.patch_size}} } Constant { inputs 0 format "512 512 0 0 512 512 1 square_512" name Constant13 note_font Helvetica xpos 1155 ypos 666 postage_stamp false } Reformat { type "to box" box_width {{parent.size}} name Reformat1 note_font Helvetica xpos 1155 ypos 690 } Expression { channel0 rgba expr0 x/width name Expression14 note_font Helvetica xpos 1155 ypos 714 } Multiply { channels rgba value {1 0 0.75 1} name Multiply17 note_font Helvetica xpos 1155 ypos 754 } Expression { channel0 {none none none rgba.alpha} expr0 y/height name Expression15 note_font Helvetica xpos 1155 ypos 785 } Output { name Output1 xpos 1155 ypos 891 } end_group Group { inputs 0 name Swatch30 label "\[value value]" note_font Helvetica xpos 560 ypos -698 postage_stamp true addUserKnob {20 User} addUserKnob {41 value l color T Multiply17.value} addUserKnob {3 size} size {{parent.patch_size}} } Constant { inputs 0 format "512 512 0 0 512 512 1 square_512" name Constant13 note_font Helvetica xpos 1155 ypos 666 postage_stamp false } Reformat { type "to box" box_width {{parent.size}} name Reformat1 note_font Helvetica xpos 1155 ypos 690 } Expression { channel0 rgba expr0 x/width name Expression14 note_font Helvetica xpos 1155 ypos 714 } Multiply { channels rgba value {1 0 0.5 1} name Multiply17 note_font Helvetica xpos 1155 ypos 754 } Expression { channel0 {none none none rgba.alpha} expr0 y/height name Expression15 note_font Helvetica xpos 1155 ypos 785 } Output { name Output1 xpos 1155 ypos 891 } end_group Group { inputs 0 name Swatch31 label "\[value value]" note_font Helvetica xpos 440 ypos -698 postage_stamp true addUserKnob {20 User} addUserKnob {41 value l color T Multiply17.value} addUserKnob {3 size} size {{parent.patch_size}} } Constant { inputs 0 format "512 512 0 0 512 512 1 square_512" name Constant13 note_font Helvetica xpos 1155 ypos 666 postage_stamp false } Reformat { type "to box" box_width {{parent.size}} name Reformat1 note_font Helvetica xpos 1155 ypos 690 } Expression { channel0 rgba expr0 x/width name Expression14 note_font Helvetica xpos 1155 ypos 714 } Multiply { channels rgba value {1 0 0.25 1} name Multiply17 note_font Helvetica xpos 1155 ypos 754 } Expression { channel0 {none none none rgba.alpha} expr0 y/height name Expression15 note_font Helvetica xpos 1155 ypos 785 } Output { name Output1 xpos 1155 ypos 891 } end_group Group { inputs 0 name Swatch32 label "\[value value]" note_font Helvetica xpos 440 ypos -698 postage_stamp true addUserKnob {20 User} addUserKnob {41 value l color T Multiply17.value} addUserKnob {3 size} size {{parent.patch_size}} } Constant { inputs 0 format "512 512 0 0 512 512 1 square_512" name Constant13 note_font Helvetica xpos 1155 ypos 666 postage_stamp false } Reformat { type "to box" box_width {{parent.size}} name Reformat1 note_font Helvetica xpos 1155 ypos 690 } Expression { channel0 rgba expr0 x/width name Expression14 note_font Helvetica xpos 1155 ypos 714 } Multiply { channels rgba value {1 0 0 1} name Multiply17 note_font Helvetica xpos 1155 ypos 754 } Expression { channel0 {none none none rgba.alpha} expr0 y/height name Expression15 note_font Helvetica xpos 1155 ypos 785 } Output { name Output1 xpos 1155 ypos 891 } end_group Group { inputs 0 name Swatch33 label "\[value value]" note_font Helvetica xpos 320 ypos -698 postage_stamp true addUserKnob {20 User} addUserKnob {41 value l color T Multiply17.value} addUserKnob {3 size} size {{parent.patch_size}} } Constant { inputs 0 format "512 512 0 0 512 512 1 square_512" name Constant13 note_font Helvetica xpos 1155 ypos 666 postage_stamp false } Reformat { type "to box" box_width {{parent.size}} name Reformat1 note_font Helvetica xpos 1155 ypos 690 } Expression { channel0 rgba expr0 x/width name Expression14 note_font Helvetica xpos 1155 ypos 714 } Multiply { channels rgba value {1 0.25 0 1} name Multiply17 note_font Helvetica xpos 1155 ypos 754 } Expression { channel0 {none none none rgba.alpha} expr0 y/height name Expression15 note_font Helvetica xpos 1155 ypos 785 } Output { name Output1 xpos 1155 ypos 891 } end_group Group { inputs 0 name Swatch34 label "\[value value]" note_font Helvetica xpos 200 ypos -698 postage_stamp true addUserKnob {20 User} addUserKnob {41 value l color T Multiply17.value} addUserKnob {3 size} size {{parent.patch_size}} } Constant { inputs 0 format "512 512 0 0 512 512 1 square_512" name Constant13 note_font Helvetica xpos 1155 ypos 666 postage_stamp false } Reformat { type "to box" box_width {{parent.size}} name Reformat1 note_font Helvetica xpos 1155 ypos 690 } Expression { channel0 rgba expr0 x/width name Expression14 note_font Helvetica xpos 1155 ypos 714 } Multiply { channels rgba value {1 0.5 0 1} name Multiply17 note_font Helvetica xpos 1155 ypos 754 } Expression { channel0 {none none none rgba.alpha} expr0 y/height name Expression15 note_font Helvetica xpos 1155 ypos 785 } Output { name Output1 xpos 1155 ypos 891 } end_group Group { inputs 0 name Swatch35 label "\[value value]" note_font Helvetica xpos 80 ypos -698 postage_stamp true addUserKnob {20 User} addUserKnob {41 value l color T Multiply17.value} addUserKnob {3 size} size {{parent.patch_size}} } Constant { inputs 0 format "512 512 0 0 512 512 1 square_512" name Constant13 note_font Helvetica xpos 1155 ypos 666 postage_stamp false } Reformat { type "to box" box_width {{parent.size}} name Reformat1 note_font Helvetica xpos 1155 ypos 690 } Expression { channel0 rgba expr0 x/width name Expression14 note_font Helvetica xpos 1155 ypos 714 } Multiply { channels rgba value {1 0.75 0 1} name Multiply17 note_font Helvetica xpos 1155 ypos 754 } Expression { channel0 {none none none rgba.alpha} expr0 y/height name Expression15 note_font Helvetica xpos 1155 ypos 785 } Output { name Output1 xpos 1155 ypos 891 } end_group Group { inputs 0 name Swatch36 label "\[value value]" note_font Helvetica xpos -40 ypos -698 postage_stamp true addUserKnob {20 User} addUserKnob {41 value l color T Multiply17.value} addUserKnob {3 size} size {{parent.patch_size}} } Constant { inputs 0 format "512 512 0 0 512 512 1 square_512" name Constant13 note_font Helvetica xpos 1155 ypos 666 postage_stamp false } Reformat { type "to box" box_width {{parent.size}} name Reformat1 note_font Helvetica xpos 1155 ypos 690 } Expression { channel0 rgba expr0 x/width name Expression14 note_font Helvetica xpos 1155 ypos 714 } Multiply { channels rgba value {1 1 0 1} name Multiply17 note_font Helvetica xpos 1155 ypos 754 } Expression { channel0 {none none none rgba.alpha} expr0 y/height name Expression15 note_font Helvetica xpos 1155 ypos 785 } Output { name Output1 xpos 1155 ypos 891 } end_group Group { inputs 0 name Swatch38 label "\[value value]" note_font Helvetica xpos -160 ypos -698 postage_stamp true addUserKnob {20 User} addUserKnob {41 value l color T Multiply17.value} addUserKnob {3 size} size {{parent.patch_size}} } Constant { inputs 0 format "512 512 0 0 512 512 1 square_512" name Constant13 note_font Helvetica xpos 1155 ypos 666 postage_stamp false } Reformat { type "to box" box_width {{parent.size}} name Reformat1 note_font Helvetica xpos 1155 ypos 690 } Expression { channel0 rgba expr0 x/width name Expression14 note_font Helvetica xpos 1155 ypos 714 } Multiply { channels rgba value {0.75 1 0 1} name Multiply17 note_font Helvetica xpos 1155 ypos 754 } Expression { channel0 {none none none rgba.alpha} expr0 y/height name Expression15 note_font Helvetica xpos 1155 ypos 785 } Output { name Output1 xpos 1155 ypos 891 } end_group Group { inputs 0 name Swatch37 label "\[value value]" note_font Helvetica xpos -280 ypos -698 postage_stamp true addUserKnob {20 User} addUserKnob {41 value l color T Multiply17.value} addUserKnob {3 size} size {{parent.patch_size}} } Constant { inputs 0 format "512 512 0 0 512 512 1 square_512" name Constant13 note_font Helvetica xpos 1155 ypos 666 postage_stamp false } Reformat { type "to box" box_width {{parent.size}} name Reformat1 note_font Helvetica xpos 1155 ypos 690 } Expression { channel0 rgba expr0 x/width name Expression14 note_font Helvetica xpos 1155 ypos 714 } Multiply { channels rgba value {0.5 1 0 1} name Multiply17 note_font Helvetica xpos 1155 ypos 754 } Expression { channel0 {none none none rgba.alpha} expr0 y/height name Expression15 note_font Helvetica xpos 1155 ypos 785 } Output { name Output1 xpos 1155 ypos 891 } end_group Group { inputs 0 name Swatch40 label "\[value value]" note_font Helvetica xpos -400 ypos -698 postage_stamp true addUserKnob {20 User} addUserKnob {41 value l color T Multiply17.value} addUserKnob {3 size} size {{parent.patch_size}} } Constant { inputs 0 format "512 512 0 0 512 512 1 square_512" name Constant13 note_font Helvetica xpos 1155 ypos 666 postage_stamp false } Reformat { type "to box" box_width {{parent.size}} name Reformat1 note_font Helvetica xpos 1155 ypos 690 } Expression { channel0 rgba expr0 x/width name Expression14 note_font Helvetica xpos 1155 ypos 714 } Multiply { channels rgba value {0.25 1 0 1} name Multiply17 note_font Helvetica xpos 1155 ypos 754 } Expression { channel0 {none none none rgba.alpha} expr0 y/height name Expression15 note_font Helvetica xpos 1155 ypos 785 } Output { name Output1 xpos 1155 ypos 891 } end_group Group { inputs 0 name Swatch39 label "\[value value]" note_font Helvetica xpos -520 ypos -698 postage_stamp true addUserKnob {20 User} addUserKnob {41 value l color T Multiply17.value} addUserKnob {3 size} size {{parent.patch_size}} } Constant { inputs 0 format "512 512 0 0 512 512 1 square_512" name Constant13 note_font Helvetica xpos 1155 ypos 666 postage_stamp false } Reformat { type "to box" box_width {{parent.size}} name Reformat1 note_font Helvetica xpos 1155 ypos 690 } Expression { channel0 rgba expr0 x/width name Expression14 note_font Helvetica xpos 1155 ypos 714 } Multiply { channels rgba value {0 1 0 1} name Multiply17 note_font Helvetica xpos 1155 ypos 754 } Expression { channel0 {none none none rgba.alpha} expr0 y/height name Expression15 note_font Helvetica xpos 1155 ypos 785 } Output { name Output1 xpos 1155 ypos 891 } end_group Group { inputs 0 name Swatch46 label "\[value value]" note_font Helvetica xpos -640 ypos -698 postage_stamp true addUserKnob {20 User} addUserKnob {41 value l color T Multiply17.value} addUserKnob {3 size} size {{parent.patch_size}} } Constant { inputs 0 format "512 512 0 0 512 512 1 square_512" name Constant13 note_font Helvetica xpos 1155 ypos 666 postage_stamp false } Reformat { type "to box" box_width {{parent.size}} name Reformat1 note_font Helvetica xpos 1155 ypos 690 } Expression { channel0 rgba expr0 x/width name Expression14 note_font Helvetica xpos 1155 ypos 714 } Multiply { channels rgba value {0 1 0.25 1} name Multiply17 note_font Helvetica xpos 1155 ypos 754 } Expression { channel0 {none none none rgba.alpha} expr0 y/height name Expression15 note_font Helvetica xpos 1155 ypos 785 } Output { name Output1 xpos 1155 ypos 891 } end_group Group { inputs 0 name Swatch45 label "\[value value]" note_font Helvetica xpos -760 ypos -698 postage_stamp true addUserKnob {20 User} addUserKnob {41 value l color T Multiply17.value} addUserKnob {3 size} size {{parent.patch_size}} } Constant { inputs 0 format "512 512 0 0 512 512 1 square_512" name Constant13 note_font Helvetica xpos 1155 ypos 666 postage_stamp false } Reformat { type "to box" box_width {{parent.size}} name Reformat1 note_font Helvetica xpos 1155 ypos 690 } Expression { channel0 rgba expr0 x/width name Expression14 note_font Helvetica xpos 1155 ypos 714 } Multiply { channels rgba value {0 1 0.5 1} name Multiply17 note_font Helvetica xpos 1155 ypos 754 } Expression { channel0 {none none none rgba.alpha} expr0 y/height name Expression15 note_font Helvetica xpos 1155 ypos 785 } Output { name Output1 xpos 1155 ypos 891 } end_group Group { inputs 0 name Swatch44 label "\[value value]" note_font Helvetica xpos -880 ypos -698 postage_stamp true addUserKnob {20 User} addUserKnob {41 value l color T Multiply17.value} addUserKnob {3 size} size {{parent.patch_size}} } Constant { inputs 0 format "512 512 0 0 512 512 1 square_512" name Constant13 note_font Helvetica xpos 1155 ypos 666 postage_stamp false } Reformat { type "to box" box_width {{parent.size}} name Reformat1 note_font Helvetica xpos 1155 ypos 690 } Expression { channel0 rgba expr0 x/width name Expression14 note_font Helvetica xpos 1155 ypos 714 } Multiply { channels rgba value {0 1 0.75 1} name Multiply17 note_font Helvetica xpos 1155 ypos 754 } Expression { channel0 {none none none rgba.alpha} expr0 y/height name Expression15 note_font Helvetica xpos 1155 ypos 785 } Output { name Output1 xpos 1155 ypos 891 } end_group Group { inputs 0 name Swatch43 label "\[value value]" note_font Helvetica xpos -880 ypos -698 postage_stamp true addUserKnob {20 User} addUserKnob {41 value l color T Multiply17.value} addUserKnob {3 size} size {{parent.patch_size}} } Constant { inputs 0 format "512 512 0 0 512 512 1 square_512" name Constant13 note_font Helvetica xpos 1155 ypos 666 postage_stamp false } Reformat { type "to box" box_width {{parent.size}} name Reformat1 note_font Helvetica xpos 1155 ypos 690 } Expression { channel0 rgba expr0 x/width name Expression14 note_font Helvetica xpos 1155 ypos 714 } Multiply { channels rgba value {0 1 1 1} name Multiply17 note_font Helvetica xpos 1155 ypos 754 } Expression { channel0 {none none none rgba.alpha} expr0 y/height name Expression15 note_font Helvetica xpos 1155 ypos 785 } Output { name Output1 xpos 1155 ypos 891 } end_group Group { inputs 0 name Swatch42 label "\[value value]" note_font Helvetica xpos -1000 ypos -698 postage_stamp true addUserKnob {20 User} addUserKnob {41 value l color T Multiply17.value} addUserKnob {3 size} size {{parent.patch_size}} } Constant { inputs 0 format "512 512 0 0 512 512 1 square_512" name Constant13 note_font Helvetica xpos 1155 ypos 666 postage_stamp false } Reformat { type "to box" box_width {{parent.size}} name Reformat1 note_font Helvetica xpos 1155 ypos 690 } Expression { channel0 rgba expr0 x/width name Expression14 note_font Helvetica xpos 1155 ypos 714 } Multiply { channels rgba value {0 0.75 1 1} name Multiply17 note_font Helvetica xpos 1155 ypos 754 } Expression { channel0 {none none none rgba.alpha} expr0 y/height name Expression15 note_font Helvetica xpos 1155 ypos 785 } Output { name Output1 xpos 1155 ypos 891 } end_group Group { inputs 0 name Swatch41 label "\[value value]" note_font Helvetica xpos -1120 ypos -698 postage_stamp true addUserKnob {20 User} addUserKnob {41 value l color T Multiply17.value} addUserKnob {3 size} size {{parent.patch_size}} } Constant { inputs 0 format "512 512 0 0 512 512 1 square_512" name Constant13 note_font Helvetica xpos 1155 ypos 666 postage_stamp false } Reformat { type "to box" box_width {{parent.size}} name Reformat1 note_font Helvetica xpos 1155 ypos 690 } Expression { channel0 rgba expr0 x/width name Expression14 note_font Helvetica xpos 1155 ypos 714 } Multiply { channels rgba value {0 0.5 1 1} name Multiply17 note_font Helvetica xpos 1155 ypos 754 } Expression { channel0 {none none none rgba.alpha} expr0 y/height name Expression15 note_font Helvetica xpos 1155 ypos 785 } Output { name Output1 xpos 1155 ypos 891 } end_group Group { inputs 0 name Swatch47 label "\[value value]" note_font Helvetica xpos -1240 ypos -698 postage_stamp true addUserKnob {20 User} addUserKnob {41 value l color T Multiply17.value} addUserKnob {3 size} size {{parent.patch_size}} } Constant { inputs 0 format "512 512 0 0 512 512 1 square_512" name Constant13 note_font Helvetica xpos 1155 ypos 666 postage_stamp false } Reformat { type "to box" box_width {{parent.size}} name Reformat1 note_font Helvetica xpos 1155 ypos 690 } Expression { channel0 rgba expr0 x/width name Expression14 note_font Helvetica xpos 1155 ypos 714 } Multiply { channels rgba value {0 0.25 1 1} name Multiply17 note_font Helvetica xpos 1155 ypos 754 } Expression { channel0 {none none none rgba.alpha} expr0 y/height name Expression15 note_font Helvetica xpos 1155 ypos 785 } Output { name Output1 xpos 1155 ypos 891 } end_group Group { inputs 0 name Swatch48 label "\[value value]" note_font Helvetica xpos -1360 ypos -698 postage_stamp true addUserKnob {20 User} addUserKnob {41 value l color T Multiply17.value} addUserKnob {3 size} size {{parent.patch_size}} } Constant { inputs 0 format "512 512 0 0 512 512 1 square_512" name Constant13 note_font Helvetica xpos 1155 ypos 666 postage_stamp false } Reformat { type "to box" box_width {{parent.size}} name Reformat1 note_font Helvetica xpos 1155 ypos 690 } Expression { channel0 rgba expr0 x/width name Expression14 note_font Helvetica xpos 1155 ypos 714 } Multiply { channels rgba value {0 0 1 1} name Multiply17 note_font Helvetica xpos 1155 ypos 754 } Expression { channel0 {none none none rgba.alpha} expr0 y/height name Expression15 note_font Helvetica xpos 1155 ypos 785 } Output { name Output1 xpos 1155 ypos 891 } end_group ContactSheet { inputs 24 width 2048 height 768 columns 8 roworder TopBottom name ContactSheet1 note_font Helvetica xpos -1360 ypos -459 } Expression { temp_name0 s temp_expr0 sat_samples expr3 rint(a*s)/s name Expression5 note_font Helvetica xpos -1360 ypos -369 disable {{!sat_samples}} } Saturation { saturation 0 mode Maximum maskChannelInput rgba.alpha name Saturation4 note_font Helvetica xpos -1360 ypos -315 } Output { name Output1 xpos -1360 ypos -70 } end_group Switch { inputs 2 which 1 name SwitchTest note_font Helvetica selected true xpos 1390 ypos -2949 disable true } Dot { name Dot65 note_font "Helvetica Bold" note_font_size 24 note_font_color 0xff selected true xpos 1424 ypos -2676 } set N76fdc520 [stack 0] Dot { name Dot68 note_font "Helvetica Bold" note_font_size 24 note_font_color 0xff selected true xpos 1644 ypos -2676 } set Nff2b52f0 [stack 0] Dot { name Dot66 note_font "Helvetica Bold" note_font_size 24 note_font_color 0xff selected true xpos 1754 ypos -2676 } Expression { channel0 rgba expr0 max(r,g,b) name MaxRGB selected true xpos 1720 ypos -2620 } set Na10674b0 [stack 0] Group { name Tonemap_PiecewiseHyperbolic9 selected true xpos 1720 ypos -2560 addUserKnob {20 Tonemap} addUserKnob {35 presets l " " M {"presets/SDR - Dark" "knobs this \{Lw \{100 100\} Lg 10 g \{0.18 \{Lg/Lw.0*pow(2,ex)\}\} w \{40 \{Lw.1/Lw.0\}\} ex 0 p 1.3 ps 1 t0 0.003\}" "presets/SDR - Dim" "knobs this \{Lw \{100 100\} Lg 10 g \{0.18 \{Lg/Lw.0*pow(2,ex)\}\} w \{40 \{Lw.1/Lw.0\}\} ex 0 p 1.3 ps 0.95 t0 0.003\}" "presets/SDR - Average" "knobs this \{Lw \{100 100\} Lg 10 g \{0.18 \{Lg/Lw.0*pow(2,ex)\}\} w \{40 \{Lw.1/Lw.0\}\} ex 0 p 1.3 ps 0.9 t0 0.003\}" "presets/Rec.2100 PQ ST-2084 600 nit" "knobs this \{Lw \{10000 600\} Lg 14 g \{0.18 \{Lg/Lw.0*pow(2,ex)\}\} w \{80 \{Lw.1/Lw.0\}\} ex \{\{0.1*log(Lw.1/1000)/log(2)\}\} p 1.2 t0 0.0001\}" "presets/Rec.2100 PQ ST-2084 1000 nit" "knobs this \{Lw \{10000 1000\} Lg 14 g \{0.18 \{Lg/Lw.0*pow(2,ex)\}\} w \{90 \{Lw.1/Lw.0\}\} ex \{\{0.1*log(Lw.1/1000)/log(2)\}\} p 1.2 t0 0.0001\}" "presets/Rec.2100 PQ ST-2084 2000 nit" "knobs this \{Lw \{10000 2000\} Lg 14 g \{0.18 \{Lg/Lw.0*pow(2,ex)\}\} w \{100 \{Lw.1/Lw.0\}\} ex \{\{0.1*log(Lw.1/1000)/log(2)\}\} p 1.2 t0 0.0001\}" "presets/Rec.2100 PQ ST-2084 4000 nit" "knobs this \{Lw \{10000 4000\} Lg 14 g \{0.18 \{Lg/Lw.0*pow(2,ex)\}\} w \{110 \{Lw.1/Lw.0\}\} ex \{\{0.1*log(Lw.1/1000)/log(2)\}\} p 1.2 t0 0.0001\}" "" ""}} addUserKnob {78 Lw t "Peak white to reference white ratio. Useful for HDR, if you need to ouput a 1000 nit peak luminance image in the 10,000 nit peak luminance ST-2084 PQ container for example." n 2} Lw {100 100} addUserKnob {7 Lg t "Grey luminance in nits." R 4 20} Lg 10 addUserKnob {26 ""} addUserKnob {7 ex l exposure t "scene-referred exposure control"} addUserKnob {78 g l grey t "input -> output grey" n 2} g {0.18 {Lg/Lw.0*pow(2,ex)}} addUserKnob {78 w l white t "input -> output white" n 2} w {40 {Lw.1/Lw.0}} addUserKnob {7 p l contrast R 0.8 2} p 1.3 addUserKnob {7 ps l surround t "surround compensation: un-pivoted power function" R 0.8 1.2} ps 1 addUserKnob {7 t0 l toe R 0 0.01} t0 0.003 addUserKnob {78 s l scale n 2} s {{pow(g.1,1/p)/g.0} {(s.0*pow(w.0-g.0,2)*pow(g.0*s.0-pow(w.1,1/p),2))/pow(s.0*w.0-pow(w.1,1/p),2)}} addUserKnob {4 direction M {forward inverse}} addUserKnob {26 ""} addUserKnob {26 plot_label l " " T "desmos plot"} } Input { inputs 0 name Input xpos -40 ypos -70 } set N27a75d60 [stack 0] Expression { expr0 w.1*pow(r/w.1,1/ps) expr1 w.1*pow(g/w.1,1/ps) expr2 w.1*pow(b/w.1,1/ps) name InvSurround note_font Helvetica xpos 70 ypos 21 } Expression { temp_name0 st temp_expr0 (w.1+t0)/w.1 expr0 (r+sqrt(r*(4*st*t0+r)))/(2*st) expr1 (g+sqrt(g*(4*st*t0+g)))/(2*st) expr2 (b+sqrt(b*(4*st*t0+b)))/(2*st) name InvToe note_font Helvetica xpos 70 ypos 51 } Expression { temp_name0 h0 temp_expr0 g.0-sqrt(s.1/s.0) temp_name1 h1 temp_expr1 s.0*g.0+sqrt(s.0*s.1) expr0 r>g.1?h0-s.1/(pow(r,1/p)-h1):pow(r,1/p)/s.0 expr1 g>g.1?h0-s.1/(pow(g,1/p)-h1):pow(g,1/p)/s.0 expr2 b>g.1?h0-s.1/(pow(b,1/p)-h1):pow(b,1/p)/s.0 name InvCompress note_font Helvetica xpos 70 ypos 81 } push $N27a75d60 Expression { temp_name0 h0 temp_expr0 g.0-sqrt(s.1/s.0) temp_name1 h1 temp_expr1 s.0*g.0+sqrt(s.0*s.1) expr0 r>g.0?pow(h1-s.1/(r-h0),p):pow(s.0*r,p) expr1 g>g.0?pow(h1-s.1/(g-h0),p):pow(s.0*g,p) expr2 b>g.0?pow(h1-s.1/(b-h0),p):pow(s.0*b,p) name Shoulder note_font Helvetica xpos -150 ypos 21 } Expression { temp_name0 st temp_expr0 (w.1+t0)/w.1 expr0 (st*r*r)/(r+t0) expr1 (st*g*g)/(g+t0) expr2 (st*b*b)/(b+t0) name Toe note_font Helvetica xpos -150 ypos 51 } Expression { expr0 w.1*pow(r/w.1,ps) expr1 w.1*pow(g/w.1,ps) expr2 w.1*pow(b/w.1,ps) name Surround note_font Helvetica xpos -150 ypos 81 } Switch { inputs 2 which {{parent.direction}} name SwitchDirection note_font Helvetica xpos -40 ypos 141 } Output { name Output xpos -40 ypos 200 } end_group push $Na10674b0 push $Nff2b52f0 MergeExpression { inputs 2 expr0 Ar==0?0:Br/Ar expr1 Ag==0?0:Bg/Ag expr2 Ab==0?0:Bb/Ab name MergeDivideReverse1 selected true xpos 1610 ypos -2620 } MergeExpression { inputs 2 expr0 Ar*Br expr1 Ar*Bg expr2 Ar*Bb name Multiply14 note_font Helvetica selected true xpos 1610 ypos -2559 } Dot { name Dot69 note_font "Helvetica Bold" note_font_size 24 note_font_color 0xff selected true xpos 1644 ypos -2466 } push $N76fdc520 Group { name Tonemap_PiecewiseHyperbolic7 selected true xpos 1390 ypos -2620 addUserKnob {20 Tonemap} addUserKnob {35 presets l " " M {"presets/SDR - Dark" "knobs this \{Lw \{100 100\} Lg 10 g \{0.18 \{Lg/Lw.0*pow(2,ex)\}\} w \{40 \{Lw.1/Lw.0\}\} ex 0 p 1.3 ps 1 t0 0.003\}" "presets/SDR - Dim" "knobs this \{Lw \{100 100\} Lg 10 g \{0.18 \{Lg/Lw.0*pow(2,ex)\}\} w \{40 \{Lw.1/Lw.0\}\} ex 0 p 1.3 ps 0.95 t0 0.003\}" "presets/SDR - Average" "knobs this \{Lw \{100 100\} Lg 10 g \{0.18 \{Lg/Lw.0*pow(2,ex)\}\} w \{40 \{Lw.1/Lw.0\}\} ex 0 p 1.3 ps 0.9 t0 0.003\}" "presets/Rec.2100 PQ ST-2084 600 nit" "knobs this \{Lw \{10000 600\} Lg 14 g \{0.18 \{Lg/Lw.0*pow(2,ex)\}\} w \{80 \{Lw.1/Lw.0\}\} ex \{\{0.1*log(Lw.1/1000)/log(2)\}\} p 1.2 t0 0.0001\}" "presets/Rec.2100 PQ ST-2084 1000 nit" "knobs this \{Lw \{10000 1000\} Lg 14 g \{0.18 \{Lg/Lw.0*pow(2,ex)\}\} w \{90 \{Lw.1/Lw.0\}\} ex \{\{0.1*log(Lw.1/1000)/log(2)\}\} p 1.2 t0 0.0001\}" "presets/Rec.2100 PQ ST-2084 2000 nit" "knobs this \{Lw \{10000 2000\} Lg 14 g \{0.18 \{Lg/Lw.0*pow(2,ex)\}\} w \{100 \{Lw.1/Lw.0\}\} ex \{\{0.1*log(Lw.1/1000)/log(2)\}\} p 1.2 t0 0.0001\}" "presets/Rec.2100 PQ ST-2084 4000 nit" "knobs this \{Lw \{10000 4000\} Lg 14 g \{0.18 \{Lg/Lw.0*pow(2,ex)\}\} w \{110 \{Lw.1/Lw.0\}\} ex \{\{0.1*log(Lw.1/1000)/log(2)\}\} p 1.2 t0 0.0001\}" "" ""}} addUserKnob {78 Lw t "Peak white to reference white ratio. Useful for HDR, if you need to ouput a 1000 nit peak luminance image in the 10,000 nit peak luminance ST-2084 PQ container for example." n 2} Lw {100 100} addUserKnob {7 Lg t "Grey luminance in nits." R 4 20} Lg 10 addUserKnob {26 ""} addUserKnob {7 ex l exposure t "scene-referred exposure control"} addUserKnob {78 g l grey t "input -> output grey" n 2} g {0.18 {Lg/Lw.0*pow(2,ex)}} addUserKnob {78 w l white t "input -> output white" n 2} w {40 {Lw.1/Lw.0}} addUserKnob {7 p l contrast R 0.8 2} p 1.3 addUserKnob {7 ps l surround t "surround compensation: un-pivoted power function" R 0.8 1.2} ps 1 addUserKnob {7 t0 l toe R 0 0.01} t0 0.003 addUserKnob {78 s l scale n 2} s {{pow(g.1,1/p)/g.0} {(s.0*pow(w.0-g.0,2)*pow(g.0*s.0-pow(w.1,1/p),2))/pow(s.0*w.0-pow(w.1,1/p),2)}} addUserKnob {4 direction M {forward inverse}} addUserKnob {26 ""} addUserKnob {26 plot_label l " " T "desmos plot"} } Input { inputs 0 name Input xpos -40 ypos -70 } set N4b4e4b50 [stack 0] Expression { expr0 w.1*pow(r/w.1,1/ps) expr1 w.1*pow(g/w.1,1/ps) expr2 w.1*pow(b/w.1,1/ps) name InvSurround note_font Helvetica xpos 70 ypos 21 } Expression { temp_name0 st temp_expr0 (w.1+t0)/w.1 expr0 (r+sqrt(r*(4*st*t0+r)))/(2*st) expr1 (g+sqrt(g*(4*st*t0+g)))/(2*st) expr2 (b+sqrt(b*(4*st*t0+b)))/(2*st) name InvToe note_font Helvetica xpos 70 ypos 51 } Expression { temp_name0 h0 temp_expr0 g.0-sqrt(s.1/s.0) temp_name1 h1 temp_expr1 s.0*g.0+sqrt(s.0*s.1) expr0 r>g.1?h0-s.1/(pow(r,1/p)-h1):pow(r,1/p)/s.0 expr1 g>g.1?h0-s.1/(pow(g,1/p)-h1):pow(g,1/p)/s.0 expr2 b>g.1?h0-s.1/(pow(b,1/p)-h1):pow(b,1/p)/s.0 name InvCompress note_font Helvetica xpos 70 ypos 81 } push $N4b4e4b50 Expression { temp_name0 h0 temp_expr0 g.0-sqrt(s.1/s.0) temp_name1 h1 temp_expr1 s.0*g.0+sqrt(s.0*s.1) expr0 r>g.0?pow(h1-s.1/(r-h0),p):pow(s.0*r,p) expr1 g>g.0?pow(h1-s.1/(g-h0),p):pow(s.0*g,p) expr2 b>g.0?pow(h1-s.1/(b-h0),p):pow(s.0*b,p) name Shoulder note_font Helvetica xpos -150 ypos 21 } Expression { temp_name0 st temp_expr0 (w.1+t0)/w.1 expr0 (st*r*r)/(r+t0) expr1 (st*g*g)/(g+t0) expr2 (st*b*b)/(b+t0) name Toe note_font Helvetica xpos -150 ypos 51 } Expression { expr0 w.1*pow(r/w.1,ps) expr1 w.1*pow(g/w.1,ps) expr2 w.1*pow(b/w.1,ps) name Surround note_font Helvetica xpos -150 ypos 81 } Switch { inputs 2 which {{parent.direction}} name SwitchDirection note_font Helvetica xpos -40 ypos 141 } Output { name Output xpos -40 ypos 200 } end_group Switch { inputs 2 which 1 name SwitchChromaticityPreserving note_font Helvetica selected true xpos 1390 ypos -2469 disable true } Group { name PlotChromaticity5 selected true xpos 1390 ypos -2200 addUserKnob {20 PlotChromaticity_tab l PlotChromaticity} addUserKnob {6 use_gpu l "Use GPU if available" +STARTLINE} use_gpu true addUserKnob {26 ""} addUserKnob {6 plot_input l "plot input" t "Enable plotting of the input pixels" +STARTLINE} plot_input true addUserKnob {41 input_gamut l gamut t "Set the gamut that the input colors are encoded in" -STARTLINE T GamutToXYZ.gamut} addUserKnob {4 diagram l in t "Choose the type of chromaticity diagram: \nCIE 1931 xy Chromaticity Diagram\nCIE 1976 u' v' Uniform Chromaticity Scale Diagram" -STARTLINE M {"CIE 1931 xy" "CIE 1976 u' v'" "" ""}} addUserKnob {6 enable_sample_color l "sample color" t "Enable plotting of the sampled color" +STARTLINE} enable_sample_color true addUserKnob {41 sample_color l color t "sample and plot selected color" T SampleColor.color} addUserKnob {22 follow_viewer l "follow viewer" t "Follow the selected viewer node. This causes this node to automatically connect to whatever the followed viewer is connected to.\n\nThis is useful if you want to have a 2nd viewer showing a chromaticity plot for whever you're looking at in your main viewer." T "n = nuke.thisNode()\nnuke.root().begin()\nv = nuke.selectedNode()\nif not v or v.Class() != 'Viewer':\n nuke.message('Please select a viewer node to follow.')\nelse:\n v\['knobChanged'].setValue('v = nuke.activeViewer().node()\\nif v and v.name() == nuke.thisNode().name():\\n con = v.input(nuke.activeViewer().activeInput())\\n plt = nuke.toNode(\"\{0\}\")\\n plt.setInput(0, con)'.format(n.name()))" +STARTLINE} addUserKnob {22 unfollow_viewer l "unfollow viewer" -STARTLINE T "n = nuke.thisNode()\nnuke.root().begin()\nv = nuke.selectedNode()\nif not v or v.Class() != 'Viewer':\n nuke.message('Please select a viewer node to unfollow.')\nelse:\n v\['knobChanged'].setValue('')"} addUserKnob {26 plot_dimensions_label l " " T "Chromaticity Diagram"} addUserKnob {3 resolution l " resolution" t "resolution to output"} resolution 2048 addUserKnob {7 right_margin l "right margin" R 1 1.5} right_margin 1.1 addUserKnob {7 left_margin l "left margin" R 0 0.2} left_margin 0.1 addUserKnob {6 draw_spectral_locus l "spectrum locus" t "draw the spectrum locus: the boundary of color the human eye can see." +STARTLINE} draw_spectral_locus true addUserKnob {6 draw_line_of_purples l "line of purples" t "draw the \"line of purples\"" -STARTLINE} draw_line_of_purples true addUserKnob {6 draw_planckian_locus l "planckian locus" t "Display the planckian locus or the blackbody locus." +STARTLINE} draw_planckian_locus true addUserKnob {6 gamut_grid l "gamut grid" t "Display a gamut boundary with a grid or dot pattern" +STARTLINE} addUserKnob {41 gamut_gamutgrid l "" t "gamut for gamutgrid" -STARTLINE T RGBToXYZ_GamutGrid.gamut} addUserKnob {4 gamut_grid_style l style t "Choose the style to display the gamut plot" -STARTLINE M {grid dots "" "" "" ""}} addUserKnob {4 distribution l dist t "Which chromaticity space should the overlays be constructed in? \n\nYxy is familiar, but not very perceptually uniform.\n\nu'v' is designed to be more perceptually uniform." -STARTLINE M {"1931 Yxy" "1976 u'v'" "" ""}} addUserKnob {7 density t "Density of the grid or points" R 10 100} density 50 addUserKnob {6 gamut_a l "gamut a" t "Display a gamut outline" +STARTLINE} addUserKnob {41 gamut_a_1 l "" -STARTLINE T RGBToXYZ_GamutA.gamut} addUserKnob {6 gamut_b l "gamut b" t "Display a gamut outline" +STARTLINE} addUserKnob {41 gamut_b_1 l "" -STARTLINE T RGBToXYZ_GamutB.gamut} addUserKnob {6 gamut_c l "gamut c" t "Display a gamut outline" +STARTLINE} addUserKnob {41 gamut_c_1 l "" -STARTLINE T RGBToXYZ_GamutC.gamut} addUserKnob {6 draw_pointers_gamut l "pointer's gamut" t "DrawPointer's gamut boundary" +STARTLINE} addUserKnob {6 draw_pointers_samples l "pointers sample colors" t "show the individual pointer gamut samples" -STARTLINE} addUserKnob {6 draw_macbeth_chart l "macbeth chart" t "draw a ColorChecker24 aka Macbeth Chart" +STARTLINE} addUserKnob {6 coordinate_system l "coordinate system" t "Draw CIE xy coordinate grid x and y axes" +STARTLINE} coordinate_system true addUserKnob {6 map_overlays_to_input_gamut l "map overlays to input gamut" t "This maps the overlays like the spectral locus, pointer's gamut, and the gamut overlay to the working gamut instead of keeping them as XYZ.\n\nFor example if the input gamut is ACEScg, these overlays will be mapped to that. Note that this can cause most of the overlays to be negative or highly saturated which might harm the visual appearance." +STARTLINE} map_overlays_to_input_gamut true } Group { inputs 0 name GamutGrid1 xpos -920 ypos -201 postage_stamp true addUserKnob {20 GamutGrid} addUserKnob {3 style} style {{!parent.gamut_grid_style}} addUserKnob {3 distribution -STARTLINE} distribution {{parent.distribution}} addUserKnob {7 density R 10 150} density {{parent.density}} addUserKnob {26 ""} addUserKnob {41 matrix T ColorMatrix.matrix} addUserKnob {12 wxy} wxy {{parent.RGBToXYZ_GamutGrid.wxy} {parent.RGBToXYZ_GamutGrid.wxy}} } ColorWheel { inputs 0 format "512 512 0 0 512 512 1 square_512" centerSaturation 1 fillFormat false area {-170 -158 682 670} name ColorWheel4 xpos -260 ypos -15 postage_stamp false } Crop { box {0 0 {width} {height}} crop false name Crop2 xpos -260 ypos 27 } Reformat { type scale scale {{max(parent.density/50,0.25)}} resize distort filter Impulse pbb true name Reformat3 xpos -260 ypos 110 } set N37563ac0 [stack 0] push $N37563ac0 ContactSheet { inputs 2 width {{width*columns}} height {{height/pixel_aspect*rows}} rows 1 columns 2 roworder TopBottom name ContactSheet2 xpos -260 ypos 169 } Dot { name Dot1 label " " note_font "Helvetica Bold" note_font_size 24 note_font_color 0xa5a5a501 xpos -226 ypos 246 } ColorWheel { inputs 0 format "512 512 0 0 512 512 1 square_512" fillFormat false area {40 40 472 472} name ColorWheel1 xpos -40 ypos -664 postage_stamp false } Reformat { type scale scale {{max(parent.density/50,0.25)}} resize distort filter Impulse pbb true name Reformat1 xpos -40 ypos -628 } Crop { box {0 0 {width} {height}} reformat true name Crop1 xpos -40 ypos -602 } Unpremult { name Unpremult1 xpos -40 ypos -526 } ColorMatrix { matrix { {{parent.parent.RGBToXYZ_GamutGrid.ColorMatrix.matrix} {parent.parent.RGBToXYZ_GamutGrid.ColorMatrix.matrix} {parent.parent.RGBToXYZ_GamutGrid.ColorMatrix.matrix}} {{parent.parent.RGBToXYZ_GamutGrid.ColorMatrix.matrix} {parent.parent.RGBToXYZ_GamutGrid.ColorMatrix.matrix} {parent.parent.RGBToXYZ_GamutGrid.ColorMatrix.matrix}} {{parent.parent.RGBToXYZ_GamutGrid.ColorMatrix.matrix} {parent.parent.RGBToXYZ_GamutGrid.ColorMatrix.matrix} {parent.parent.RGBToXYZ_GamutGrid.ColorMatrix.matrix}} } name ColorMatrix label "RGB to XYZ" xpos -40 ypos -415 } Colorspace { colorspace_in CIE-XYZ colorspace_out CIE-Yxy name Colorspace1 label "\[value colorspace_in] -> \[value colorspace_out]" xpos -40 ypos -341 } set Nd66fa950 [stack 0] Dot { name Dot2 label " " note_font "Helvetica Bold" note_font_size 24 note_font_color 0xa5a5a501 xpos -556 ypos -331 } Expression { expr0 r expr1 "4*g / ( -2*g + 12*b + 3)" expr2 "9*b / ( -2*g + 12*b + 3)" name Expression5 label "CIE Yxy to CIELuv" xpos -590 ypos -304 disable {{!parent.distribution}} } Expression { expr0 r expr1 "(-(degrees(atan2(g-white.x, b-white.y))-180)+270)%360/360" expr2 "hypot(g-white.x, b-white.y)" expr3 a name Expression3 xpos -590 ypos -261 cached true addUserKnob {20 User} addUserKnob {12 white} white {{"parent.distribution ? 4*parent.wxy.x / ( -2 * parent.wxy.x + 12 * parent.wxy.y + 3) : parent.wxy"} {"parent.distribution ? 9*parent.wxy.y / ( -2*parent.wxy.x + 12*parent.wxy.y + 3) : parent.wxy"}} } set N2d6760c0 [stack 0] Posterize { channels rgb Colors {{rint(parent.density/3*2)}} name Posterize1 xpos -590 ypos -191 } set N1b269710 [stack 0] push $N2d6760c0 Dot { name Dot15 xpos -446 ypos -257 } Copy { inputs 2 from0 rgba.blue to0 rgba.blue name Copy1 xpos -480 ypos -154 } push $N1b269710 push $N2d6760c0 Dot { name Dot16 xpos -666 ypos -257 } Copy { inputs 2 from0 rgba.green to0 rgba.green name Copy2 xpos -700 ypos -153 } ContactSheet { inputs 2 width {{width*columns}} height {{height/pixel_aspect*rows}} rows 1 columns 2 center true roworder TopBottom name ContactSheet3 xpos -590 ypos -106 } Expression { expr0 r expr1 cos(radians(g*360))*b+white.x expr2 sin(radians(g*360))*b+white.y expr3 a name Expression19 xpos -590 ypos -58 cached true addUserKnob {20 User} addUserKnob {12 white} white {{parent.Expression3.white} {parent.Expression3.white}} } Expression { expr0 r expr1 "9*g / ( 6*g - 16*b + 12)" expr2 "4*b/ ( 6*g - 16*b + 12)" name Expression2 label "CIELuv to CIE Yxy" xpos -590 ypos -16 disable {{!parent.distribution}} } Colorspace { colorspace_in CIE-Yxy colorspace_out CIE-XYZ name Colorspace2 label "\[value colorspace_in] -> \[value colorspace_out]" xpos -590 ypos 32 } ColorMatrix { matrix { {{parent.parent.RGBToXYZ_GamutGrid.ColorMatrix.matrix} {parent.parent.RGBToXYZ_GamutGrid.ColorMatrix.matrix} {parent.parent.RGBToXYZ_GamutGrid.ColorMatrix.matrix}} {{parent.parent.RGBToXYZ_GamutGrid.ColorMatrix.matrix} {parent.parent.RGBToXYZ_GamutGrid.ColorMatrix.matrix} {parent.parent.RGBToXYZ_GamutGrid.ColorMatrix.matrix}} {{parent.parent.RGBToXYZ_GamutGrid.ColorMatrix.matrix} {parent.parent.RGBToXYZ_GamutGrid.ColorMatrix.matrix} {parent.parent.RGBToXYZ_GamutGrid.ColorMatrix.matrix}} } invert true name ColorMatrix1 label "XYZ to RGB" xpos -590 ypos 81 } Clamp { channels rgba maximum_enable false name ClampMin2 xpos -590 ypos 119 } Clamp { channels alpha minimum 1 MinClampTo_enable true MaxClampTo_enable true name Clamp1 xpos -590 ypos 152 } Premult { name Premult1 xpos -590 ypos 194 } Merge2 { inputs 2 operation under bbox B name Merge2 xpos -590 ypos 242 } Fill { output alpha name Fill1 xpos -590 ypos 297 } Dot { name Dot3 label " GRID" note_font "Helvetica Bold" note_font_size 24 note_font_color 0xa5a5a501 xpos -556 ypos 378 } push $N37563ac0 push $Nd66fa950 Expression { expr0 r expr1 "4*g / ( -2*g + 12*b + 3)" expr2 "9*b / ( -2*g + 12*b + 3)" name Expression4 label "CIE Yxy to CIELuv" xpos -40 ypos -280 disable {{!parent.distribution}} } Expression { expr0 r expr1 rint(g*Colors)/Colors expr2 rint(b*Colors)/Colors expr3 a name Expression1 label rint xpos -40 ypos -232 addUserKnob {20 User} addUserKnob {7 Colors R 1 256} Colors {{parent.density}} } Expression { expr0 r expr1 "9*g / ( 6*g - 16*b + 12)" expr2 "4*b/ ( 6*g - 16*b + 12)" name Expression6 label "CIELuv to CIE Yxy" xpos -40 ypos -184 disable {{!parent.distribution}} } Colorspace { colorspace_in CIE-Yxy colorspace_out CIE-XYZ name Colorspace3 label "\[value colorspace_in] -> \[value colorspace_out]" xpos -40 ypos -112 } ColorMatrix { matrix { {{parent.parent.RGBToXYZ_GamutGrid.ColorMatrix.matrix} {parent.parent.RGBToXYZ_GamutGrid.ColorMatrix.matrix} {parent.parent.RGBToXYZ_GamutGrid.ColorMatrix.matrix}} {{parent.parent.RGBToXYZ_GamutGrid.ColorMatrix.matrix} {parent.parent.RGBToXYZ_GamutGrid.ColorMatrix.matrix} {parent.parent.RGBToXYZ_GamutGrid.ColorMatrix.matrix}} {{parent.parent.RGBToXYZ_GamutGrid.ColorMatrix.matrix} {parent.parent.RGBToXYZ_GamutGrid.ColorMatrix.matrix} {parent.parent.RGBToXYZ_GamutGrid.ColorMatrix.matrix}} } invert true name ColorMatrix3 label "XYZ to RGB" xpos -40 ypos -57 } Clamp { channels alpha minimum 1 MinClampTo_enable true MaxClampTo_enable true name Clamp4 xpos -40 } Premult { name Premult2 xpos -40 ypos 55 } Merge2 { inputs 2 operation under bbox B name Merge1 xpos -40 ypos 110 } Clamp { channels rgba maximum_enable false name ClampMin1 xpos -40 ypos 273 } Dot { name Dot4 label " DOTS" note_font "Helvetica Bold" note_font_size 24 note_font_color 0xa5a5a501 xpos -6 ypos 378 } Switch { inputs 2 which {{parent.style}} name Switch1 xpos -257 ypos 483 } ColorMatrix { matrix { {{parent.parent.RGBToXYZ_GamutGrid.ColorMatrix.matrix} {parent.parent.RGBToXYZ_GamutGrid.ColorMatrix.matrix} {parent.parent.RGBToXYZ_GamutGrid.ColorMatrix.matrix}} {{parent.parent.RGBToXYZ_GamutGrid.ColorMatrix.matrix} {parent.parent.RGBToXYZ_GamutGrid.ColorMatrix.matrix} {parent.parent.RGBToXYZ_GamutGrid.ColorMatrix.matrix}} {{parent.parent.RGBToXYZ_GamutGrid.ColorMatrix.matrix} {parent.parent.RGBToXYZ_GamutGrid.ColorMatrix.matrix} {parent.parent.RGBToXYZ_GamutGrid.ColorMatrix.matrix}} } name ColorMatrix2 label "RGB to XYZ" xpos -257 ypos 560 } Output { name Output xpos -257 ypos 740 } ColorWheel { inputs 0 format "256 256 0 0 256 256 1 square_256" area {40 40 472 472} name ColorWheel2 xpos -37 ypos -705 postage_stamp false } end_group set Na6a64980 [stack 0] Group { name RGBToXYZ_GamutGrid label "\[if \{\[value invert]\} \{return \"XYZ to \[value gamut]\"\} else \{return \"\[value gamut] to XYZ\"\}]\n\n" xpos -1030 ypos -184 addUserKnob {20 GamutToXYZ_tab l GamutToXYZ} addUserKnob {4 gamut t "Choose gamut" M {XYZ ACES ACEScg "Filmlight E-Gamut" Rec709 Rec2020 P3D60 P3D65 P3DCI "Arri AlexaWideGamut" REDDRAGONcolor REDDRAGONcolor2 REDcolor REDcolor2 REDcolor3 REDcolor4 REDWideGamutRGB "GoPro Protune Native" CanonCinemaGamut SonySGamut SonySGamut3Cine PanasonicVGamut "DJI D-Gamut" "Fujifilm F-Gamut" BMDFilmV1 BMD4kFilmV1 BMD4kFilmV3 BMD46kFilmV1 BMD46kFilmV3 BMDWideGamutV4 "AdobeRGB\t" AdobeWideGamutRGB ROMM RIMM ERIMM ProPhotoRGB RusselRGB SharpRGB AppleRGB BestRGB}} gamut ACEScg addUserKnob {6 invert +STARTLINE} addUserKnob {26 ""} addUserKnob {26 chromaticity_coordinates_label l " " T "Chromaticity Coordinates"} addUserKnob {41 rxy T ColorMatrix.rxy} addUserKnob {41 gxy T ColorMatrix.gxy} addUserKnob {41 bxy T ColorMatrix.bxy} addUserKnob {41 wxy T ColorMatrix.wxy} addUserKnob {41 matrix T ColorMatrix.matrix} } Input { inputs 0 name Input xpos -40 ypos -10 } ColorMatrix { matrix { {{curve(which) 1 0.9525524378 0.6624541879 0.7053968906 0.4123907983 0.6369580626 0.5049495697 0.4865709841 0.4451698363 0.6380076408 0.5070186853 0.4462202489 0.4300414324 0.4581649601 0.4878340662 0.4517004192 0.7352752686 0.5022571683 0.7160496712 0.7064827085 0.5990839601 0.6796444654 0.6481720209 0.6369580626 0.6390493512 0.6141571999 0.3724023998 0.60689044 0.4017650783 0.6065810919 0.5766690373 0.7165006995 0.797760427 0.797760427 0.797760427 0.7976718545 0.7015837431 0.8156226277 0.4496616423 0.6318944097} {curve(which) 0 0 0.1340042055 0.1640413404 0.3575843275 0.1446169019 0.2646814585 0.2656676769 0.2771343887 0.2147038579 0.3587769568 0.3157556653 0.3700728714 0.3832037449 0.3432727158 0.3178463876 0.06860940903 0.2929667532 0.1296834797 0.1288010478 0.2489254922 0.1522114277 0.1940581352 0.1446169019 0.1578372866 0.2825684249 0.4324877858 0.2193847299 0.4560420811 0.2203479856 0.1855582297 0.1010205746 0.1351858526 0.1351858526 0.1351858526 0.1351878047 0.1554162204 0.04716260359 0.3162561059 0.2053879201} {curve(which) 0 9.367863095e-05 0.1561876982 0.08101774752 0.180480808 0.1688809693 0.1830150485 0.1982172877 0.1722826511 0.09774444997 0.0868505761 0.190669477 0.152531758 0.1112773567 0.1215386018 0.1830992699 0.1465712637 0.1552320272 0.1047228053 0.1151721701 0.1024464965 0.1186000481 0.108225815 0.1688809693 0.1516760886 0.05183707923 0.1436725408 0.124180764 0.09264881909 0.123526901 0.1882286519 0.1467743814 0.03134934977 0.03134934977 0.03134934977 0.03133957833 0.09979832917 0.1372147948 0.1845382005 0.1270133406}} {{curve(which) 0 0.3439664543 0.2722287476 0.2801307142 0.2126390189 0.2627002299 0.237623319 0.2289745659 0.209491685 0.2919537723 0.2207257152 0.1942579001 0.2022213936 0.1694435924 0.2289056629 0.2119505703 0.2866941094 0.1387997568 0.2612613738 0.2709796727 0.2150758505 0.2606855333 0.2830046713 0.2627002299 0.1743051857 0.2365771234 0.1383759677 0.1973138005 0.1721783578 0.2680045366 0.2973450124 0.258728236 0.2880711257 0.2880711257 0.2880711257 0.2880405784 0.3152042925 0.3790788651 0.2446159422 0.2276017666} {curve(which) 1 0.7281661034 0.6740817428 0.8202066422 0.7151686549 0.6779980659 0.6891706586 0.6917385459 0.7215952873 0.8238410354 0.839184761 0.7385566831 0.7585275769 0.8648257852 0.7808576822 0.7230190039 0.8429791331 0.910841465 0.8696421385 0.786606431 0.8850684762 0.7748944759 0.8131960034 0.6779980659 0.951146543 0.8896810412 0.911518693 0.943950057 0.8553914428 0.8326833844 0.6273635626 0.7246823311 0.7118432522 0.7118432522 0.7118432522 0.7118694782 0.6648360491 0.5769088268 0.6720442176 0.7383946776} {curve(which) 0 -0.07213255018 0.05368951708 -0.1003373638 0.07219231874 0.05930171534 0.07320601493 0.07928691059 0.06891305745 -0.1157948226 -0.05991046131 0.06718540192 0.03925102949 -0.03426937759 -0.009763340466 0.06503042579 -0.1296732277 -0.04964122549 -0.1309035122 -0.05758608505 -0.1001443192 -0.03558001295 -0.09620071948 0.05930171534 -0.1254517138 -0.1262581497 -0.04989464581 -0.1412638426 -0.02756982669 -0.1006879359 0.07529145479 0.01658944227 8.565396274e-05 8.565396274e-05 8.565396274e-05 8.991353388e-05 0.01995966583 0.04401229322 0.08333983272 0.0340035744}} {{curve(which) 0 -3.863927134e-08 -0.005574660841 -0.1037815213 0.01933082007 0 0 0 0 0.0027982709 -0.0544523783 -0.04792318866 -0.0176958181 -0.1061859056 -0.02100777067 -0.01945115253 -0.07968087494 0.07801423222 -0.009676366113 -0.009677864611 -0.03206583485 -0.009310216643 -0.01825834997 0 -0.11669112 -0.02325225808 -0.1602820009 -0.1427432895 -0.10720893 -0.02941203304 0.02703136392 -2.906408625e-08 -3.236030111e-08 -3.236030111e-08 -3.236030111e-08 0 0 -0.01229703799 0.02518104948 0} {curve(which) 0 0 0.004060741514 -0.07290724665 0.1191947311 0.0280726999 0.0449459292 0.04511339962 0.04706057906 -0.06703422964 -0.0003228379355 -0.0002844714036 0.08768811822 0.02554347552 0.01782695204 0.01650637016 -0.3473432064 -0.3148325086 -0.2364816219 0.004600019194 -0.02765839547 -0.004612449091 -0.08316776901 0.0280726999 -0.5518454909 -0.4897170365 -0.171635136 -0.4278847873 0.07809129357 -0.08659287542 0.07068887353 0.05121183768 1.2621717e-08 1.2621717e-08 1.2621717e-08 -1.262213711e-08 0.04317118227 0.01672476344 0.1411857158 0.01001892332} {curve(which) 1 1.008825183 1.010339141 1.265746474 0.950532198 1.060985088 0.9638792276 1.043944359 0.9073553085 1.153293729 1.063571215 1.057001948 0.9388025999 1.089437366 1.01197505 1.011739731 1.51608181 1.325875998 1.335215807 1.094135642 1.148782015 1.102980375 1.190483928 1.060985088 1.745692492 1.590125084 1.409072995 1.65968585 1.118175387 1.205062628 0.9913375378 0.7738927603 0.8251045942 0.8251045942 0.8251045942 0.8248898983 0.8782252669 0.9955722094 0.9226909876 0.8150856495}} } invert {{parent.invert}} name ColorMatrix label "RGB to XYZ" xpos -40 ypos 32 addUserKnob {20 Gamut} addUserKnob {3 which} which {{parent.gamut}} addUserKnob {12 rxy} rxy {{curve(which) 1 0.7347 0.713 0.8 0.64 0.708 0.68 0.68 0.68 0.684 0.7530442228 0.7530444911 0.6997470013 0.8786825105 0.7011810359 0.7011805919 0.780308 0.69848046 0.74 0.73 0.766 0.73 0.71 0.708 0.9173 0.7422 1.0625 0.9175 0.8608 0.7177 0.64 0.7347 0.7347 0.7347 0.7347 0.734699 0.69 0.6898 0.625 0.7351916376} {curve(which) 0 0.2653 0.293 0.3177 0.33 0.292 0.32 0.32 0.32 0.313 0.3278305767 0.3278310295 0.3290469303 0.3249640074 0.3290141556 0.3290136991 0.304253 0.19302645 0.27 0.28 0.275 0.28 0.31 0.292 0.2502 0.2859 0.3948 0.2983 0.3689 0.3171 0.33 0.2653 0.2653 0.2653 0.2653 0.265301 0.31 0.3206 0.34 0.2648083624}} addUserKnob {12 gxy} gxy {{curve(which) 0 0 0.165 0.18 0.3 0.17 0.265 0.265 0.265 0.221 0.2995702285 0.2995704905 0.304264039 0.3008887144 0.3006003047 0.3006003955 0.121595 0.32955538 0.17 0.14 0.225 0.165 0.21 0.17 0.2833 0.414 0.3689 0.2983 0.3282 0.228 0.21 0.1152 0.1596 0.1596 0.1596 0.159597 0.18 0.0736 0.28 0.2153361345} {curve(which) 1 1 0.83 0.9 0.6 0.797 0.69 0.69 0.69 0.848 0.700699322 0.7006994156 0.6236411451 0.6790547558 0.6837888343 0.6837888243 1.493994 1.02459662 1.14 0.855 0.8 0.84 0.88 0.797 1.7072 1.3035 0.7775 1.2835 0.6156 0.8616 0.71 0.8264 0.8404 0.8404 0.8404 0.840403 0.77 0.9003 0.595 0.7741596639}} addUserKnob {12 bxy} bxy {{curve(which) 0 0.0001 0.128 0.065 0.15 0.131 0.15 0.15 0.15 0.0861 0.07964206674 0.1450115843 0.1349139613 0.09539869461 0.1081544556 0.1453319462 0.095612 0.10844263 0.08 0.1 0.089 0.1 0.09 0.131 0.0856 0.0342 0.0956 0.0756 0.0783 0.1006 0.15 0.1566 0.0366 0.0366 0.0366 0.036598 0.1 0.1166 0.155 0.1301229508} {curve(which) 0 -0.077 0.044 -0.0805 0.06 0.046 0.06 0.06 0.06 -0.102 -0.05493795109 0.05109712509 0.03471744128 -0.02937932683 -0.008688175787 0.05161680362 -0.084589 -0.03467857 -0.1 -0.05 -0.087 -0.03 -0.08 0.046 -0.0708 -0.0833 -0.0332 -0.086 -0.0233 -0.082 0.06 0.0177 0.0001 0.0001 0.0001 0.000105 0.02 0.0374 0.07 0.03483606557}} addUserKnob {12 wxy} wxy {{curve(which) 0.33333333 0.32168 0.32168 0.3127 0.3127 0.3127 0.32168 0.3127 0.314 0.3127 0.3216831877 0.3216832104 0.3216832894 0.3216832894 0.3216832104 0.3216832894 0.3127 0.3127 0.3127 0.3127 0.3127 0.3127 0.3127 0.3127 0.3135 0.3135 0.3135 0.3127 0.3127 0.3127 0.3127 0.3457 0.3457 0.3457 0.3457 0.345704 0.33243 0.33333333 0.3127 0.3457} {curve(which) 0.33333333 0.33767 0.33767 0.329 0.329 0.329 0.33767 0.329 0.351 0.329 0.337673316 0.3376736101 0.3376734472 0.3376734472 0.3376736101 0.3376734472 0.329 0.329 0.329 0.329 0.329 0.329 0.329 0.329 0.3305 0.3305 0.3305 0.329 0.329 0.329 0.329 0.3585 0.3585 0.3585 0.3585 0.35854 0.34744 0.33333333 0.329 0.3585}} } Output { name Output xpos -40 ypos 86 } end_group ColorWheel { inputs 0 format "512 512 0 0 512 512 1 square_512" centerSaturation 1 fillFormat false area {-196 -184 708 696} name ColorWheel1 xpos -920 ypos 5 } Crop { box {0 0 {width} {height}} name Crop1 xpos -920 ypos 87 } BlackOutside { name BlackOutside3 xpos -920 ypos 134 } set Nc30a2380 [stack 0] Group { name RGBToXYZ_GamutC label "\[if \{\[value invert]\} \{return \"XYZ to \[value gamut]\"\} else \{return \"\[value gamut] to XYZ\"\}]\n\n" xpos -1140 ypos 176 addUserKnob {20 GamutToXYZ_tab l GamutToXYZ} addUserKnob {4 gamut t "Choose gamut" M {XYZ ACES ACEScg "Filmlight E-Gamut" "DaVinci WG" Rec709 Rec2020 P3D60 P3D65 P3DCI "Arri AlexaWideGamut" REDDRAGONcolor REDDRAGONcolor2 REDcolor REDcolor2 REDcolor3 REDcolor4 REDWideGamutRGB "GoPro Protune Native" CanonCinemaGamut SonySGamut SonySGamut3Cine PanasonicVGamut "DJI D-Gamut" "Fujifilm F-Gamut" BMDFilmV1 BMD4kFilmV1 BMD4kFilmV3 BMD46kFilmV1 BMD46kFilmV3 BMDWideGamutV4 "AdobeRGB\t" AdobeWideGamutRGB ROMM RIMM ERIMM ProPhotoRGB RusselRGB SharpRGB AppleRGB BestRGB}} gamut Rec709 addUserKnob {6 invert +STARTLINE} addUserKnob {26 ""} addUserKnob {26 chromaticity_coordinates_label l " " T "Chromaticity Coordinates"} addUserKnob {41 rxy T ColorMatrix.rxy} addUserKnob {41 gxy T ColorMatrix.gxy} addUserKnob {41 bxy T ColorMatrix.bxy} addUserKnob {41 wxy T ColorMatrix.wxy} addUserKnob {41 matrix T ColorMatrix.matrix} } Input { inputs 0 name Input xpos -40 ypos -10 } ColorMatrix { matrix { {{curve(which) 1 0.9525524378 0.6624541879 0.7053968906 0.7006223798 0.4123907983 0.6369580626 0.5049495697 0.4865709841 0.4451698363 0.6380076408 0.5070186853 0.4462202489 0.4300414324 0.4581649601 0.4878340662 0.4517004192 0.7352752686 0.5022571683 0.7160496712 0.7064827085 0.5990839601 0.6796444654 0.6481720209 0.6369580626 0.6390493512 0.6141571999 0.3724023998 0.60689044 0.4017650783 0.6065810919 0.5766690373 0.7165006995 0.797760427 0.797760427 0.797760427 0.7976718545 0.7015837431 0.8156226277 0.4496616423 0.6318944097} {curve(which) 0 0 0.1340042055 0.1640413404 0.1487748176 0.3575843275 0.1446169019 0.2646814585 0.2656676769 0.2771343887 0.2147038579 0.3587769568 0.3157556653 0.3700728714 0.3832037449 0.3432727158 0.3178463876 0.06860940903 0.2929667532 0.1296834797 0.1288010478 0.2489254922 0.1522114277 0.1940581352 0.1446169019 0.1578372866 0.2825684249 0.4324877858 0.2193847299 0.4560420811 0.2203479856 0.1855582297 0.1010205746 0.1351858526 0.1351858526 0.1351858526 0.1351878047 0.1554162204 0.04716260359 0.3162561059 0.2053879201} {curve(which) 0 9.367863095e-05 0.1561876982 0.08101774752 0.101058729 0.180480808 0.1688809693 0.1830150485 0.1982172877 0.1722826511 0.09774444997 0.0868505761 0.190669477 0.152531758 0.1112773567 0.1215386018 0.1830992699 0.1465712637 0.1552320272 0.1047228053 0.1151721701 0.1024464965 0.1186000481 0.108225815 0.1688809693 0.1516760886 0.05183707923 0.1436725408 0.124180764 0.09264881909 0.123526901 0.1882286519 0.1467743814 0.03134934977 0.03134934977 0.03134934977 0.03133957833 0.09979832917 0.1372147948 0.1845382005 0.1270133406}} {{curve(which) 0 0.3439664543 0.2722287476 0.2801307142 0.2741185129 0.2126390189 0.2627002299 0.237623319 0.2289745659 0.209491685 0.2919537723 0.2207257152 0.1942579001 0.2022213936 0.1694435924 0.2289056629 0.2119505703 0.2866941094 0.1387997568 0.2612613738 0.2709796727 0.2150758505 0.2606855333 0.2830046713 0.2627002299 0.1743051857 0.2365771234 0.1383759677 0.1973138005 0.1721783578 0.2680045366 0.2973450124 0.258728236 0.2880711257 0.2880711257 0.2880711257 0.2880405784 0.3152042925 0.3790788651 0.2446159422 0.2276017666} {curve(which) 1 0.7281661034 0.6740817428 0.8202066422 0.8736318946 0.7151686549 0.6779980659 0.6891706586 0.6917385459 0.7215952873 0.8238410354 0.839184761 0.7385566831 0.7585275769 0.8648257852 0.7808576822 0.7230190039 0.8429791331 0.910841465 0.8696421385 0.786606431 0.8850684762 0.7748944759 0.8131960034 0.6779980659 0.951146543 0.8896810412 0.911518693 0.943950057 0.8553914428 0.8326833844 0.6273635626 0.7246823311 0.7118432522 0.7118432522 0.7118432522 0.7118694782 0.6648360491 0.5769088268 0.6720442176 0.7383946776} {curve(which) 0 -0.07213255018 0.05368951708 -0.1003373638 -0.1477504075 0.07219231874 0.05930171534 0.07320601493 0.07928691059 0.06891305745 -0.1157948226 -0.05991046131 0.06718540192 0.03925102949 -0.03426937759 -0.009763340466 0.06503042579 -0.1296732277 -0.04964122549 -0.1309035122 -0.05758608505 -0.1001443192 -0.03558001295 -0.09620071948 0.05930171534 -0.1254517138 -0.1262581497 -0.04989464581 -0.1412638426 -0.02756982669 -0.1006879359 0.07529145479 0.01658944227 8.565396274e-05 8.565396274e-05 8.565396274e-05 8.991353388e-05 0.01995966583 0.04401229322 0.08333983272 0.0340035744}} {{curve(which) 0 -3.863927134e-08 -0.005574660841 -0.1037815213 -0.09896291792 0.01933082007 0 0 0 0 0.0027982709 -0.0544523783 -0.04792318866 -0.0176958181 -0.1061859056 -0.02100777067 -0.01945115253 -0.07968087494 0.07801423222 -0.009676366113 -0.009677864611 -0.03206583485 -0.009310216643 -0.01825834997 0 -0.11669112 -0.02325225808 -0.1602820009 -0.1427432895 -0.10720893 -0.02941203304 0.02703136392 -2.906408625e-08 -3.236030111e-08 -3.236030111e-08 -3.236030111e-08 0 0 -0.01229703799 0.02518104948 0} {curve(which) 0 0 0.004060741514 -0.07290724665 -0.1378953159 0.1191947311 0.0280726999 0.0449459292 0.04511339962 0.04706057906 -0.06703422964 -0.0003228379355 -0.0002844714036 0.08768811822 0.02554347552 0.01782695204 0.01650637016 -0.3473432064 -0.3148325086 -0.2364816219 0.004600019194 -0.02765839547 -0.004612449091 -0.08316776901 0.0280726999 -0.5518454909 -0.4897170365 -0.171635136 -0.4278847873 0.07809129357 -0.08659287542 0.07068887353 0.05121183768 1.2621717e-08 1.2621717e-08 1.2621717e-08 -1.262213711e-08 0.04317118227 0.01672476344 0.1411857158 0.01001892332} {curve(which) 1 1.008825183 1.010339141 1.265746474 1.325916052 0.950532198 1.060985088 0.9638792276 1.043944359 0.9073553085 1.153293729 1.063571215 1.057001948 0.9388025999 1.089437366 1.01197505 1.011739731 1.51608181 1.325875998 1.335215807 1.094135642 1.148782015 1.102980375 1.190483928 1.060985088 1.745692492 1.590125084 1.409072995 1.65968585 1.118175387 1.205062628 0.9913375378 0.7738927603 0.8251045942 0.8251045942 0.8251045942 0.8248898983 0.8782252669 0.9955722094 0.9226909876 0.8150856495}} } invert {{parent.invert}} name ColorMatrix label "RGB to XYZ" xpos -40 ypos 32 addUserKnob {20 Gamut} addUserKnob {3 which} which {{parent.gamut}} addUserKnob {12 rxy} rxy {{curve(which) 1 0.7347 0.713 0.8 0.8 0.64 0.708 0.68 0.68 0.68 0.684 0.7530442228 0.7530444911 0.6997470013 0.8786825105 0.7011810359 0.7011805919 0.780308 0.69848046 0.74 0.73 0.766 0.73 0.71 0.708 0.9173 0.7422 1.0625 0.9175 0.8608 0.7177 0.64 0.7347 0.7347 0.7347 0.7347 0.734699 0.69 0.6898 0.625 0.7351916376} {curve(which) 0 0.2653 0.293 0.3177 0.313 0.33 0.292 0.32 0.32 0.32 0.313 0.3278305767 0.3278310295 0.3290469303 0.3249640074 0.3290141556 0.3290136991 0.304253 0.19302645 0.27 0.28 0.275 0.28 0.31 0.292 0.2502 0.2859 0.3948 0.2983 0.3689 0.3171 0.33 0.2653 0.2653 0.2653 0.2653 0.265301 0.31 0.3206 0.34 0.2648083624}} addUserKnob {12 gxy} gxy {{curve(which) 0 0 0.165 0.18 0.1682 0.3 0.17 0.265 0.265 0.265 0.221 0.2995702285 0.2995704905 0.304264039 0.3008887144 0.3006003047 0.3006003955 0.121595 0.32955538 0.17 0.14 0.225 0.165 0.21 0.17 0.2833 0.414 0.3689 0.2983 0.3282 0.228 0.21 0.1152 0.1596 0.1596 0.1596 0.159597 0.18 0.0736 0.28 0.2153361345} {curve(which) 1 1 0.83 0.9 0.9877 0.6 0.797 0.69 0.69 0.69 0.848 0.700699322 0.7006994156 0.6236411451 0.6790547558 0.6837888343 0.6837888243 1.493994 1.02459662 1.14 0.855 0.8 0.84 0.88 0.797 1.7072 1.3035 0.7775 1.2835 0.6156 0.8616 0.71 0.8264 0.8404 0.8404 0.8404 0.840403 0.77 0.9003 0.595 0.7741596639}} addUserKnob {12 bxy} bxy {{curve(which) 0 0.0001 0.128 0.065 0.079 0.15 0.131 0.15 0.15 0.15 0.0861 0.07964206674 0.1450115843 0.1349139613 0.09539869461 0.1081544556 0.1453319462 0.095612 0.10844263 0.08 0.1 0.089 0.1 0.09 0.131 0.0856 0.0342 0.0956 0.0756 0.0783 0.1006 0.15 0.1566 0.0366 0.0366 0.0366 0.036598 0.1 0.1166 0.155 0.1301229508} {curve(which) 0 -0.077 0.044 -0.0805 -0.1155 0.06 0.046 0.06 0.06 0.06 -0.102 -0.05493795109 0.05109712509 0.03471744128 -0.02937932683 -0.008688175787 0.05161680362 -0.084589 -0.03467857 -0.1 -0.05 -0.087 -0.03 -0.08 0.046 -0.0708 -0.0833 -0.0332 -0.086 -0.0233 -0.082 0.06 0.0177 0.0001 0.0001 0.0001 0.000105 0.02 0.0374 0.07 0.03483606557}} addUserKnob {12 wxy} wxy {{curve(which) 0.33333333 0.32168 0.32168 0.3127 0.3127 0.3127 0.3127 0.32168 0.3127 0.314 0.3127 0.3216831877 0.3216832104 0.3216832894 0.3216832894 0.3216832104 0.3216832894 0.3127 0.3127 0.3127 0.3127 0.3127 0.3127 0.3127 0.3127 0.3135 0.3135 0.3135 0.3127 0.3127 0.3127 0.3127 0.3457 0.3457 0.3457 0.3457 0.345704 0.33243 0.33333333 0.3127 0.3457} {curve(which) 0.33333333 0.33767 0.33767 0.329 0.329 0.329 0.329 0.33767 0.329 0.351 0.329 0.337673316 0.3376736101 0.3376734472 0.3376734472 0.3376736101 0.3376734472 0.329 0.329 0.329 0.329 0.329 0.329 0.329 0.329 0.3305 0.3305 0.3305 0.329 0.329 0.329 0.329 0.3585 0.3585 0.3585 0.3585 0.35854 0.34744 0.33333333 0.329 0.3585}} } Output { name Output xpos -40 ypos 86 } end_group Position { translate {{parent.Reformat1.box_width+Rectangle1.area.r+input.width} {parent.ReformatBox4.box_width-input.height}} name Position6 xpos -1140 ypos 254 } push $Nc30a2380 Group { name RGBToXYZ_GamutB label "\[if \{\[value invert]\} \{return \"XYZ to \[value gamut]\"\} else \{return \"\[value gamut] to XYZ\"\}]\n\n" xpos -1030 ypos 176 addUserKnob {20 GamutToXYZ_tab l GamutToXYZ} addUserKnob {4 gamut t "Choose gamut" M {XYZ ACES ACEScg "Filmlight E-Gamut" "DaVinci WG" Rec709 Rec2020 P3D60 P3D65 P3DCI "Arri AlexaWideGamut" REDDRAGONcolor REDDRAGONcolor2 REDcolor REDcolor2 REDcolor3 REDcolor4 REDWideGamutRGB "GoPro Protune Native" CanonCinemaGamut SonySGamut SonySGamut3Cine PanasonicVGamut "DJI D-Gamut" "Fujifilm F-Gamut" BMDFilmV1 BMD4kFilmV1 BMD4kFilmV3 BMD46kFilmV1 BMD46kFilmV3 BMDWideGamutV4 "AdobeRGB\t" AdobeWideGamutRGB ROMM RIMM ERIMM ProPhotoRGB RusselRGB SharpRGB AppleRGB BestRGB}} gamut P3D65 addUserKnob {6 invert +STARTLINE} addUserKnob {26 ""} addUserKnob {26 chromaticity_coordinates_label l " " T "Chromaticity Coordinates"} addUserKnob {41 rxy T ColorMatrix.rxy} addUserKnob {41 gxy T ColorMatrix.gxy} addUserKnob {41 bxy T ColorMatrix.bxy} addUserKnob {41 wxy T ColorMatrix.wxy} addUserKnob {41 matrix T ColorMatrix.matrix} } Input { inputs 0 name Input xpos -40 ypos -10 } ColorMatrix { matrix { {{curve(which) 1 0.9525524378 0.6624541879 0.7053968906 0.7006223798 0.4123907983 0.6369580626 0.5049495697 0.4865709841 0.4451698363 0.6380076408 0.5070186853 0.4462202489 0.4300414324 0.4581649601 0.4878340662 0.4517004192 0.7352752686 0.5022571683 0.7160496712 0.7064827085 0.5990839601 0.6796444654 0.6481720209 0.6369580626 0.6390493512 0.6141571999 0.3724023998 0.60689044 0.4017650783 0.6065810919 0.5766690373 0.7165006995 0.797760427 0.797760427 0.797760427 0.7976718545 0.7015837431 0.8156226277 0.4496616423 0.6318944097} {curve(which) 0 0 0.1340042055 0.1640413404 0.1487748176 0.3575843275 0.1446169019 0.2646814585 0.2656676769 0.2771343887 0.2147038579 0.3587769568 0.3157556653 0.3700728714 0.3832037449 0.3432727158 0.3178463876 0.06860940903 0.2929667532 0.1296834797 0.1288010478 0.2489254922 0.1522114277 0.1940581352 0.1446169019 0.1578372866 0.2825684249 0.4324877858 0.2193847299 0.4560420811 0.2203479856 0.1855582297 0.1010205746 0.1351858526 0.1351858526 0.1351858526 0.1351878047 0.1554162204 0.04716260359 0.3162561059 0.2053879201} {curve(which) 0 9.367863095e-05 0.1561876982 0.08101774752 0.101058729 0.180480808 0.1688809693 0.1830150485 0.1982172877 0.1722826511 0.09774444997 0.0868505761 0.190669477 0.152531758 0.1112773567 0.1215386018 0.1830992699 0.1465712637 0.1552320272 0.1047228053 0.1151721701 0.1024464965 0.1186000481 0.108225815 0.1688809693 0.1516760886 0.05183707923 0.1436725408 0.124180764 0.09264881909 0.123526901 0.1882286519 0.1467743814 0.03134934977 0.03134934977 0.03134934977 0.03133957833 0.09979832917 0.1372147948 0.1845382005 0.1270133406}} {{curve(which) 0 0.3439664543 0.2722287476 0.2801307142 0.2741185129 0.2126390189 0.2627002299 0.237623319 0.2289745659 0.209491685 0.2919537723 0.2207257152 0.1942579001 0.2022213936 0.1694435924 0.2289056629 0.2119505703 0.2866941094 0.1387997568 0.2612613738 0.2709796727 0.2150758505 0.2606855333 0.2830046713 0.2627002299 0.1743051857 0.2365771234 0.1383759677 0.1973138005 0.1721783578 0.2680045366 0.2973450124 0.258728236 0.2880711257 0.2880711257 0.2880711257 0.2880405784 0.3152042925 0.3790788651 0.2446159422 0.2276017666} {curve(which) 1 0.7281661034 0.6740817428 0.8202066422 0.8736318946 0.7151686549 0.6779980659 0.6891706586 0.6917385459 0.7215952873 0.8238410354 0.839184761 0.7385566831 0.7585275769 0.8648257852 0.7808576822 0.7230190039 0.8429791331 0.910841465 0.8696421385 0.786606431 0.8850684762 0.7748944759 0.8131960034 0.6779980659 0.951146543 0.8896810412 0.911518693 0.943950057 0.8553914428 0.8326833844 0.6273635626 0.7246823311 0.7118432522 0.7118432522 0.7118432522 0.7118694782 0.6648360491 0.5769088268 0.6720442176 0.7383946776} {curve(which) 0 -0.07213255018 0.05368951708 -0.1003373638 -0.1477504075 0.07219231874 0.05930171534 0.07320601493 0.07928691059 0.06891305745 -0.1157948226 -0.05991046131 0.06718540192 0.03925102949 -0.03426937759 -0.009763340466 0.06503042579 -0.1296732277 -0.04964122549 -0.1309035122 -0.05758608505 -0.1001443192 -0.03558001295 -0.09620071948 0.05930171534 -0.1254517138 -0.1262581497 -0.04989464581 -0.1412638426 -0.02756982669 -0.1006879359 0.07529145479 0.01658944227 8.565396274e-05 8.565396274e-05 8.565396274e-05 8.991353388e-05 0.01995966583 0.04401229322 0.08333983272 0.0340035744}} {{curve(which) 0 -3.863927134e-08 -0.005574660841 -0.1037815213 -0.09896291792 0.01933082007 0 0 0 0 0.0027982709 -0.0544523783 -0.04792318866 -0.0176958181 -0.1061859056 -0.02100777067 -0.01945115253 -0.07968087494 0.07801423222 -0.009676366113 -0.009677864611 -0.03206583485 -0.009310216643 -0.01825834997 0 -0.11669112 -0.02325225808 -0.1602820009 -0.1427432895 -0.10720893 -0.02941203304 0.02703136392 -2.906408625e-08 -3.236030111e-08 -3.236030111e-08 -3.236030111e-08 0 0 -0.01229703799 0.02518104948 0} {curve(which) 0 0 0.004060741514 -0.07290724665 -0.1378953159 0.1191947311 0.0280726999 0.0449459292 0.04511339962 0.04706057906 -0.06703422964 -0.0003228379355 -0.0002844714036 0.08768811822 0.02554347552 0.01782695204 0.01650637016 -0.3473432064 -0.3148325086 -0.2364816219 0.004600019194 -0.02765839547 -0.004612449091 -0.08316776901 0.0280726999 -0.5518454909 -0.4897170365 -0.171635136 -0.4278847873 0.07809129357 -0.08659287542 0.07068887353 0.05121183768 1.2621717e-08 1.2621717e-08 1.2621717e-08 -1.262213711e-08 0.04317118227 0.01672476344 0.1411857158 0.01001892332} {curve(which) 1 1.008825183 1.010339141 1.265746474 1.325916052 0.950532198 1.060985088 0.9638792276 1.043944359 0.9073553085 1.153293729 1.063571215 1.057001948 0.9388025999 1.089437366 1.01197505 1.011739731 1.51608181 1.325875998 1.335215807 1.094135642 1.148782015 1.102980375 1.190483928 1.060985088 1.745692492 1.590125084 1.409072995 1.65968585 1.118175387 1.205062628 0.9913375378 0.7738927603 0.8251045942 0.8251045942 0.8251045942 0.8248898983 0.8782252669 0.9955722094 0.9226909876 0.8150856495}} } invert {{parent.invert}} name ColorMatrix label "RGB to XYZ" xpos -40 ypos 32 addUserKnob {20 Gamut} addUserKnob {3 which} which {{parent.gamut}} addUserKnob {12 rxy} rxy {{curve(which) 1 0.7347 0.713 0.8 0.8 0.64 0.708 0.68 0.68 0.68 0.684 0.7530442228 0.7530444911 0.6997470013 0.8786825105 0.7011810359 0.7011805919 0.780308 0.69848046 0.74 0.73 0.766 0.73 0.71 0.708 0.9173 0.7422 1.0625 0.9175 0.8608 0.7177 0.64 0.7347 0.7347 0.7347 0.7347 0.734699 0.69 0.6898 0.625 0.7351916376} {curve(which) 0 0.2653 0.293 0.3177 0.313 0.33 0.292 0.32 0.32 0.32 0.313 0.3278305767 0.3278310295 0.3290469303 0.3249640074 0.3290141556 0.3290136991 0.304253 0.19302645 0.27 0.28 0.275 0.28 0.31 0.292 0.2502 0.2859 0.3948 0.2983 0.3689 0.3171 0.33 0.2653 0.2653 0.2653 0.2653 0.265301 0.31 0.3206 0.34 0.2648083624}} addUserKnob {12 gxy} gxy {{curve(which) 0 0 0.165 0.18 0.1682 0.3 0.17 0.265 0.265 0.265 0.221 0.2995702285 0.2995704905 0.304264039 0.3008887144 0.3006003047 0.3006003955 0.121595 0.32955538 0.17 0.14 0.225 0.165 0.21 0.17 0.2833 0.414 0.3689 0.2983 0.3282 0.228 0.21 0.1152 0.1596 0.1596 0.1596 0.159597 0.18 0.0736 0.28 0.2153361345} {curve(which) 1 1 0.83 0.9 0.9877 0.6 0.797 0.69 0.69 0.69 0.848 0.700699322 0.7006994156 0.6236411451 0.6790547558 0.6837888343 0.6837888243 1.493994 1.02459662 1.14 0.855 0.8 0.84 0.88 0.797 1.7072 1.3035 0.7775 1.2835 0.6156 0.8616 0.71 0.8264 0.8404 0.8404 0.8404 0.840403 0.77 0.9003 0.595 0.7741596639}} addUserKnob {12 bxy} bxy {{curve(which) 0 0.0001 0.128 0.065 0.079 0.15 0.131 0.15 0.15 0.15 0.0861 0.07964206674 0.1450115843 0.1349139613 0.09539869461 0.1081544556 0.1453319462 0.095612 0.10844263 0.08 0.1 0.089 0.1 0.09 0.131 0.0856 0.0342 0.0956 0.0756 0.0783 0.1006 0.15 0.1566 0.0366 0.0366 0.0366 0.036598 0.1 0.1166 0.155 0.1301229508} {curve(which) 0 -0.077 0.044 -0.0805 -0.1155 0.06 0.046 0.06 0.06 0.06 -0.102 -0.05493795109 0.05109712509 0.03471744128 -0.02937932683 -0.008688175787 0.05161680362 -0.084589 -0.03467857 -0.1 -0.05 -0.087 -0.03 -0.08 0.046 -0.0708 -0.0833 -0.0332 -0.086 -0.0233 -0.082 0.06 0.0177 0.0001 0.0001 0.0001 0.000105 0.02 0.0374 0.07 0.03483606557}} addUserKnob {12 wxy} wxy {{curve(which) 0.33333333 0.32168 0.32168 0.3127 0.3127 0.3127 0.3127 0.32168 0.3127 0.314 0.3127 0.3216831877 0.3216832104 0.3216832894 0.3216832894 0.3216832104 0.3216832894 0.3127 0.3127 0.3127 0.3127 0.3127 0.3127 0.3127 0.3127 0.3135 0.3135 0.3135 0.3127 0.3127 0.3127 0.3127 0.3457 0.3457 0.3457 0.3457 0.345704 0.33243 0.33333333 0.3127 0.3457} {curve(which) 0.33333333 0.33767 0.33767 0.329 0.329 0.329 0.329 0.33767 0.329 0.351 0.329 0.337673316 0.3376736101 0.3376734472 0.3376734472 0.3376736101 0.3376734472 0.329 0.329 0.329 0.329 0.329 0.329 0.329 0.329 0.3305 0.3305 0.3305 0.329 0.329 0.329 0.329 0.3585 0.3585 0.3585 0.3585 0.35854 0.34744 0.33333333 0.329 0.3585}} } Output { name Output xpos -40 ypos 86 } end_group Position { translate {{parent.Reformat1.box_width+Rectangle1.area.r} {parent.ReformatBox4.box_width-input.height*2}} name Position5 xpos -1030 ypos 254 } push $Nc30a2380 Group { name RGBToXYZ_GamutA label "\[if \{\[value invert]\} \{return \"XYZ to \[value gamut]\"\} else \{return \"\[value gamut] to XYZ\"\}]\n\n" xpos -920 ypos 176 addUserKnob {20 GamutToXYZ_tab l GamutToXYZ} addUserKnob {4 gamut t "Choose gamut" M {XYZ ACES ACEScg "Filmlight E-Gamut" "DaVinci WG" Rec709 Rec2020 P3D60 P3D65 P3DCI "Arri AlexaWideGamut" REDDRAGONcolor REDDRAGONcolor2 REDcolor REDcolor2 REDcolor3 REDcolor4 REDWideGamutRGB "GoPro Protune Native" CanonCinemaGamut SonySGamut SonySGamut3Cine PanasonicVGamut "DJI D-Gamut" "Fujifilm F-Gamut" BMDFilmV1 BMD4kFilmV1 BMD4kFilmV3 BMD46kFilmV1 BMD46kFilmV3 BMDWideGamutV4 "AdobeRGB\t" AdobeWideGamutRGB ROMM RIMM ERIMM ProPhotoRGB RusselRGB SharpRGB AppleRGB BestRGB}} gamut Rec2020 addUserKnob {6 invert +STARTLINE} addUserKnob {26 ""} addUserKnob {26 chromaticity_coordinates_label l " " T "Chromaticity Coordinates"} addUserKnob {41 rxy T ColorMatrix.rxy} addUserKnob {41 gxy T ColorMatrix.gxy} addUserKnob {41 bxy T ColorMatrix.bxy} addUserKnob {41 wxy T ColorMatrix.wxy} addUserKnob {41 matrix T ColorMatrix.matrix} } Input { inputs 0 name Input xpos -40 ypos -10 } ColorMatrix { matrix { {{curve(which) 1 0.9525524378 0.6624541879 0.7053968906 0.7006223798 0.4123907983 0.6369580626 0.5049495697 0.4865709841 0.4451698363 0.6380076408 0.5070186853 0.4462202489 0.4300414324 0.4581649601 0.4878340662 0.4517004192 0.7352752686 0.5022571683 0.7160496712 0.7064827085 0.5990839601 0.6796444654 0.6481720209 0.6369580626 0.6390493512 0.6141571999 0.3724023998 0.60689044 0.4017650783 0.6065810919 0.5766690373 0.7165006995 0.797760427 0.797760427 0.797760427 0.7976718545 0.7015837431 0.8156226277 0.4496616423 0.6318944097} {curve(which) 0 0 0.1340042055 0.1640413404 0.1487748176 0.3575843275 0.1446169019 0.2646814585 0.2656676769 0.2771343887 0.2147038579 0.3587769568 0.3157556653 0.3700728714 0.3832037449 0.3432727158 0.3178463876 0.06860940903 0.2929667532 0.1296834797 0.1288010478 0.2489254922 0.1522114277 0.1940581352 0.1446169019 0.1578372866 0.2825684249 0.4324877858 0.2193847299 0.4560420811 0.2203479856 0.1855582297 0.1010205746 0.1351858526 0.1351858526 0.1351858526 0.1351878047 0.1554162204 0.04716260359 0.3162561059 0.2053879201} {curve(which) 0 9.367863095e-05 0.1561876982 0.08101774752 0.101058729 0.180480808 0.1688809693 0.1830150485 0.1982172877 0.1722826511 0.09774444997 0.0868505761 0.190669477 0.152531758 0.1112773567 0.1215386018 0.1830992699 0.1465712637 0.1552320272 0.1047228053 0.1151721701 0.1024464965 0.1186000481 0.108225815 0.1688809693 0.1516760886 0.05183707923 0.1436725408 0.124180764 0.09264881909 0.123526901 0.1882286519 0.1467743814 0.03134934977 0.03134934977 0.03134934977 0.03133957833 0.09979832917 0.1372147948 0.1845382005 0.1270133406}} {{curve(which) 0 0.3439664543 0.2722287476 0.2801307142 0.2741185129 0.2126390189 0.2627002299 0.237623319 0.2289745659 0.209491685 0.2919537723 0.2207257152 0.1942579001 0.2022213936 0.1694435924 0.2289056629 0.2119505703 0.2866941094 0.1387997568 0.2612613738 0.2709796727 0.2150758505 0.2606855333 0.2830046713 0.2627002299 0.1743051857 0.2365771234 0.1383759677 0.1973138005 0.1721783578 0.2680045366 0.2973450124 0.258728236 0.2880711257 0.2880711257 0.2880711257 0.2880405784 0.3152042925 0.3790788651 0.2446159422 0.2276017666} {curve(which) 1 0.7281661034 0.6740817428 0.8202066422 0.8736318946 0.7151686549 0.6779980659 0.6891706586 0.6917385459 0.7215952873 0.8238410354 0.839184761 0.7385566831 0.7585275769 0.8648257852 0.7808576822 0.7230190039 0.8429791331 0.910841465 0.8696421385 0.786606431 0.8850684762 0.7748944759 0.8131960034 0.6779980659 0.951146543 0.8896810412 0.911518693 0.943950057 0.8553914428 0.8326833844 0.6273635626 0.7246823311 0.7118432522 0.7118432522 0.7118432522 0.7118694782 0.6648360491 0.5769088268 0.6720442176 0.7383946776} {curve(which) 0 -0.07213255018 0.05368951708 -0.1003373638 -0.1477504075 0.07219231874 0.05930171534 0.07320601493 0.07928691059 0.06891305745 -0.1157948226 -0.05991046131 0.06718540192 0.03925102949 -0.03426937759 -0.009763340466 0.06503042579 -0.1296732277 -0.04964122549 -0.1309035122 -0.05758608505 -0.1001443192 -0.03558001295 -0.09620071948 0.05930171534 -0.1254517138 -0.1262581497 -0.04989464581 -0.1412638426 -0.02756982669 -0.1006879359 0.07529145479 0.01658944227 8.565396274e-05 8.565396274e-05 8.565396274e-05 8.991353388e-05 0.01995966583 0.04401229322 0.08333983272 0.0340035744}} {{curve(which) 0 -3.863927134e-08 -0.005574660841 -0.1037815213 -0.09896291792 0.01933082007 0 0 0 0 0.0027982709 -0.0544523783 -0.04792318866 -0.0176958181 -0.1061859056 -0.02100777067 -0.01945115253 -0.07968087494 0.07801423222 -0.009676366113 -0.009677864611 -0.03206583485 -0.009310216643 -0.01825834997 0 -0.11669112 -0.02325225808 -0.1602820009 -0.1427432895 -0.10720893 -0.02941203304 0.02703136392 -2.906408625e-08 -3.236030111e-08 -3.236030111e-08 -3.236030111e-08 0 0 -0.01229703799 0.02518104948 0} {curve(which) 0 0 0.004060741514 -0.07290724665 -0.1378953159 0.1191947311 0.0280726999 0.0449459292 0.04511339962 0.04706057906 -0.06703422964 -0.0003228379355 -0.0002844714036 0.08768811822 0.02554347552 0.01782695204 0.01650637016 -0.3473432064 -0.3148325086 -0.2364816219 0.004600019194 -0.02765839547 -0.004612449091 -0.08316776901 0.0280726999 -0.5518454909 -0.4897170365 -0.171635136 -0.4278847873 0.07809129357 -0.08659287542 0.07068887353 0.05121183768 1.2621717e-08 1.2621717e-08 1.2621717e-08 -1.262213711e-08 0.04317118227 0.01672476344 0.1411857158 0.01001892332} {curve(which) 1 1.008825183 1.010339141 1.265746474 1.325916052 0.950532198 1.060985088 0.9638792276 1.043944359 0.9073553085 1.153293729 1.063571215 1.057001948 0.9388025999 1.089437366 1.01197505 1.011739731 1.51608181 1.325875998 1.335215807 1.094135642 1.148782015 1.102980375 1.190483928 1.060985088 1.745692492 1.590125084 1.409072995 1.65968585 1.118175387 1.205062628 0.9913375378 0.7738927603 0.8251045942 0.8251045942 0.8251045942 0.8248898983 0.8782252669 0.9955722094 0.9226909876 0.8150856495}} } invert {{parent.invert}} name ColorMatrix label "RGB to XYZ" xpos -40 ypos 32 addUserKnob {20 Gamut} addUserKnob {3 which} which {{parent.gamut}} addUserKnob {12 rxy} rxy {{curve(which) 1 0.7347 0.713 0.8 0.8 0.64 0.708 0.68 0.68 0.68 0.684 0.7530442228 0.7530444911 0.6997470013 0.8786825105 0.7011810359 0.7011805919 0.780308 0.69848046 0.74 0.73 0.766 0.73 0.71 0.708 0.9173 0.7422 1.0625 0.9175 0.8608 0.7177 0.64 0.7347 0.7347 0.7347 0.7347 0.734699 0.69 0.6898 0.625 0.7351916376} {curve(which) 0 0.2653 0.293 0.3177 0.313 0.33 0.292 0.32 0.32 0.32 0.313 0.3278305767 0.3278310295 0.3290469303 0.3249640074 0.3290141556 0.3290136991 0.304253 0.19302645 0.27 0.28 0.275 0.28 0.31 0.292 0.2502 0.2859 0.3948 0.2983 0.3689 0.3171 0.33 0.2653 0.2653 0.2653 0.2653 0.265301 0.31 0.3206 0.34 0.2648083624}} addUserKnob {12 gxy} gxy {{curve(which) 0 0 0.165 0.18 0.1682 0.3 0.17 0.265 0.265 0.265 0.221 0.2995702285 0.2995704905 0.304264039 0.3008887144 0.3006003047 0.3006003955 0.121595 0.32955538 0.17 0.14 0.225 0.165 0.21 0.17 0.2833 0.414 0.3689 0.2983 0.3282 0.228 0.21 0.1152 0.1596 0.1596 0.1596 0.159597 0.18 0.0736 0.28 0.2153361345} {curve(which) 1 1 0.83 0.9 0.9877 0.6 0.797 0.69 0.69 0.69 0.848 0.700699322 0.7006994156 0.6236411451 0.6790547558 0.6837888343 0.6837888243 1.493994 1.02459662 1.14 0.855 0.8 0.84 0.88 0.797 1.7072 1.3035 0.7775 1.2835 0.6156 0.8616 0.71 0.8264 0.8404 0.8404 0.8404 0.840403 0.77 0.9003 0.595 0.7741596639}} addUserKnob {12 bxy} bxy {{curve(which) 0 0.0001 0.128 0.065 0.079 0.15 0.131 0.15 0.15 0.15 0.0861 0.07964206674 0.1450115843 0.1349139613 0.09539869461 0.1081544556 0.1453319462 0.095612 0.10844263 0.08 0.1 0.089 0.1 0.09 0.131 0.0856 0.0342 0.0956 0.0756 0.0783 0.1006 0.15 0.1566 0.0366 0.0366 0.0366 0.036598 0.1 0.1166 0.155 0.1301229508} {curve(which) 0 -0.077 0.044 -0.0805 -0.1155 0.06 0.046 0.06 0.06 0.06 -0.102 -0.05493795109 0.05109712509 0.03471744128 -0.02937932683 -0.008688175787 0.05161680362 -0.084589 -0.03467857 -0.1 -0.05 -0.087 -0.03 -0.08 0.046 -0.0708 -0.0833 -0.0332 -0.086 -0.0233 -0.082 0.06 0.0177 0.0001 0.0001 0.0001 0.000105 0.02 0.0374 0.07 0.03483606557}} addUserKnob {12 wxy} wxy {{curve(which) 0.33333333 0.32168 0.32168 0.3127 0.3127 0.3127 0.3127 0.32168 0.3127 0.314 0.3127 0.3216831877 0.3216832104 0.3216832894 0.3216832894 0.3216832104 0.3216832894 0.3127 0.3127 0.3127 0.3127 0.3127 0.3127 0.3127 0.3127 0.3135 0.3135 0.3135 0.3127 0.3127 0.3127 0.3127 0.3457 0.3457 0.3457 0.3457 0.345704 0.33243 0.33333333 0.3127 0.3457} {curve(which) 0.33333333 0.33767 0.33767 0.329 0.329 0.329 0.329 0.33767 0.329 0.351 0.329 0.337673316 0.3376736101 0.3376734472 0.3376734472 0.3376736101 0.3376734472 0.329 0.329 0.329 0.329 0.329 0.329 0.329 0.329 0.3305 0.3305 0.3305 0.329 0.329 0.329 0.329 0.3585 0.3585 0.3585 0.3585 0.35854 0.34744 0.33333333 0.329 0.3585}} } Output { name Output xpos -40 ypos 86 } end_group Position { translate {{parent.Reformat1.box_width+Rectangle1.area.r} {parent.ReformatBox4.box_width-input.height}} name Position4 xpos -920 ypos 254 } push $Na6a64980 Reformat { type scale scale 0.8 turn true filter Impulse black_outside true name Reformat2 xpos -920 ypos -129 } BlackOutside { name BlackOutside2 xpos -920 ypos -106 } Position { translate {{Rectangle1.area.r} {parent.Position3.translate.y-input.height}} name Position2 xpos -920 ypos -81 } Group { inputs 0 name ColorChecker24_After_November_2014 label "CIE XYZ D50" xpos -920 ypos -352 addUserKnob {20 colorchecker_tab l "ColorChecker24 - After November 2014"} addUserKnob {3 patch_resolution} patch_resolution 48 } Group { inputs 0 name bluish_green xpos 622 ypos -321 postage_stamp true addUserKnob {20 sample_Tab l Sample} addUserKnob {19 colour_RGBA_Color_Knob l Colour} colour_RGBA_Color_Knob {0.30451114 0.4143554688 0.344352688 1} addUserKnob {6 colour_RGBA_Color_Knob_panelDropped l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {6 colour_RGBA_Color_Knob_panelDropped_1 l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {6 colour_RGBA_Color_Knob_panelDropped_1_1 l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {1 name_Text_Knob l Name} name_Text_Knob "bluish green" addUserKnob {1 index_Text_Knob l Index} index_Text_Knob 6 addUserKnob {6 label_colour_RGB_Color_Knob_panelDropped l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {6 label_colour_RGB_Color_Knob_panelDropped_1 l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {6 label_colour_RGB_Color_Knob_panelDropped_1_1 l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {3 resolution} resolution {{parent.patch_resolution}} } Constant { inputs 0 color {{parent.colour_RGBA_Color_Knob.r} {parent.colour_RGBA_Color_Knob.g} {parent.colour_RGBA_Color_Knob.b} {parent.colour_RGBA_Color_Knob.a}} format "512 512 0 0 512 512 1 square_512" name Constant xpos 262 ypos 53 } Reformat { type "to box" box_width {{parent.resolution}} box_height {{parent.resolution}} box_fixed true filter Impulse black_outside true name Reformat1 xpos 262 ypos 125 } Output { name Output xpos 262 ypos 173 } end_group Group { inputs 0 name blue_flower xpos 512 ypos -321 postage_stamp true addUserKnob {20 sample_Tab l Sample} addUserKnob {19 colour_RGBA_Color_Knob l Colour} colour_RGBA_Color_Knob {0.2419823988 0.2287175998 0.3282104382 1} addUserKnob {6 colour_RGBA_Color_Knob_panelDropped l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {6 colour_RGBA_Color_Knob_panelDropped_1 l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {6 colour_RGBA_Color_Knob_panelDropped_1_1 l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {1 name_Text_Knob l Name} name_Text_Knob "blue flower" addUserKnob {1 index_Text_Knob l Index} index_Text_Knob 5 addUserKnob {6 label_colour_RGB_Color_Knob_panelDropped l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {6 label_colour_RGB_Color_Knob_panelDropped_1 l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {6 label_colour_RGB_Color_Knob_panelDropped_1_1 l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {3 resolution} resolution {{parent.patch_resolution}} } Constant { inputs 0 color {{parent.colour_RGBA_Color_Knob.r} {parent.colour_RGBA_Color_Knob.g} {parent.colour_RGBA_Color_Knob.b} {parent.colour_RGBA_Color_Knob.a}} format "512 512 0 0 512 512 1 square_512" name Constant xpos 262 ypos 53 } Reformat { type "to box" box_width {{parent.resolution}} box_height {{parent.resolution}} box_fixed true filter Impulse black_outside true name Reformat1 } Output { name Output xpos 262 ypos 173 } end_group Group { inputs 0 name foliage xpos 402 ypos -321 postage_stamp true addUserKnob {20 sample_Tab l Sample} addUserKnob {19 colour_RGBA_Color_Knob l Colour} colour_RGBA_Color_Knob {0.1114392339 0.1346792679 0.05239320311 1} addUserKnob {6 colour_RGBA_Color_Knob_panelDropped l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {6 colour_RGBA_Color_Knob_panelDropped_1 l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {6 colour_RGBA_Color_Knob_panelDropped_1_1 l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {1 name_Text_Knob l Name} name_Text_Knob foliage addUserKnob {1 index_Text_Knob l Index} index_Text_Knob 4 addUserKnob {6 label_colour_RGB_Color_Knob_panelDropped l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {6 label_colour_RGB_Color_Knob_panelDropped_1 l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {6 label_colour_RGB_Color_Knob_panelDropped_1_1 l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {3 resolution} resolution {{parent.patch_resolution}} } Constant { inputs 0 color {{parent.colour_RGBA_Color_Knob.r} {parent.colour_RGBA_Color_Knob.g} {parent.colour_RGBA_Color_Knob.b} {parent.colour_RGBA_Color_Knob.a}} format "512 512 0 0 512 512 1 square_512" name Constant xpos 262 ypos 53 } Reformat { type "to box" box_width {{parent.resolution}} box_height {{parent.resolution}} box_fixed true filter Impulse black_outside true name Reformat1 } Output { name Output xpos 262 ypos 173 } end_group Group { inputs 0 name blue_sky xpos 292 ypos -321 postage_stamp true addUserKnob {20 sample_Tab l Sample} addUserKnob {19 colour_RGBA_Color_Knob l Colour} colour_RGBA_Color_Knob {0.1652470004 0.1785519348 0.2546024121 1} addUserKnob {6 colour_RGBA_Color_Knob_panelDropped l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {6 colour_RGBA_Color_Knob_panelDropped_1 l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {6 colour_RGBA_Color_Knob_panelDropped_1_1 l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {1 name_Text_Knob l Name} name_Text_Knob "blue sky" addUserKnob {1 index_Text_Knob l Index} index_Text_Knob 3 addUserKnob {6 label_colour_RGB_Color_Knob_panelDropped l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {6 label_colour_RGB_Color_Knob_panelDropped_1 l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {6 label_colour_RGB_Color_Knob_panelDropped_1_1 l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {3 resolution} resolution {{parent.patch_resolution}} } Constant { inputs 0 color {{parent.colour_RGBA_Color_Knob.r} {parent.colour_RGBA_Color_Knob.g} {parent.colour_RGBA_Color_Knob.b} {parent.colour_RGBA_Color_Knob.a}} format "512 512 0 0 512 512 1 square_512" name Constant xpos 262 ypos 53 } Reformat { type "to box" box_width {{parent.resolution}} box_height {{parent.resolution}} box_fixed true filter Impulse black_outside true name Reformat1 } Output { name Output xpos 262 ypos 173 } end_group Group { inputs 0 name light_skin xpos 180 ypos -321 postage_stamp true addUserKnob {20 sample_Tab l Sample} addUserKnob {19 colour_RGBA_Color_Knob l Colour} colour_RGBA_Color_Knob {0.3811104477 0.336202304 0.1852590702 1} addUserKnob {6 colour_RGBA_Color_Knob_panelDropped l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {6 colour_RGBA_Color_Knob_panelDropped_1 l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {6 colour_RGBA_Color_Knob_panelDropped_1_1 l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {1 name_Text_Knob l Name} name_Text_Knob "light skin" addUserKnob {1 index_Text_Knob l Index} index_Text_Knob 2 addUserKnob {6 label_colour_RGB_Color_Knob_panelDropped l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {6 label_colour_RGB_Color_Knob_panelDropped_1 l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {6 label_colour_RGB_Color_Knob_panelDropped_1_1 l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {3 resolution} resolution {{parent.patch_resolution}} } Constant { inputs 0 color {{parent.colour_RGBA_Color_Knob.r} {parent.colour_RGBA_Color_Knob.g} {parent.colour_RGBA_Color_Knob.b} {parent.colour_RGBA_Color_Knob.a}} format "512 512 0 0 512 512 1 square_512" name Constant xpos 262 ypos 63 } Reformat { type "to box" box_width {{parent.resolution}} box_height {{parent.resolution}} box_fixed true filter Impulse black_outside true name Reformat1 xpos 262 ypos 135 } Output { name Output xpos 262 ypos 173 } end_group Group { inputs 0 name dark_skin xpos 70 ypos -321 postage_stamp true addUserKnob {20 sample_Tab l Sample} addUserKnob {19 colour_RGBA_Color_Knob l Colour} colour_RGBA_Color_Knob {0.1136398927 0.09832436105 0.047793811 1} addUserKnob {6 colour_RGBA_Color_Knob_panelDropped l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {1 name_Text_Knob l Name} name_Text_Knob "dark skin" addUserKnob {1 index_Text_Knob l Index} index_Text_Knob 1 addUserKnob {6 label_colour_RGB_Color_Knob_panelDropped l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {3 resolution} resolution {{parent.patch_resolution}} } Constant { inputs 0 color {{parent.colour_RGBA_Color_Knob.r} {parent.colour_RGBA_Color_Knob.g} {parent.colour_RGBA_Color_Knob.b} {parent.colour_RGBA_Color_Knob.a}} format "512 512 0 0 512 512 1 square_512" name Constant xpos 290 ypos 63 } Reformat { type "to box" box_width {{parent.resolution}} box_height {{parent.resolution}} box_fixed true filter Impulse black_outside true name Reformat1 xpos 290 ypos 158 } Output { name Output xpos 290 ypos 230 } end_group Group { inputs 0 name orange_yellow xpos 622 ypos -201 postage_stamp true addUserKnob {20 sample_Tab l Sample} addUserKnob {19 colour_RGBA_Color_Knob l Colour} colour_RGBA_Color_Knob {0.4769723742 0.4293377578 0.06005041429 1} addUserKnob {6 colour_RGBA_Color_Knob_panelDropped l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {6 colour_RGBA_Color_Knob_panelDropped_1 l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {6 colour_RGBA_Color_Knob_panelDropped_1_1 l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {1 name_Text_Knob l Name} name_Text_Knob "orange yellow" addUserKnob {1 index_Text_Knob l Index} index_Text_Knob 12 addUserKnob {6 label_colour_RGB_Color_Knob_panelDropped l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {6 label_colour_RGB_Color_Knob_panelDropped_1 l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {6 label_colour_RGB_Color_Knob_panelDropped_1_1 l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {3 resolution} resolution {{parent.patch_resolution}} } Constant { inputs 0 color {{parent.colour_RGBA_Color_Knob.r} {parent.colour_RGBA_Color_Knob.g} {parent.colour_RGBA_Color_Knob.b} {parent.colour_RGBA_Color_Knob.a}} format "512 512 0 0 512 512 1 square_512" name Constant xpos 262 ypos 53 } Reformat { type "to box" box_width {{parent.resolution}} box_height {{parent.resolution}} box_fixed true filter Impulse black_outside true name Reformat1 } Output { name Output xpos 262 ypos 173 } end_group Group { inputs 0 name yellow_green xpos 512 ypos -201 postage_stamp true addUserKnob {20 sample_Tab l Sample} addUserKnob {19 colour_RGBA_Color_Knob l Colour} colour_RGBA_Color_Knob {0.3427379502 0.4331759409 0.08330791241 1} addUserKnob {6 colour_RGBA_Color_Knob_panelDropped l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {6 colour_RGBA_Color_Knob_panelDropped_1 l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {6 colour_RGBA_Color_Knob_panelDropped_1_1 l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {1 name_Text_Knob l Name} name_Text_Knob "yellow green" addUserKnob {1 index_Text_Knob l Index} index_Text_Knob 11 addUserKnob {6 label_colour_RGB_Color_Knob_panelDropped l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {6 label_colour_RGB_Color_Knob_panelDropped_1 l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {6 label_colour_RGB_Color_Knob_panelDropped_1_1 l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {3 resolution} resolution {{parent.patch_resolution}} } Constant { inputs 0 color {{parent.colour_RGBA_Color_Knob.r} {parent.colour_RGBA_Color_Knob.g} {parent.colour_RGBA_Color_Knob.b} {parent.colour_RGBA_Color_Knob.a}} format "512 512 0 0 512 512 1 square_512" name Constant xpos 262 ypos 53 } Reformat { type "to box" box_width {{parent.resolution}} box_height {{parent.resolution}} box_fixed true filter Impulse black_outside true name Reformat1 } Output { name Output xpos 262 ypos 173 } end_group Group { inputs 0 name purple xpos 401 ypos -201 postage_stamp true addUserKnob {20 sample_Tab l Sample} addUserKnob {19 colour_RGBA_Color_Knob l Colour} colour_RGBA_Color_Knob {0.08353888545 0.06276662955 0.1042075686 1} addUserKnob {6 colour_RGBA_Color_Knob_panelDropped l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {6 colour_RGBA_Color_Knob_panelDropped_1 l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {6 colour_RGBA_Color_Knob_panelDropped_1_1 l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {1 name_Text_Knob l Name} name_Text_Knob purple addUserKnob {1 index_Text_Knob l Index} index_Text_Knob 10 addUserKnob {6 label_colour_RGB_Color_Knob_panelDropped l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {6 label_colour_RGB_Color_Knob_panelDropped_1 l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {6 label_colour_RGB_Color_Knob_panelDropped_1_1 l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {3 resolution} resolution {{parent.patch_resolution}} } Constant { inputs 0 color {{parent.colour_RGBA_Color_Knob.r} {parent.colour_RGBA_Color_Knob.g} {parent.colour_RGBA_Color_Knob.b} {parent.colour_RGBA_Color_Knob.a}} format "512 512 0 0 512 512 1 square_512" name Constant xpos 262 ypos 53 } Reformat { type "to box" box_width {{parent.resolution}} box_height {{parent.resolution}} box_fixed true filter Impulse black_outside true name Reformat1 } Output { name Output xpos 262 ypos 173 } end_group Group { inputs 0 name moderate_red xpos 290 ypos -201 postage_stamp true addUserKnob {20 sample_Tab l Sample} addUserKnob {19 colour_RGBA_Color_Knob l Colour} colour_RGBA_Color_Knob {0.2915036416 0.188999956 0.09736350318 1} addUserKnob {6 colour_RGBA_Color_Knob_panelDropped l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {6 colour_RGBA_Color_Knob_panelDropped_1 l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {6 colour_RGBA_Color_Knob_panelDropped_1_1 l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {1 name_Text_Knob l Name} name_Text_Knob "moderate red" addUserKnob {1 index_Text_Knob l Index} index_Text_Knob 9 addUserKnob {6 label_colour_RGB_Color_Knob_panelDropped l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {6 label_colour_RGB_Color_Knob_panelDropped_1 l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {6 label_colour_RGB_Color_Knob_panelDropped_1_1 l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {3 resolution} resolution {{parent.patch_resolution}} } Constant { inputs 0 color {{parent.colour_RGBA_Color_Knob.r} {parent.colour_RGBA_Color_Knob.g} {parent.colour_RGBA_Color_Knob.b} {parent.colour_RGBA_Color_Knob.a}} format "512 512 0 0 512 512 1 square_512" name Constant xpos 262 ypos 53 } Reformat { type "to box" box_width {{parent.resolution}} box_height {{parent.resolution}} box_fixed true filter Impulse black_outside true name Reformat1 } Output { name Output xpos 262 ypos 173 } end_group Group { inputs 0 name purplish_blue xpos 180 ypos -201 postage_stamp true addUserKnob {20 sample_Tab l Sample} addUserKnob {19 colour_RGBA_Color_Knob l Colour} colour_RGBA_Color_Knob {0.1200518326 0.1091090233 0.2874447494 1} addUserKnob {6 colour_RGBA_Color_Knob_panelDropped l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {6 colour_RGBA_Color_Knob_panelDropped_1 l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {6 colour_RGBA_Color_Knob_panelDropped_1_1 l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {1 name_Text_Knob l Name} name_Text_Knob "purplish blue" addUserKnob {1 index_Text_Knob l Index} index_Text_Knob 8 addUserKnob {6 label_colour_RGB_Color_Knob_panelDropped l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {6 label_colour_RGB_Color_Knob_panelDropped_1 l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {6 label_colour_RGB_Color_Knob_panelDropped_1_1 l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {3 resolution} resolution {{parent.patch_resolution}} } Constant { inputs 0 color {{parent.colour_RGBA_Color_Knob.r} {parent.colour_RGBA_Color_Knob.g} {parent.colour_RGBA_Color_Knob.b} {parent.colour_RGBA_Color_Knob.a}} format "512 512 0 0 512 512 1 square_512" name Constant xpos 262 ypos 53 } Reformat { type "to box" box_width {{parent.resolution}} box_height {{parent.resolution}} box_fixed true filter Impulse black_outside true name Reformat1 } Output { name Output xpos 262 ypos 173 } end_group Group { inputs 0 name orange xpos 74 ypos -201 postage_stamp true addUserKnob {20 sample_Tab l Sample} addUserKnob {19 colour_RGBA_Color_Knob l Colour} colour_RGBA_Color_Knob {0.4073691399 0.3126416159 0.05130591012 1} addUserKnob {6 colour_RGBA_Color_Knob_panelDropped l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {6 colour_RGBA_Color_Knob_panelDropped_1 l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {6 colour_RGBA_Color_Knob_panelDropped_1_1 l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {1 name_Text_Knob l Name} name_Text_Knob orange addUserKnob {1 index_Text_Knob l Index} index_Text_Knob 7 addUserKnob {6 label_colour_RGB_Color_Knob_panelDropped l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {6 label_colour_RGB_Color_Knob_panelDropped_1 l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {6 label_colour_RGB_Color_Knob_panelDropped_1_1 l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {3 resolution} resolution {{parent.patch_resolution}} } Constant { inputs 0 color {{parent.colour_RGBA_Color_Knob.r} {parent.colour_RGBA_Color_Knob.g} {parent.colour_RGBA_Color_Knob.b} {parent.colour_RGBA_Color_Knob.a}} format "512 512 0 0 512 512 1 square_512" name Constant xpos 262 ypos 53 } Reformat { type "to box" box_width {{parent.resolution}} box_height {{parent.resolution}} box_fixed true filter Impulse black_outside true name Reformat1 } Output { name Output xpos 262 ypos 173 } end_group Group { inputs 0 name cyan xpos 622 ypos -81 postage_stamp true addUserKnob {20 sample_Tab l Sample} addUserKnob {19 colour_RGBA_Color_Knob l Colour} colour_RGBA_Color_Knob {0.1247966941 0.180609913 0.2913392383 1} addUserKnob {6 colour_RGBA_Color_Knob_panelDropped l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {6 colour_RGBA_Color_Knob_panelDropped_1 l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {6 colour_RGBA_Color_Knob_panelDropped_1_1 l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {1 name_Text_Knob l Name} name_Text_Knob cyan addUserKnob {1 index_Text_Knob l Index} index_Text_Knob 18 addUserKnob {6 label_colour_RGB_Color_Knob_panelDropped l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {6 label_colour_RGB_Color_Knob_panelDropped_1 l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {6 label_colour_RGB_Color_Knob_panelDropped_1_1 l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {3 resolution} resolution {{parent.patch_resolution}} } Constant { inputs 0 color {{parent.colour_RGBA_Color_Knob.r} {parent.colour_RGBA_Color_Knob.g} {parent.colour_RGBA_Color_Knob.b} {parent.colour_RGBA_Color_Knob.a}} format "512 512 0 0 512 512 1 square_512" name Constant xpos 262 ypos 53 } Reformat { type "to box" box_width {{parent.resolution}} box_height {{parent.resolution}} box_fixed true filter Impulse black_outside true name Reformat1 } Output { name Output xpos 262 ypos 173 } end_group Group { inputs 0 name magenta xpos 512 ypos -81 postage_stamp true addUserKnob {20 sample_Tab l Sample} addUserKnob {19 colour_RGBA_Color_Knob l Colour} colour_RGBA_Color_Knob {0.299122798 0.1895114577 0.2213469194 1} addUserKnob {6 colour_RGBA_Color_Knob_panelDropped l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {6 colour_RGBA_Color_Knob_panelDropped_1 l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {6 colour_RGBA_Color_Knob_panelDropped_1_1 l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {1 name_Text_Knob l Name} name_Text_Knob magenta addUserKnob {1 index_Text_Knob l Index} index_Text_Knob 17 addUserKnob {6 label_colour_RGB_Color_Knob_panelDropped l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {6 label_colour_RGB_Color_Knob_panelDropped_1 l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {6 label_colour_RGB_Color_Knob_panelDropped_1_1 l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {3 resolution} resolution {{parent.patch_resolution}} } Constant { inputs 0 color {{parent.colour_RGBA_Color_Knob.r} {parent.colour_RGBA_Color_Knob.g} {parent.colour_RGBA_Color_Knob.b} {parent.colour_RGBA_Color_Knob.a}} format "512 512 0 0 512 512 1 square_512" name Constant xpos 262 ypos 53 } Reformat { type "to box" box_width {{parent.resolution}} box_height {{parent.resolution}} box_fixed true filter Impulse black_outside true name Reformat1 } Output { name Output xpos 262 ypos 173 } end_group Group { inputs 0 name yellow xpos 399 ypos -81 postage_stamp true addUserKnob {20 sample_Tab l Sample} addUserKnob {19 colour_RGBA_Color_Knob l Colour} colour_RGBA_Color_Knob {0.5888922356 0.5992976803 0.07077420003 1} addUserKnob {6 colour_RGBA_Color_Knob_panelDropped l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {6 colour_RGBA_Color_Knob_panelDropped_1 l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {6 colour_RGBA_Color_Knob_panelDropped_1_1 l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {1 name_Text_Knob l Name} name_Text_Knob yellow addUserKnob {1 index_Text_Knob l Index} index_Text_Knob 16 addUserKnob {6 label_colour_RGB_Color_Knob_panelDropped l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {6 label_colour_RGB_Color_Knob_panelDropped_1 l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {6 label_colour_RGB_Color_Knob_panelDropped_1_1 l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {3 resolution} resolution {{parent.patch_resolution}} } Constant { inputs 0 color {{parent.colour_RGBA_Color_Knob.r} {parent.colour_RGBA_Color_Knob.g} {parent.colour_RGBA_Color_Knob.b} {parent.colour_RGBA_Color_Knob.a}} format "512 512 0 0 512 512 1 square_512" name Constant xpos 262 ypos 53 } Reformat { type "to box" box_width {{parent.resolution}} box_height {{parent.resolution}} box_fixed true filter Impulse black_outside true name Reformat1 xpos 262 ypos 125 } Output { name Output xpos 262 ypos 182 } end_group Group { inputs 0 name red xpos 292 ypos -81 postage_stamp true addUserKnob {20 sample_Tab l Sample} addUserKnob {19 colour_RGBA_Color_Knob l Colour} colour_RGBA_Color_Knob {0.2143728424 0.127800835 0.03868150726 1} addUserKnob {6 colour_RGBA_Color_Knob_panelDropped l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {6 colour_RGBA_Color_Knob_panelDropped_1 l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {6 colour_RGBA_Color_Knob_panelDropped_1_1 l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {1 name_Text_Knob l Name} name_Text_Knob red addUserKnob {1 index_Text_Knob l Index} index_Text_Knob 15 addUserKnob {6 label_colour_RGB_Color_Knob_panelDropped l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {6 label_colour_RGB_Color_Knob_panelDropped_1 l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {6 label_colour_RGB_Color_Knob_panelDropped_1_1 l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {3 resolution} resolution {{parent.patch_resolution}} } Constant { inputs 0 color {{parent.colour_RGBA_Color_Knob.r} {parent.colour_RGBA_Color_Knob.g} {parent.colour_RGBA_Color_Knob.b} {parent.colour_RGBA_Color_Knob.a}} format "512 512 0 0 512 512 1 square_512" name Constant xpos 262 ypos 53 } Reformat { type "to box" box_width {{parent.resolution}} box_height {{parent.resolution}} box_fixed true filter Impulse black_outside true name Reformat1 } Output { name Output xpos 262 ypos 173 } end_group Group { inputs 0 name green xpos 182 ypos -81 postage_stamp true addUserKnob {20 sample_Tab l Sample} addUserKnob {19 colour_RGBA_Color_Knob l Colour} colour_RGBA_Color_Knob {0.1413517689 0.2233437582 0.07287461742 1} addUserKnob {6 colour_RGBA_Color_Knob_panelDropped l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {6 colour_RGBA_Color_Knob_panelDropped_1 l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {6 colour_RGBA_Color_Knob_panelDropped_1_1 l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {1 name_Text_Knob l Name} name_Text_Knob green addUserKnob {1 index_Text_Knob l Index} index_Text_Knob 14 addUserKnob {6 label_colour_RGB_Color_Knob_panelDropped l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {6 label_colour_RGB_Color_Knob_panelDropped_1 l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {6 label_colour_RGB_Color_Knob_panelDropped_1_1 l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {3 resolution} resolution {{parent.patch_resolution}} } Constant { inputs 0 color {{parent.colour_RGBA_Color_Knob.r} {parent.colour_RGBA_Color_Knob.g} {parent.colour_RGBA_Color_Knob.b} {parent.colour_RGBA_Color_Knob.a}} format "512 512 0 0 512 512 1 square_512" name Constant xpos 262 ypos 53 } Reformat { type "to box" box_width {{parent.resolution}} box_height {{parent.resolution}} box_fixed true filter Impulse black_outside true name Reformat1 } Output { name Output xpos 262 ypos 173 } end_group Group { inputs 0 name blue xpos 72 ypos -81 postage_stamp true addUserKnob {20 sample_Tab l Sample} addUserKnob {19 colour_RGBA_Color_Knob l Colour} colour_RGBA_Color_Knob {0.06809095613 0.05596214063 0.2077405936 1} addUserKnob {6 colour_RGBA_Color_Knob_panelDropped l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {6 colour_RGBA_Color_Knob_panelDropped_1 l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {6 colour_RGBA_Color_Knob_panelDropped_1_1 l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {1 name_Text_Knob l Name} name_Text_Knob blue addUserKnob {1 index_Text_Knob l Index} index_Text_Knob 13 addUserKnob {6 label_colour_RGB_Color_Knob_panelDropped l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {6 label_colour_RGB_Color_Knob_panelDropped_1 l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {6 label_colour_RGB_Color_Knob_panelDropped_1_1 l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {3 resolution} resolution {{parent.patch_resolution}} } Constant { inputs 0 color {{parent.colour_RGBA_Color_Knob.r} {parent.colour_RGBA_Color_Knob.g} {parent.colour_RGBA_Color_Knob.b} {parent.colour_RGBA_Color_Knob.a}} format "512 512 0 0 512 512 1 square_512" name Constant xpos 262 ypos 53 } Reformat { type "to box" box_width {{parent.resolution}} box_height {{parent.resolution}} box_fixed true filter Impulse black_outside true name Reformat1 } Output { name Output xpos 262 ypos 173 } end_group Group { inputs 0 name black_2 xpos 623 ypos 39 postage_stamp true addUserKnob {20 sample_Tab l Sample} addUserKnob {19 colour_RGBA_Color_Knob l Colour} colour_RGBA_Color_Knob {0.03042544265 0.03151319431 0.02656724434 1} addUserKnob {6 colour_RGBA_Color_Knob_panelDropped l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {6 colour_RGBA_Color_Knob_panelDropped_1 l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {6 colour_RGBA_Color_Knob_panelDropped_1_1 l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {1 name_Text_Knob l Name} name_Text_Knob "black 2 (1.5 D)" addUserKnob {1 index_Text_Knob l Index} index_Text_Knob 24 addUserKnob {6 label_colour_RGB_Color_Knob_panelDropped l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {6 label_colour_RGB_Color_Knob_panelDropped_1 l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {6 label_colour_RGB_Color_Knob_panelDropped_1_1 l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {3 resolution} resolution {{parent.patch_resolution}} } Constant { inputs 0 color {{parent.colour_RGBA_Color_Knob.r} {parent.colour_RGBA_Color_Knob.g} {parent.colour_RGBA_Color_Knob.b} {parent.colour_RGBA_Color_Knob.a}} format "512 512 0 0 512 512 1 square_512" name Constant xpos 262 ypos 53 } Reformat { type "to box" box_width {{parent.resolution}} box_height {{parent.resolution}} box_fixed true filter Impulse black_outside true name Reformat1 xpos 262 ypos 125 } Output { name Output xpos 262 ypos 173 } end_group Group { inputs 0 name neutral_3 xpos 512 ypos 39 postage_stamp true addUserKnob {20 sample_Tab l Sample} addUserKnob {19 colour_RGBA_Color_Knob l Colour} colour_RGBA_Color_Knob {0.08448968042 0.08817234828 0.07391630753 1} addUserKnob {6 colour_RGBA_Color_Knob_panelDropped l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {6 colour_RGBA_Color_Knob_panelDropped_1 l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {6 colour_RGBA_Color_Knob_panelDropped_1_1 l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {1 name_Text_Knob l Name} name_Text_Knob "neutral 3.5 (1.05 D)" addUserKnob {1 index_Text_Knob l Index} index_Text_Knob 23 addUserKnob {6 label_colour_RGB_Color_Knob_panelDropped l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {6 label_colour_RGB_Color_Knob_panelDropped_1 l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {6 label_colour_RGB_Color_Knob_panelDropped_1_1 l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {3 resolution} resolution {{parent.patch_resolution}} } Constant { inputs 0 color {{parent.colour_RGBA_Color_Knob.r} {parent.colour_RGBA_Color_Knob.g} {parent.colour_RGBA_Color_Knob.b} {parent.colour_RGBA_Color_Knob.a}} format "512 512 0 0 512 512 1 square_512" name Constant xpos 262 ypos 53 } Reformat { type "to box" box_width {{parent.resolution}} box_height {{parent.resolution}} box_fixed true filter Impulse black_outside true name Reformat1 } Output { name Output xpos 262 ypos 173 } end_group Group { inputs 0 name neutral_5 xpos 403 ypos 39 postage_stamp true addUserKnob {20 sample_Tab l Sample} addUserKnob {19 colour_RGBA_Color_Knob l Colour} colour_RGBA_Color_Knob {0.1835495863 0.1906228754 0.1566717383 1} addUserKnob {6 colour_RGBA_Color_Knob_panelDropped l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {6 colour_RGBA_Color_Knob_panelDropped_1 l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {6 colour_RGBA_Color_Knob_panelDropped_1_1 l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {1 name_Text_Knob l Name} name_Text_Knob "neutral 5 (.70 D)" addUserKnob {1 index_Text_Knob l Index} index_Text_Knob 22 addUserKnob {6 label_colour_RGB_Color_Knob_panelDropped l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {6 label_colour_RGB_Color_Knob_panelDropped_1 l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {6 label_colour_RGB_Color_Knob_panelDropped_1_1 l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {3 resolution} resolution {{parent.patch_resolution}} } Constant { inputs 0 color {{parent.colour_RGBA_Color_Knob.r} {parent.colour_RGBA_Color_Knob.g} {parent.colour_RGBA_Color_Knob.b} {parent.colour_RGBA_Color_Knob.a}} format "512 512 0 0 512 512 1 square_512" name Constant xpos 262 ypos 53 } Reformat { type "to box" box_width {{parent.resolution}} box_height {{parent.resolution}} box_fixed true filter Impulse black_outside true name Reformat1 } Output { name Output xpos 262 ypos 173 } end_group Group { inputs 0 name neutral_6 xpos 292 ypos 39 postage_stamp true addUserKnob {20 sample_Tab l Sample} addUserKnob {19 colour_RGBA_Color_Knob l Colour} colour_RGBA_Color_Knob {0.3495921991 0.3648652066 0.3013565492 1} addUserKnob {6 colour_RGBA_Color_Knob_panelDropped l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {6 colour_RGBA_Color_Knob_panelDropped_1 l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {6 colour_RGBA_Color_Knob_panelDropped_1_1 l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {1 name_Text_Knob l Name} name_Text_Knob "neutral 6.5 (.44 D)" addUserKnob {1 index_Text_Knob l Index} index_Text_Knob 21 addUserKnob {6 label_colour_RGB_Color_Knob_panelDropped l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {6 label_colour_RGB_Color_Knob_panelDropped_1 l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {6 label_colour_RGB_Color_Knob_panelDropped_1_1 l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {3 resolution} resolution {{parent.patch_resolution}} } Constant { inputs 0 color {{parent.colour_RGBA_Color_Knob.r} {parent.colour_RGBA_Color_Knob.g} {parent.colour_RGBA_Color_Knob.b} {parent.colour_RGBA_Color_Knob.a}} format "512 512 0 0 512 512 1 square_512" name Constant xpos 262 ypos 53 } Reformat { type "to box" box_width {{parent.resolution}} box_height {{parent.resolution}} box_fixed true filter Impulse black_outside true name Reformat1 } Output { name Output xpos 262 ypos 173 } end_group Group { inputs 0 name neutral_8 xpos 179 ypos 39 postage_stamp true addUserKnob {20 sample_Tab l Sample} addUserKnob {19 colour_RGBA_Color_Knob l Colour} colour_RGBA_Color_Knob {0.5665335579 0.5899709702 0.4828473821 1} addUserKnob {6 colour_RGBA_Color_Knob_panelDropped l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {6 colour_RGBA_Color_Knob_panelDropped_1 l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {6 colour_RGBA_Color_Knob_panelDropped_1_1 l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {1 name_Text_Knob l Name} name_Text_Knob "neutral 8 (.23 D)" addUserKnob {1 index_Text_Knob l Index} index_Text_Knob 20 addUserKnob {6 label_colour_RGB_Color_Knob_panelDropped l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {6 label_colour_RGB_Color_Knob_panelDropped_1 l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {6 label_colour_RGB_Color_Knob_panelDropped_1_1 l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {3 resolution} resolution {{parent.patch_resolution}} } Constant { inputs 0 color {{parent.colour_RGBA_Color_Knob.r} {parent.colour_RGBA_Color_Knob.g} {parent.colour_RGBA_Color_Knob.b} {parent.colour_RGBA_Color_Knob.a}} format "512 512 0 0 512 512 1 square_512" name Constant xpos 262 ypos 53 } Reformat { type "to box" box_width {{parent.resolution}} box_height {{parent.resolution}} box_fixed true filter Impulse black_outside true name Reformat1 } Output { name Output xpos 262 ypos 173 } end_group Group { inputs 0 name white_9 xpos 70 ypos 39 postage_stamp true addUserKnob {20 sample_Tab l Sample} addUserKnob {19 colour_RGBA_Color_Knob l Colour} colour_RGBA_Color_Knob {0.8436985288 0.8806903203 0.6936778752 1} addUserKnob {6 colour_RGBA_Color_Knob_panelDropped l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {6 colour_RGBA_Color_Knob_panelDropped_1 l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {6 colour_RGBA_Color_Knob_panelDropped_1_1 l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {1 name_Text_Knob l Name} name_Text_Knob "white 9.5 (.05 D)" addUserKnob {1 index_Text_Knob l Index} index_Text_Knob 19 addUserKnob {6 label_colour_RGB_Color_Knob_panelDropped l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {6 label_colour_RGB_Color_Knob_panelDropped_1 l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {6 label_colour_RGB_Color_Knob_panelDropped_1_1 l "panel dropped state" -STARTLINE +HIDDEN} addUserKnob {3 resolution} resolution {{parent.patch_resolution}} } Constant { inputs 0 color {{parent.colour_RGBA_Color_Knob.r} {parent.colour_RGBA_Color_Knob.g} {parent.colour_RGBA_Color_Knob.b} {parent.colour_RGBA_Color_Knob.a}} format "512 512 0 0 512 512 1 square_512" name Constant xpos 262 ypos 53 } Reformat { type "to box" box_width {{parent.resolution}} box_height {{parent.resolution}} box_fixed true filter Impulse black_outside true name Reformat1 xpos 262 ypos 134 } Output { name Output xpos 262 ypos 173 } end_group ContactSheet { inputs 24 width {{"rint(parent.patch_resolution * 6 + gap * 7)"}} height {{"rint(parent.patch_resolution * 4 + gap * 5)"}} rows 4 columns 6 startframe 1 endframe 1 name ContactSheet xpos 620 ypos 206 } Unpremult { name Unpremult1 xpos 620 ypos 278 } Output { name Output xpos 620 ypos 446 } end_group BlackOutside { name BlackOutside4 xpos -920 ypos -298 } Position { translate {{parent.Reformat1.box_width*3+Rectangle1.area.r} {parent.ReformatBox4.box_width-input.height}} name Position7 xpos -920 ypos -273 } Constant { inputs 0 format "256 256 0 0 256 256 1 square_256" name Constant5 xpos -700 ypos -1354 postage_stamp false } Dot { name Dot25 xpos -666 ypos -1302 } set N9f4058b0 [stack 0] Dot { name Dot27 xpos -1546 ypos -1302 } Reformat { type "to box" box_width {{parent.Reformat1.box_width}} box_height 100 box_fixed true name ReformatBox1 xpos -1580 ypos -994 } Ramp { p0 {0 0} p1 {{input.width} 0} color {{p1}} name Ramp3 xpos -1580 ypos -898 } ColorLookup { lut {master {} red {curve 0.31 0.31 0.31 0.31 0.31 0.31 0.31 0.31 0.31 0.31 0.31 0.31 0.31 0.31 0.31 0.31 0.31 0.31 0.31 0.31 0.31 0.31 0.31 0.31 0.31 0.31 0.31 0.31 0.31 0.31 0.31 0.31 0.31 0.31 0.31 0.31 0.31 0.397 0.397 0.397 0.397 0.397 0.397 0.397 0.397 0.397 0.397 0.397 0.397 0.397 0.397 0.397 0.397 0.397 0.397 0.397 0.397 0.397 0.397 0.397 0.397 0.397 0.397 0.397 0.397 0.397 0.397 0.397 0.397 0.397 0.397 0.397 0.397 0.397 0.483 0.483 0.483 0.483 0.483 0.483 0.483 0.483 0.483 0.483 0.483 0.483 0.483 0.483 0.483 0.483 0.483 0.483 0.483 0.483 0.483 0.483 0.483 0.483 0.483 0.483 0.483 0.483 0.483 0.483 0.483 0.483 0.483 0.483 0.483 0.483 0.483 0.569 0.569 0.569 0.569 0.569 0.569 0.569 0.569 0.569 0.569 0.569 0.569 0.569 0.569 0.569 0.569 0.569 0.569 0.569 0.569 0.569 0.569 0.569 0.569 0.569 0.569 0.569 0.569 0.569 0.569 0.569 0.569 0.569 0.569 0.569 0.569 0.569 0.655 0.655 0.655 0.655 0.655 0.655 0.655 0.655 0.655 0.655 0.655 0.655 0.655 0.655 0.655 0.655 0.655 0.655 0.655 0.655 0.655 0.655 0.655 0.655 0.655 0.655 0.655 0.655 0.655 0.655 0.655 0.655 0.655 0.655 0.655 0.655 0.655 0.741 0.741 0.741 0.741 0.741 0.741 0.741 0.741 0.741 0.741 0.741 0.741 0.741 0.741 0.741 0.741 0.741 0.741 0.741 0.741 0.741 0.741 0.741 0.741 0.741 0.741 0.741 0.741 0.741 0.741 0.741 0.741 0.741 0.741 0.741 0.741 0.741 0.828 0.828 0.828 0.828 0.828 0.828 0.828 0.828 0.828 0.828 0.828 0.828 0.828 0.828 0.828 0.828 0.828 0.828 0.828 0.828 0.828 0.828 0.828 0.828 0.828 0.828 0.828 0.828 0.828 0.828 0.828 0.828 0.828 0.828 0.828 0.828 0.828 0.914 0.914 0.914 0.914 0.914 0.914 0.914 0.914 0.914 0.914 0.914 0.914 0.914 0.914 0.914 0.914 0.914 0.914 0.914 0.914 0.914 0.914 0.914 0.914 0.914 0.914 0.914 0.914 0.914 0.914 0.914 0.914 0.914 0.914 0.914 0.914 0.914} green {curve 0.433 0.464 0.513 0.611 0.576 0.46 0.426 0.412 0.404 0.397 0.384 0.374 0.346 0.333 0.311 0.287 0.257 0.23 0.21 0.219 0.208 0.211 0.208 0.187 0.191 0.187 0.18 0.164 0.17 0.177 0.175 0.188 0.252 0.325 0.385 0.416 0.433 0.487 0.532 0.588 0.637 0.634 0.549 0.506 0.49 0.458 0.426 0.412 0.397 0.365 0.337 0.301 0.262 0.221 0.192 0.164 0.167 0.162 0.176 0.179 0.148 0.156 0.142 0.148 0.138 0.145 0.145 0.161 0.197 0.256 0.324 0.393 0.451 0.487 0.508 0.538 0.587 0.634 0.659 0.611 0.552 0.526 0.484 0.452 0.428 0.406 0.371 0.334 0.293 0.243 0.204 0.177 0.151 0.151 0.162 0.158 0.161 0.142 0.141 0.129 0.134 0.14 0.156 0.166 0.192 0.221 0.265 0.325 0.392 0.451 0.508 0.48 0.513 0.554 0.597 0.63 0.634 0.58 0.546 0.499 0.466 0.434 0.408 0.372 0.332 0.288 0.242 0.202 0.179 0.16 0.157 0.162 0.157 0.159 0.149 0.153 0.147 0.154 0.164 0.18 0.199 0.226 0.25 0.279 0.325 0.38 0.439 0.48 0.436 0.468 0.502 0.541 0.57 0.605 0.594 0.555 0.511 0.473 0.439 0.409 0.371 0.332 0.288 0.252 0.217 0.196 0.181 0.178 0.185 0.176 0.173 0.168 0.176 0.178 0.19 0.202 0.214 0.235 0.254 0.27 0.291 0.323 0.366 0.41 0.436 0.396 0.414 0.438 0.465 0.485 0.527 0.566 0.557 0.523 0.478 0.442 0.409 0.371 0.334 0.294 0.265 0.244 0.223 0.225 0.212 0.218 0.211 0.211 0.207 0.214 0.217 0.229 0.237 0.244 0.264 0.275 0.285 0.3 0.321 0.348 0.376 0.396 0.357 0.368 0.377 0.391 0.402 0.431 0.481 0.503 0.521 0.482 0.444 0.409 0.372 0.337 0.307 0.286 0.27 0.257 0.247 0.251 0.257 0.255 0.254 0.25 0.258 0.259 0.265 0.269 0.278 0.284 0.292 0.297 0.305 0.317 0.33 0.344 0.357 0.321 0.322 0.328 0.332 0.333 0.346 0.365 0.389 0.411 0.459 0.443 0.399 0.352 0.327 0.313 0.304 0.3 0.294 0.295 0.294 0.293 0.292 0.291 0.295 0.3 0.301 0.302 0.304 0.304 0.304 0.305 0.307 0.309 0.312 0.313 0.316 0.321} blue {curve 0.26 0.281 0.298 0.306 0.342 0.365 0.39 0.381 0.392 0.416 0.413 0.43 0.448 0.446 0.433 0.425 0.419 0.394 0.362 0.328 0.305 0.298 0.286 0.247 0.26 0.219 0.199 0.168 0.178 0.14 0.11 0.084 0.104 0.158 0.18 0.225 0.26 0.235 0.26 0.28 0.298 0.327 0.372 0.395 0.417 0.43 0.435 0.455 0.488 0.479 0.521 0.522 0.515 0.49 0.436 0.383 0.331 0.295 0.282 0.258 0.219 0.208 0.179 0.168 0.141 0.129 0.106 0.094 0.095 0.112 0.127 0.165 0.199 0.235 0.226 0.258 0.28 0.298 0.316 0.361 0.399 0.427 0.446 0.461 0.482 0.52 0.521 0.553 0.563 0.573 0.524 0.454 0.389 0.33 0.295 0.266 0.247 0.214 0.195 0.168 0.178 0.142 0.14 0.128 0.129 0.126 0.131 0.144 0.167 0.199 0.226 0.238 0.266 0.289 0.31 0.329 0.351 0.395 0.428 0.453 0.475 0.494 0.533 0.542 0.568 0.584 0.576 0.53 0.451 0.385 0.331 0.299 0.266 0.245 0.22 0.206 0.184 0.174 0.167 0.166 0.166 0.173 0.172 0.165 0.172 0.187 0.208 0.238 0.258 0.28 0.3 0.321 0.343 0.362 0.391 0.427 0.458 0.482 0.503 0.546 0.554 0.573 0.582 0.546 0.499 0.431 0.375 0.33 0.304 0.275 0.254 0.234 0.225 0.212 0.209 0.206 0.203 0.21 0.215 0.212 0.204 0.208 0.214 0.231 0.258 0.277 0.294 0.31 0.328 0.348 0.372 0.397 0.427 0.462 0.487 0.51 0.544 0.558 0.559 0.556 0.503 0.444 0.402 0.355 0.329 0.309 0.289 0.275 0.26 0.254 0.245 0.245 0.241 0.238 0.249 0.249 0.245 0.241 0.242 0.246 0.258 0.277 0.295 0.305 0.315 0.327 0.339 0.359 0.39 0.421 0.461 0.491 0.515 0.54 0.546 0.522 0.478 0.429 0.393 0.368 0.345 0.325 0.313 0.303 0.295 0.286 0.284 0.279 0.277 0.274 0.277 0.277 0.28 0.276 0.273 0.274 0.279 0.285 0.295 0.311 0.314 0.316 0.32 0.323 0.331 0.346 0.367 0.397 0.468 0.513 0.494 0.425 0.388 0.372 0.348 0.336 0.331 0.326 0.32 0.316 0.314 0.312 0.309 0.321 0.32 0.319 0.305 0.317 0.316 0.316 0.315 0.316 0.317 0.319 0.321 0.311} alpha {}} name ColorLookup7 label "Pointers Samples Yxy\nSource: https://www.rit.edu/cos/colorscience/rc_useful_data.php" xpos -1580 ypos -790 } Colorspace { colorspace_in CIE-Yxy primary_in "Adobe (1998)" colorspace_out CIE-XYZ name Colorspace12 label "\[value colorspace_in] -> \[value colorspace_out]" xpos -1580 ypos -688 } Fill { output alpha name Fill5 xpos -1580 ypos -639 } BlackOutside { name BlackOutside7 xpos -1580 ypos -562 } Position { translate {6 {parent.Position1.translate.y-input.height}} name Position3 xpos -1580 ypos -538 } Dot { name Dot15 xpos -1546 ypos -414 } push $N9f4058b0 Reformat { type "to box" box_width 2048 box_height 2048 box_fixed true name ReformatBox4 xpos -700 ypos -1258 } Expression { temp_name0 n temp_expr0 input.width/8 channel0 {rgba.red rgba.green rgba.blue none} expr0 x/width*(1-y/height) channel3 alpha expr3 1 name Expression7 xpos -700 ypos -1209 } Dot { name Dot10 xpos -666 ypos -1158 } set N578fe2b0 [stack 0] Dot { name Dot26 xpos -886 ypos -1158 } set N49ff3920 [stack 0] Dot { name Dot23 xpos -1106 ypos -1158 } set N49ff8780 [stack 0] Dot { name Dot12 xpos -1326 ypos -1158 } Mirror2 { flip true flop true name Mirror2_1 xpos -1360 ypos -1042 } Reformat { type "to box" box_width 512 box_height {{box_width}} box_fixed true name Reformat1 xpos -1360 ypos -994 } Gamma { channels rgb value 2 name Gamma1 xpos -1360 ypos -898 } Multiply { channels rgb value 8000 name Multiply1 label "\[value value]" xpos -1360 ypos -811 } ColorLookup { lut {master {} red {curve R 0.4830000103 x50 0.5045000315 0.5260000229 0.5475000143 0.5690000057 0.5904999971 0.6119999886 0.63349998 0.6549999714 0.6805312037 0.7087500095 0.7315937281 0.7409999967 0.7409999967 0.7409999967 0.7409999967 0.7409999967 0.75459373 0.7845000029 0.8144062757 0.8280000091 0.8280000091 0.8280000091 0.8280000091 0.8280000091 0.8009687662 0.74150002 0.6820312142 0.6549999714 0.6684374809 0.6980000138 0.7275624871 0.7409999967 0.7315937281 0.7087500095 0.6805312037 0.6549999714 0.629468739 0.6012499928 0.5784062743 0.5690000057 0.5690000057 0.5690000057 0.5690000057 0.5690000057 0.5690000057 0.5690000057 0.5690000057 0.5690000057 0.5555624962 0.5260000229 0.4964375198 0.4830000103 0.4830000103 0.4830000103 0.4830000103 0.4830000103 0.4830000103 0.4830000103 0.4830000103 0.4830000103 0.4964375198 0.5260000229 0.5555624962 0.5690000057 0.5690000057 0.5690000057 0.5690000057 0.5690000057 0.5690000057 0.5690000057 0.5690000057 0.5690000057 0.5690000057 0.5690000057 0.5690000057 0.5690000057 0.5690000057 0.5690000057 0.5690000057 0.5690000057 0.5653046966 0.5555624962 0.5417890549 0.5260000229 0.5102109313 0.4964375198 0.4866953194 0.4830000103 0.4830000103 0.4830000103 0.4830000103 0.4830000103 0.4830000103 0.4830000103 0.4830000103 0.4830000103 0.4830000103 0.4830000103 0.4830000103 0.4830000103 0.4695625007 0.4400000274 0.4104375243 0.3970000148 0.3970000148 0.3970000148 0.3970000148 0.3970000148 0.3970000148 0.3970000148 0.3970000148 0.3970000148 0.3970000148 0.3970000148 0.3970000148 0.3970000148 0.3970000148 0.3970000148 0.3970000148 0.3970000148 0.3970000148 0.3970000148 0.3970000148 0.3970000148 0.3970000148 0.3970000148 0.3970000148 0.3970000148 0.3970000148 0.3970000148 0.3970000148 0.3970000148 0.3970000148 0.3970000148 0.3970000148 0.3970000148 0.4104375243 0.4400000274 0.4695625007 0.4830000103 0.4830000103 0.4830000103 0.4830000103 0.4830000103 0.4830000103 0.4830000103 0.4830000103 0.4830000103 0.4830000103 0.4830000103 0.4830000103 0.4830000103 0.4830000103 0.4830000103 0.4830000103 0.4830000103 0.4830000103 0.4830000103 0.4830000103 0.4830000103} green {curve R 0.6589999795 x50 0.6542205811 0.6484853029 0.6414804459 0.6340000033 0.6249843836 0.6147499681 0.6041406393 0.5939999819 0.5844687223 0.575124979 0.5659687519 0.5569999814 0.5484530926 0.5402500033 0.5319218636 0.5230000019 0.5131718516 0.5027499795 0.4922031164 0.4819999933 0.4722187519 0.4626249969 0.4532187581 0.4440000057 0.4351093769 0.4265000224 0.4178906381 0.4090000093 0.3997343779 0.3902499974 0.380640626 0.3709999919 0.3614374995 0.3518749774 0.3421249986 0.3319999874 0.321398437 0.3104375005 0.2992577851 0.2879999876 0.2764999866 0.2647500038 0.2531249821 0.2419999987 0.2312265635 0.2206875086 0.2108047009 0.202000007 0.1947187632 0.1886250079 0.1829687506 0.1770000011 0.1693515629 0.1608124971 0.1538671851 0.1509999931 0.1509999931 0.1509999931 0.1509999931 0.1509999931 0.1527187377 0.1564999968 0.1602812558 0.1620000005 0.1620000005 0.1620000005 0.1620000005 0.1620000005 0.1612187475 0.1595000029 0.1577812582 0.1570000052 0.1573124975 0.1579999924 0.1586875021 0.1589999944 0.1575781256 0.1543750018 0.1509843767 0.1490000039 0.1485625058 0.1484999955 0.1484375 0.1480000019 0.1467812508 0.1449999958 0.1432187557 0.1420000046 0.1415625066 0.1414999962 0.1414375007 0.1410000026 0.1397656202 0.1378750056 0.1357968748 0.1340000033 0.1323750019 0.1307500005 0.1295000017 0.1289999932 0.130031243 0.1324999928 0.1354687512 0.1379999965 0.1402187496 0.1424999982 0.1442812532 0.1449999958 0.1449999958 0.1449999958 0.1449999958 0.1449999958 0.1464921832 0.1503124982 0.1554765552 0.1609999985 0.1673984379 0.1749375015 0.1822578013 0.1879999936 0.1906718612 0.1913749874 0.1926406175 0.1969999969 0.2064140588 0.2199375033 0.2357421964 0.2520000041 0.2688750029 0.2871249914 0.3058125079 0.324000001 0.3417187631 0.359375 0.3765937686 0.3930000067 0.4082968831 0.4227499962 0.4368281364 0.451000005 0.4659531415 0.4812500179 0.4956718981 0.5080000162 0.5169296861 0.5234375 0.5297265649 0.5379999876 0.5491171479 0.5618124604 0.5751015544 0.5879999995 0.6009531021 0.6142500043 0.6266719103 0.6370000243 0.6457066536 0.6532088518 0.6575522423 0.6589999795} blue {curve R 0.3160000145 x50 0.324739933 0.3330312669 0.3418398499 0.351000011 0.3607422113 0.3709374964 0.3811640739 0.3910000026 0.4003046751 0.4093124866 0.4181640446 0.4269999862 0.4359609187 0.4449374974 0.453695327 0.4620000124 0.4697890878 0.4771875143 0.4842422009 0.4909999967 0.4971874952 0.5028749704 0.5086249709 0.5149999857 0.5227031112 0.53125 0.5394218564 0.5460000038 0.5502656102 0.5530000329 0.5552343726 0.5580000281 0.561632812 0.5655625463 0.5694609284 0.5730000138 0.5765469074 0.5801249743 0.5828906298 0.5839999914 0.5838750005 0.5830000043 0.5806249976 0.5759999752 0.5682968497 0.5576249957 0.5446406007 0.5299999714 0.5128515363 0.4931874871 0.4729296863 0.4539999962 0.4368359447 0.420437485 0.4045703113 0.3889999986 0.3731718659 0.3573749959 0.3426406384 0.3300000131 0.3193906248 0.310375005 0.3034218848 0.298999995 0.2972500026 0.2969999909 0.2967499793 0.2949999869 0.2899531126 0.2821249962 0.2734843791 0.2660000026 0.2602812648 0.2552500069 0.2503437698 0.2450000048 0.2380000055 0.2300000042 0.2232500017 0.2199999988 0.2195625007 0.2194999903 0.2194374949 0.2189999968 0.2183593661 0.2176249921 0.2163281292 0.2140000015 0.2101874948 0.205249995 0.1999374926 0.1949999928 0.1904453039 0.185937494 0.1817109436 0.1780000031 0.1754062474 0.1736250073 0.1715312451 0.1679999977 0.1620937437 0.1546249986 0.147093758 0.1410000026 0.1372031271 0.1347499937 0.1324218661 0.1289999932 0.1237656176 0.1174999923 0.1112343743 0.1059999987 0.1021796837 0.09918750077 0.09660156071 0.09399999678 0.09089062363 0.0876249969 0.0850468725 0.08399999887 0.08524999768 0.0882499963 0.09187500179 0.09499999881 0.09706249833 0.09875000268 0.1008125022 0.1040000021 0.1084140688 0.1136875004 0.1198671907 0.1270000041 0.1355390698 0.145312503 0.1554296911 0.1650000066 0.1739453226 0.1826875061 0.1910859346 0.199000001 0.2061250061 0.2126249969 0.2190624923 0.2259999961 0.2338827997 0.2423124909 0.2505859137 0.2579999864 0.2642968595 0.26987499 0.2750156224 0.2800000012 0.2847812474 0.2892500162 0.2935937643 0.2980000079 0.3025000095 0.3070000112 0.3115000129 0.3160000145} alpha {}} name ColorLookup5 label "Pointer's Gamut Boundary Yxy\ninterpolated: incr 50 - 0 to 8000" xpos -1360 ypos -775 } Multiply { channels rgb value {0.31 1 1 1} name Multiply2 label "dim boundary" xpos -1360 ypos -725 } Colorspace { colorspace_in CIE-Yxy primary_in "Adobe (1998)" colorspace_out CIE-XYZ name Colorspace5 label "\[value colorspace_in] -> \[value colorspace_out]" xpos -1360 ypos -688 } Fill { output alpha name Fill4 xpos -1360 ypos -639 } BlackOutside { name BlackOutside1 xpos -1360 ypos -562 } Position { translate {6 {ReformatBox4.box_width-input.width}} name Position1 xpos -1360 ypos -538 } Dot { name Dot24 xpos -1326 ypos -486 } push $N49ff8780 Reformat { type "to box" box_width {{parent.Reformat1.box_width}} box_height 100 box_fixed true name ReformatBox2 xpos -1140 ypos -994 } set Ncfdfd7b0 [stack 0] Expression { temp_name0 n temp_expr0 input.width/8 channel0 {rgba.red rgba.green rgba.blue none} expr0 x/width*(1-y/height) channel3 alpha expr3 1 name Expression1 xpos -1140 ypos -898 } set Nd8e3b590 [stack 0] Dot { name Dot8 xpos -996 ypos -894 } ColorLookup { lut {master {curve L 0 s0 t0.9499999881 C k x0.308139503 1 s0} red {} green {} blue {} alpha {}} name ColorLookup1 xpos -1030 ypos -849 } Dot { name Dot14 xpos -996 ypos -750 } push $Nd8e3b590 Multiply { channels rgb value 269 name Multiply5 label "\[value value]" xpos -1140 ypos -856 } ColorLookup { lut {master {} red {curve C 1.8783474 1.85965741 1.8410753 1.82260251 1.80424976 1.78602886 1.76794314 1.75000143 1.73221421 1.71458244 1.69711792 1.67982578 1.66271067 1.6457777 1.62903571 1.6124835 1.59613538 1.57998943 1.56404996 1.54832447 1.5328095 1.51751649 1.50244594 1.48759735 1.47297573 1.45858264 1.44442391 1.43049574 1.41680288 1.40334678 1.39012623 1.37714779 1.36440396 1.35190022 1.33963728 1.32761216 1.31582856 1.30428183 1.29297352 1.28190565 1.27107596 1.2604804 1.25012183 1.23999798 1.23010659 1.22044563 1.21101499 1.20181489 1.19284034 1.18408906 1.17556167 1.16725397 1.15916491 1.15129638 1.14363372 1.13618886 1.12895167 1.12192106 1.11509454 1.10846853 1.10204577 1.09580922 1.08977199 1.08392429 1.07826447 1.07278681 1.06749392 1.06237841 1.05743873 1.05267084 1.04807138 1.04364109 1.03937256 1.03526449 1.03131545 1.02751946 1.02387333 1.02037668 1.01702523 1.01381445 1.01074362 1.00780725 1.00500631 1.00233305 0.99978602 0.99736285 0.9950608 0.99287677 0.99080539 0.98884678 0.98699367 0.9852494 0.98361033 0.98206747 0.98062134 0.97926998 0.97800934 0.97683728 0.97575116 0.97474778 0.97382426 0.97297859 0.97220623 0.97150886 0.97087657 0.97031689 0.96981871 0.96938527 0.96900952 0.96869147 0.96842706 0.96821606 0.96805781 0.96794283 0.96787858 0.96785843 0.96787864 0.96793604 0.96803701 0.96817231 0.96833968 0.96854311 0.96877253 0.96903455 0.96932232 0.96963543 0.96997368 0.97033387 0.97071254 0.9711163 0.97153723 0.97197378 0.97242606 0.97289121 0.97337079 0.97386622 0.97437072 0.97488332 0.97540969 0.97594237 0.97647977 0.97702706 0.97757769 0.97813445 0.97869468 0.97925854 0.97982538 0.98039114 0.98096472 0.98153675 0.98210776 0.98267955 0.98325121 0.98382008 0.98438704 0.9849571 0.98552132 0.98608243 0.98664182 0.98719966 0.98775077 0.98829895 0.98884273 0.98938417 0.98991877 0.9904511 0.99097681 0.99149919 0.99201453 0.99252397 0.99303031 0.99353105 0.99402624 0.99451613 0.99499857 0.99547589 0.99594522 0.99641174 0.99687338 0.99732745 0.99777603 0.9982177 0.99865389 0.999084 0.99950838 0.99992663 1.00033772 1.00074494 1.00114489 1.00153947 1.00192833 1.00231075 1.00268865 1.00305855 1.00342607 1.00378489 1.00413895 1.00448751 1.00483036 1.00517035 1.00550389 1.00583148 1.00615203 1.00646758 1.00678015 1.00708604 1.00738645 1.00768471 1.00797844 1.0082655 1.00854778 1.00882483 1.00909901 1.00936711 1.00963116 1.00989032 1.0101465 1.01039672 1.01064491 1.01088691 1.0111258 1.01135957 1.01158977 1.01181614 1.01203847 1.01225793 1.01247287 1.01268291 1.01289058 1.01309609 1.01329684 1.01349473 1.0136888 1.0138787 1.01406395 1.01424909 1.01442885 1.01460576 1.01478052 1.01495218 1.01512218 1.01528883 1.01545072 1.01561022 1.01576698 1.01592219 1.01607502 1.01622343 1.01636875 1.0165143 1.01665616 1.01679492 1.0169313 1.01706588 1.01719737 1.01732695 1.01745498 1.01757956 1.01770294 1.01782393 1.01794255 1.0180583 1.01817465 1.01828551 1.01839495 1.01850486 1.01861191 1.01871693 1.01882088 1.01891339} green {curve C 1} blue {curve C 0.00879261 0.00962762 0.010532 0.01151017 0.01256675 0.01370643 0.01493413 0.01625487 0.01767381 0.01919618 0.02082733 0.02257277 0.02443803 0.02642871 0.02855051 0.03080913 0.0332104 0.0357601 0.03846392 0.04132775 0.04435719 0.04755813 0.05093599 0.05449668 0.0582453 0.0621875 0.06632853 0.07067341 0.07522713 0.07999477 0.08498063 0.09018957 0.09562518 0.10129225 0.10719412 0.11333443 0.11971687 0.12634411 0.133219 0.14034435 0.14772213 0.15535444 0.16324303 0.17138906 0.179794 0.18845794 0.197382 0.20656651 0.21601067 0.22571453 0.23567709 0.24589771 0.25637382 0.26710594 0.2780903 0.28932518 0.30080822 0.3125369 0.32450783 0.33671761 0.34916404 0.36183971 0.37474373 0.38787127 0.40121818 0.41477671 0.42854655 0.44251823 0.45668846 0.47105014 0.48559928 0.50033116 0.5152359 0.5303098 0.5455451 0.56093836 0.5764783 0.59215891 0.60797763 0.62392306 0.63999057 0.65616876 0.6724565 0.68884456 0.70532417 0.72188419 0.73852479 0.7552371 0.77200818 0.78883314 0.80570388 0.82261622 0.83956301 0.8565321 0.87351894 0.89051074 0.90751225 0.92450547 0.94148719 0.95845115 0.97538745 0.99229181 1.00915313 1.02597356 1.04273522 1.05944169 1.07608175 1.09265125 1.10914159 1.12555146 1.14187002 1.15809321 1.1742171 1.190238 1.20614767 1.22194457 1.23762202 1.2531724 1.26859927 1.28389311 1.29905295 1.31407428 1.32895291 1.34368753 1.35827363 1.3727088 1.38699389 1.40111876 1.41508293 1.42889357 1.44254065 1.45602405 1.46934104 1.48249614 1.49548101 1.50830269 1.5209527 1.53343177 1.54574537 1.5578897 1.56985986 1.5816654 1.59329891 1.60476208 1.61605716 1.62718153 1.63813758 1.64892519 1.65955138 1.67000985 1.68030369 1.69043732 1.70040607 1.71021223 1.71985734 1.72934508 1.73867714 1.74785423 1.75688136 1.76575518 1.77447391 1.78304338 1.79146802 1.79975164 1.80788386 1.81587982 1.82373333 1.83144975 1.83902776 1.84647095 1.85378456 1.86096811 1.86802399 1.87495112 1.88175035 1.88842535 1.89497983 1.90141833 1.90774179 1.91394711 1.92004013 1.92602086 1.93188739 1.93765306 1.94330883 1.94886208 1.95430994 1.95965815 1.96490622 1.97005856 1.97511387 1.98007631 1.98494554 1.98972344 1.99441445 1.99901712 2.00353193 2.00796437 2.01231384 2.01658392 2.02076721 2.02487659 2.02890825 2.03286695 2.03675175 2.04056406 2.04430199 2.04797506 2.05157685 2.05511236 2.0585804 2.06198287 2.06532407 2.06860161 2.07181907 2.07497644 2.07807779 2.0811162 2.08409977 2.08702946 2.08990335 2.09272337 2.09549189 2.0982089 2.10087585 2.10349345 2.10606146 2.1085825 2.11105394 2.11348104 2.11586332 2.11820364 2.12050176 2.12275648 2.12496805 2.127141 2.12927723 2.13136625 2.13341999 2.13543844 2.13741732 2.13936305 2.1412704 2.1431427 2.14498401 2.14678812 2.14856291 2.1503005 2.15200949 2.15368938 2.15533352 2.15695238 2.15853977 2.16009951 2.16162968 2.16313291 2.16460824 2.16605687 2.16747928 2.16887903 2.17024994 2.1715951 2.17291784 2.17421341 2.17548871 2.17674041 2.17797112 2.17918396 2.18036819 2.18143296} alpha {}} name ColorLookup3 label "Planckian Locus 0-269" xpos -1140 ypos -808 } Multiply { inputs 1+1 channels rgb value 0 maskChannelMask rgba.red invert_mask true name Multiply3 label dim xpos -1140 ypos -760 } BlackOutside { name BlackOutside6 xpos -1140 ypos -706 } Position { translate {6 {parent.Position2.translate.y-input.height}} name Position8 xpos -1140 ypos -682 } Dot { name Dot28 xpos -1106 ypos -654 } push $N49ff3920 Dot { name Dot4 xpos -886 ypos -1086 } set N5cca67b0 [stack 0] Rectangle { replace true area {0 0 6 {height}} name Rectangle1 xpos -810 ypos -1089 } BlackOutside { name BlackOutside5 xpos -810 ypos -1041 } push $N5cca67b0 Radial { inputs 1+1 replace true area {-5422 -3542 7470 5590} softness 0 ramp linear color {0.0719 0.02604 0.0001 1} p1 {0 0} color0 {0.039378 0.001097 0.188331 1} p0 {0 2048} name Radial1 xpos -920 ypos -1041 } Dot { name Dot9 xpos -886 ypos -894 } push $N578fe2b0 Gamma { channels rgba value 0.5 name Gamma2 xpos -700 ypos -1120 } Expression { temp_name0 start temp_expr0 360 temp_name1 end temp_expr1 830 channel0 {rgba.red rgba.green rgba.blue none} expr0 r*(end-start)+start channel1 none channel2 none expr3 1 name Expression2 label "360nm to 830nm" xpos -700 ypos -1096 } ColorLookup { lut {master {} red {curve x360 0.0001299 C 0.00014585 0.0001638 0.000184 0.00020669 0.0002321 0.00026073 0.00029307 0.00032939 0.00036991 0.0004149 0.00046416 0.00051899 0.00058185 0.00065523 0.0007416 0.00084503 0.00096453 0.00109495 0.00123115 0.001368 0.00150205 0.00164233 0.00180238 0.00199576 0.002236 0.00253539 0.0028926 0.00330083 0.00375324 0.004243 0.00476239 0.00533005 0.00597871 0.00674112 0.00765 0.00875137 0.01002888 0.0114217 0.01286901 0.01431 0.01570443 0.01714744 0.01878122 0.02074801 0.02319 0.02620736 0.02978248 0.03388092 0.03846824 0.04351 0.0489956 0.0550226 0.0617188 0.069212 0.07763 0.08695811 0.09717672 0.1084063 0.1207672 0.13438 0.1493582 0.16539571 0.1819831 0.19861101 0.21477 0.23018681 0.24487969 0.25877729 0.27180791 0.28389999 0.29494381 0.3048965 0.31378731 0.32164541 0.3285 0.3343513 0.33921009 0.34312129 0.3461296 0.34828001 0.3495999 0.3501474 0.35001299 0.349287 0.34806001 0.34637329 0.34426239 0.3418088 0.3390941 0.3362 0.33319771 0.33004111 0.32663569 0.32288679 0.31869999 0.3140251 0.30888399 0.3032904 0.2972579 0.29080001 0.28397009 0.27672139 0.2689178 0.26042271 0.2511 0.2408475 0.2298512 0.2184072 0.2068115 0.19536 0.18421359 0.1733273 0.16268811 0.1522833 0.14210001 0.1321786 0.1225696 0.1132752 0.1042979 0.09564 0.08729955 0.07930804 0.07171776 0.06458099 0.05795001 0.05186211 0.04628152 0.04115088 0.03641283 0.03201 0.0279172 0.0241444 0.020687 0.0175404 0.0147 0.01216179 0.00991996 0.00796724 0.00629635 0.0049 0.00377717 0.00294532 0.00242488 0.00223629 0.0024 0.00292552 0.00383656 0.00517484 0.00698208 0.0093 0.01214949 0.01553588 0.01947752 0.02399277 0.0291 0.03481485 0.04112016 0.04798504 0.05537861 0.06327 0.07163501 0.08046224 0.08973996 0.09945645 0.1096 0.1201674 0.1311145 0.1423679 0.15385421 0.1655 0.17725711 0.18914001 0.2011694 0.21336579 0.2257499 0.2383209 0.2510668 0.26399219 0.2771017 0.2904 0.30389121 0.31757259 0.33143839 0.3454828 0.35969999 0.37408391 0.3886396 0.4033784 0.41831151 0.43344989 0.44879529 0.46433601 0.480064 0.49597129 0.51205009 0.52829587 0.54469162 0.56120938 0.57782149 0.59450001 0.6112209 0.62797582 0.64476019 0.66156971 0.67839998 0.69523919 0.7120586 0.72882837 0.7455188 0.76209998 0.77854317 0.79482561 0.81092638 0.82682478 0.84249997 0.85793251 0.87308162 0.88789439 0.90231812 0.9163 0.9297995 0.94279838 0.95527762 0.96721792 0.97860003 0.9893856 0.99954879 1.00908923 1.01800644 1.02629995 1.03398275 1.04098594 1.04718804 1.05246675 1.05669999 1.05979443 1.06179917 1.06280684 1.0629096 1.06219995 1.06073523 1.05844355 1.05522442 1.05097675 1.04560006 1.03903687 1.03136074 1.02266622 1.0130477 1.00259995 0.99136752 0.97933137 0.96649158 0.9528479 0.93839997 0.92319399 0.90724403 0.89050198 0.87291998 0.85444993 0.83508402 0.814946 0.794186 0.77295399 0.75139999 0.72958362 0.70758879 0.68560219 0.66381037 0.64240003 0.62151492 0.6011138 0.58110517 0.56139767 0.54189998 0.52259952 0.50354642 0.4847436 0.46619391 0.4479 0.42986131 0.41209799 0.39464399 0.37753329 0.3608 0.34445629 0.32851681 0.31301919 0.29800111 0.28349999 0.26954481 0.25611839 0.2431896 0.2307272 0.21870001 0.2070971 0.19592319 0.1851708 0.1748323 0.1649 0.1553667 0.14623 0.13749 0.1291467 0.1212 0.1136397 0.106465 0.09969044 0.09333061 0.0874 0.08190096 0.07680428 0.07207712 0.06768664 0.0636 0.05980685 0.05628216 0.05297104 0.04981861 0.04677 0.04378405 0.04087536 0.03807264 0.03540461 0.0329 0.03056419 0.02838056 0.02634484 0.02445275 0.0227 0.02108429 0.01959988 0.01823732 0.01698717 0.01584 0.01479064 0.01383132 0.01294868 0.0121292 0.01135916 0.01062935 0.00993885 0.00928842 0.00867885 0.00811092 0.00758239 0.00708875 0.00662731 0.00619541 0.00579035 0.00540983 0.00505258 0.00471751 0.00440351 0.00410946 0.00383391 0.00357575 0.00333434 0.00310907 0.00289933 0.00270435 0.00252302 0.00235417 0.00219662 0.00204919 0.00191096 0.00178144 0.00166011 0.00154646 0.00143997 0.00134004 0.00124628 0.00115847 0.00107643 0.00099995 0.00092874 0.00086243 0.00080075 0.0007434 0.00069008 0.00064052 0.0005945 0.00055186 0.00051243 0.00047602 0.00044245 0.00041151 0.00038298 0.00035665 0.0003323 0.00030976 0.00028889 0.00026954 0.00025157 0.00023483 0.00021917 0.00020453 0.00019084 0.00017807 0.00016615 0.00015502 0.00014462 0.00013491 0.00012585 0.00011741 0.00010955 0.00010222 9.539e-05 8.902e-05 8.308e-05 7.751e-05 7.231e-05 6.746e-05 6.293e-05 5.871e-05 5.477e-05 5.11e-05 4.768e-05 4.449e-05 4.151e-05 3.873e-05 3.614e-05 3.372e-05 3.146e-05 2.935e-05 2.738e-05 2.552e-05 2.379e-05 2.218e-05 2.067e-05 1.927e-05 1.797e-05 1.675e-05 1.562e-05 1.456e-05 1.357e-05 1.265e-05 1.18e-05 1.1e-05 1.025e-05 9.56e-06 8.91e-06 8.31e-06 7.75e-06 7.22e-06 6.73e-06 6.28e-06 5.85e-06 5.46e-06 5.09e-06 4.74e-06 4.42e-06 4.12e-06 3.84e-06 3.58e-06 3.34e-06 3.11e-06 2.9e-06 2.71e-06 2.52e-06 2.35e-06 2.19e-06 2.04e-06 1.91e-06 1.78e-06 1.66e-06 1.54e-06 1.44e-06 1.34e-06 S 1.25e-06} green {curve x360 3.92e-06 C 4.39e-06 4.93e-06 5.53e-06 6.21e-06 6.97e-06 7.81e-06 8.77e-06 9.84e-06 1.104e-05 1.239e-05 1.389e-05 1.556e-05 1.744e-05 1.958e-05 2.202e-05 2.484e-05 2.804e-05 3.153e-05 3.522e-05 3.9e-05 4.283e-05 4.691e-05 5.159e-05 5.718e-05 6.4e-05 7.234e-05 8.221e-05 9.351e-05 0.00010614 0.00012 0.00013498 0.00015149 0.00017021 0.00019182 0.000217 0.00024691 0.00028124 0.00031852 0.00035727 0.000396 0.00043371 0.00047302 0.00051788 0.00057222 0.00064 0.00072456 0.0008255 0.00094116 0.00106988 0.00121 0.00136209 0.00153075 0.00172037 0.00193532 0.00218 0.0024548 0.002764 0.0031178 0.0035264 0.004 0.00454624 0.00515932 0.00582928 0.00654616 0.0073 0.00808651 0.00890872 0.00976768 0.01066443 0.0116 0.01257317 0.01358272 0.01462968 0.01571509 0.01684 0.01800736 0.01921448 0.02045392 0.02171824 0.023 0.02429461 0.02561024 0.02695857 0.02835125 0.0298 0.03131083 0.03288368 0.03452112 0.03622571 0.038 0.03984667 0.041768 0.043766 0.04584267 0.048 0.05024368 0.05257304 0.05498056 0.05745872 0.06 0.06260197 0.06527752 0.06804208 0.07091109 0.0739 0.077016 0.0802664 0.0836668 0.0872328 0.09098 0.09491755 0.09904584 0.1033674 0.1078846 0.1126 0.117532 0.1226744 0.12799279 0.1334528 0.13902 0.1446764 0.1504693 0.15646189 0.1627177 0.1693 0.1762431 0.18355811 0.1912735 0.19941799 0.20802 0.2171199 0.2267345 0.2368571 0.2474812 0.2586 0.2701849 0.28229389 0.2950505 0.30857801 0.32300001 0.33840209 0.35468581 0.37169859 0.3892875 0.4073 0.42562991 0.44430959 0.4633944 0.48293951 0.50300002 0.52356929 0.54451197 0.56568998 0.58696532 0.60820001 0.6293456 0.65030682 0.67087519 0.69084239 0.70999998 0.72818518 0.74546361 0.76196939 0.7778368 0.79320002 0.80811042 0.82249618 0.83630681 0.8494916 0.86199999 0.87381083 0.88496238 0.89549363 0.90544319 0.91485012 0.92373478 0.93209243 0.93992257 0.94722521 0.954 0.9602561 0.96600741 0.97126061 0.97602248 0.98030001 0.98409241 0.98741817 0.99031281 0.99281162 0.99495012 0.99671078 0.99809831 0.99911201 0.99974817 1 0.99985671 0.99930459 0.99832553 0.99689871 0.995 0.9926005 0.98974258 0.98644441 0.98272407 0.97860003 0.97408372 0.96917123 0.96385682 0.95813489 0.95200002 0.94545043 0.93849921 0.93116277 0.92345762 0.91540003 0.90700638 0.89827722 0.8892048 0.8797816 0.87 0.85986131 0.849392 0.83862197 0.82758129 0.81629997 0.80479473 0.793082 0.781192 0.76915473 0.75700003 0.74475408 0.73242241 0.7200036 0.70749652 0.69489998 0.68221921 0.66947162 0.65667439 0.64384478 0.63099998 0.61815548 0.60531437 0.59247559 0.57963789 0.5668 0.5539611 0.54113722 0.5283528 0.51563227 0.50300002 0.4904688 0.47803041 0.46567759 0.4534032 0.44119999 0.42908001 0.417036 0.40503201 0.39303201 0.38100001 0.36891839 0.3568272 0.34477681 0.33281761 0.32100001 0.30933809 0.2978504 0.28659359 0.27562451 0.26499999 0.25476319 0.2448896 0.2353344 0.22605281 0.21699999 0.20816161 0.1995488 0.1911552 0.1829744 0.175 0.1672235 0.15964641 0.1522776 0.1451259 0.1382 0.1315003 0.1250248 0.1187792 0.1127691 0.107 0.1014762 0.09618864 0.09112296 0.08626485 0.0816 0.07712064 0.07282552 0.06871008 0.06476976 0.061 0.05739621 0.05395504 0.05067376 0.04754965 0.04458 0.04175872 0.03908496 0.03656384 0.03420048 0.032 0.02996261 0.02807664 0.02632936 0.02470805 0.0232 0.02180077 0.02050112 0.01928108 0.01812069 0.017 0.01590379 0.01483718 0.01381068 0.01283478 0.01192 0.01106831 0.01027339 0.00953331 0.00884616 0.00821 0.00762378 0.00708542 0.00659148 0.00613848 0.005723 0.00534306 0.0049958 0.0046764 0.00438007 0.004102 0.00383845 0.0035891 0.00335422 0.00313409 0.002929 0.00273814 0.00255988 0.00239324 0.00223728 0.002091 0.00195359 0.00182458 0.00170358 0.00159019 0.001484 0.0013845 0.00129127 0.00120409 0.00112274 0.001047 0.00097659 0.00091111 0.00085013 0.00079324 0.00074 0.00069008 0.00064331 0.0005995 0.00055845 0.00052 0.00048391 0.00045005 0.00041835 0.00038872 0.0003611 0.00033538 0.00031144 0.00028917 0.00026845 0.0002492 0.0002313 0.00021469 0.00019929 0.00018505 0.0001719 0.00015978 0.0001486 0.0001383 0.00012879 0.00012 0.00011186 0.00010432 9.734e-05 9.085e-05 8.48e-05 7.915e-05 7.386e-05 6.892e-05 6.43e-05 6e-05 5.598e-05 5.223e-05 4.872e-05 4.545e-05 4.24e-05 3.956e-05 3.692e-05 3.445e-05 3.215e-05 3e-05 2.799e-05 2.611e-05 2.436e-05 2.272e-05 2.12e-05 1.978e-05 1.845e-05 1.722e-05 1.606e-05 1.499e-05 1.399e-05 1.305e-05 1.218e-05 1.136e-05 1.06e-05 9.89e-06 9.22e-06 8.59e-06 8.01e-06 7.47e-06 6.96e-06 6.49e-06 6.05e-06 5.64e-06 5.26e-06 4.9e-06 4.57e-06 4.26e-06 3.97e-06 3.7e-06 3.45e-06 3.22e-06 3e-06 2.8e-06 2.61e-06 2.43e-06 2.27e-06 2.11e-06 1.97e-06 1.84e-06 1.71e-06 1.6e-06 1.49e-06 1.39e-06 1.29e-06 1.21e-06 1.12e-06 1.05e-06 9.8e-07 9.1e-07 8.5e-07 7.9e-07 7.4e-07 6.9e-07 6.4e-07 6e-07 5.6e-07 5.2e-07 4.8e-07 S 4.5e-07} blue {curve x360 0.0006061 C 0.00068088 0.00076515 0.00086001 0.00096659 0.001086 0.00122059 0.00137273 0.00154358 0.00173429 0.001946 0.00217778 0.00243581 0.00273195 0.00307806 0.003486 0.00397523 0.00454088 0.00515832 0.00580291 0.00645 0.00708322 0.00774549 0.00850115 0.00941454 0.01054999 0.0119658 0.01365587 0.01558805 0.01773015 0.02005001 0.02251136 0.02520288 0.02827972 0.03189704 0.03621 0.04143771 0.04750372 0.05411988 0.06099803 0.06785001 0.07448632 0.08136156 0.08915364 0.09854048 0.1102 0.1246133 0.1417017 0.16130351 0.1832568 0.20739999 0.23369209 0.26261139 0.29477459 0.33079851 0.37130001 0.4162091 0.4654642 0.51969481 0.5795303 0.64560002 0.71848381 0.79671329 0.87784588 0.95943898 1.0390501 1.11536729 1.18849707 1.25812328 1.32392955 1.38559997 1.44263518 1.49480355 1.54219031 1.58488071 1.62295997 1.65640485 1.68529594 1.70987451 1.73038209 1.74705994 1.76004458 1.76962328 1.77626371 1.78043342 1.78260004 1.78296816 1.78169978 1.77919817 1.7758671 1.77210998 1.76825893 1.76403904 1.7589438 1.75246632 1.74409997 1.73355949 1.7208581 1.70593691 1.68873715 1.66919994 1.64752865 1.62341273 1.59602225 1.56452799 1.52810001 1.4861114 1.43952155 1.38987994 1.33873618 1.28763998 1.23742235 1.18782425 1.13876104 1.09014797 1.04190004 0.99419761 0.94734728 0.90145308 0.8566193 0.81295007 0.77051729 0.7294448 0.68991357 0.65210491 0.61619997 0.58232862 0.55041617 0.52033758 0.49196729 0.46518001 0.4399246 0.41618359 0.39388219 0.3729459 0.35330001 0.33485779 0.31755209 0.30133751 0.28616861 0.27200001 0.25881711 0.2464838 0.2347718 0.2234533 0.2123 0.20116919 0.19011959 0.1792254 0.1685608 0.1582 0.1481383 0.1383758 0.1289942 0.1200751 0.1117 0.1039048 0.09666748 0.08998272 0.08384531 0.07824999 0.07320899 0.06867816 0.06456784 0.06078835 0.05725001 0.05390435 0.05074664 0.04775276 0.04489859 0.04216 0.03950728 0.03693564 0.03445836 0.03208872 0.02984 0.02771181 0.02569444 0.02378716 0.02198925 0.0203 0.01871805 0.01724036 0.01586364 0.01458461 0.0134 0.01230723 0.01130188 0.01037792 0.00952931 0.00875 0.0080352 0.0073816 0.0067854 0.0062428 0.00575 0.0053036 0.0048998 0.0045342 0.0042024 0.0039 0.0036232 0.0033706 0.0031414 0.0029348 0.00275 0.0025852 0.0024386 0.0023094 0.0021968 0.0021 0.00201773 0.0019482 0.0018898 0.00184093 0.0018 0.00176627 0.0017378 0.0017112 0.00168307 0.00165 0.00161013 0.0015644 0.0015136 0.00145853 0.0014 0.00133667 0.00127 0.001205 0.00114667 0.0011 0.0010688 0.0010494 0.0010356 0.0010212 0.001 0.00096864 0.00092992 0.00088688 0.00084256 0.0008 0.00076096 0.00072368 0.00068592 0.00064544 0.0006 0.00054787 0.0004916 0.0004354 0.00038347 0.00034 0.00030725 0.00028316 0.00026544 0.00025181 0.00024 0.00022955 0.00022064 0.00021196 0.00020219 0.00019 0.00017421 0.00015564 0.00013596 0.00011685 0.0001 8.613e-05 7.46e-05 6.5e-05 5.693e-05 5e-05 4.416e-05 3.948e-05 3.572e-05 3.264e-05 3e-05 2.765e-05 2.556e-05 2.364e-05 2.181e-05 2e-05 1.813e-05 1.62e-05 1.42e-05 1.213e-05 1e-05 7.73e-06 5.4e-06 3.2e-06 1.33e-06 0 0 0 0 0 0 0 0 S 0} alpha {}} name ColorLookup4 label "CIE 1931 2 Degree Standard Observer\n360nm to 830nm" xpos -700 ypos -1030 } Merge2 { inputs 2 bbox B name MergeLineOfPurples xpos -700 ypos -897 disable {{!parent.draw_line_of_purples}} } Fill { color {0 0 0 1} name Disable_SpectralLocus xpos -700 ypos -826 disable {{parent.draw_spectral_locus}} } Merge2 { inputs 2 bbox B name MergePlanckianLocus xpos -700 ypos -658 disable {{!parent.draw_planckian_locus}} } Merge2 { inputs 2 bbox B name MergePointerGamut xpos -700 ypos -489 disable {{!parent.draw_pointers_gamut}} } Merge2 { inputs 2 bbox B name MergePointerGamut_Samples xpos -700 ypos -417 disable {{!draw_pointers_samples}} } Merge2 { inputs 2 bbox B name MergeMacbeth xpos -700 ypos -273 disable {{!parent.draw_macbeth_chart}} } Merge2 { inputs 2 bbox B name MergeGamutGrid xpos -700 ypos -81 disable {{!parent.gamut_grid}} } Merge2 { inputs 2 bbox B name MergeGamutA xpos -700 ypos 255 disable {{!parent.gamut_a}} } Merge2 { inputs 2 bbox B name MergeGamutB xpos -700 ypos 279 disable {{!parent.gamut_b}} } Merge2 { inputs 2 bbox B name MergeGamutC xpos -700 ypos 303 disable {{!parent.gamut_c}} } Dot { name Dot2 label " " note_font "Helvetica Bold" note_font_size 24 note_font_color 0xa5a5a501 xpos -666 ypos 450 } set Nf044d580 [stack 0] Dot { name Dot5 label " " note_font "Helvetica Bold" note_font_size 24 note_font_color 0xa5a5a501 xpos -556 ypos 450 } Colorspace { colorspace_in CIE-XYZ primary_in "Adobe (1998)" colorspace_out CIE-Yxy name Colorspace6 label "\[value colorspace_in] -> \[value colorspace_out]" xpos -590 ypos 486 } Expression { expr0 r expr1 "4*g / ( -2*g + 12*b + 3)" expr2 "9*b / ( -2*g + 12*b + 3)" name Expression5 label "CIE Yxy to CIELuv" xpos -590 ypos 537 disable {{!parent.diagram}} } Dot { name Dot11 label " " note_font "Helvetica Bold" note_font_size 24 note_font_color 0xa5a5a501 xpos -556 ypos 618 } push $Nf044d580 ColorMatrix { matrix { {{parent.GamutToXYZ.ColorMatrix.matrix} {parent.GamutToXYZ.ColorMatrix.matrix} {parent.GamutToXYZ.ColorMatrix.matrix}} {{parent.GamutToXYZ.ColorMatrix.matrix} {parent.GamutToXYZ.ColorMatrix.matrix} {parent.GamutToXYZ.ColorMatrix.matrix}} {{parent.GamutToXYZ.ColorMatrix.matrix} {parent.GamutToXYZ.ColorMatrix.matrix} {parent.GamutToXYZ.ColorMatrix.matrix}} } invert true name ColorMatrix1 label "XYZ to working" xpos -700 ypos 488 disable {{!map_overlays_to_input_gamut}} } BlinkScript { inputs 2 KernelDescription "2 \"PlotChromaticity_grid\" iterate pixelWise b2e7b5f8a89bdb0629aa8cc2eae387ef3436f24cb0af642eeba41235874506c4 3 \"col\" Read Random \"Yxy\" Read Random \"dst\" Write Random 6 \"padding\" Float 1 AAAAAA== \"left_margin\" Float 1 AAAAAA== \"tolerance\" Float 1 AAAAAA== \"antialias\" Bool 1 AA== \"draw_axes\" Bool 1 AA== \"grid_color\" Float 4 AAAAAAAAAAAAAAAAAAAAAA== 6 \"padding\" 1 1 \"left_margin\" 1 1 \"tolerance\" 1 1 \"antialias\" 1 1 \"draw_axes\" 1 1 \"grid_color\" 4 1 2 \"outsize\" Float 1 1 AAAAAA== \"offset\" Float 1 1 AAAAAA==" kernelSource "kernel PlotChromaticity_grid : public ImageComputationKernel\n\{\n Image col;\n Image Yxy;\n Image dst;\n\nparam:\n float padding;\n float left_margin;\n float tolerance;\n bool antialias;\n bool draw_axes;\n float4 grid_color;\n\nlocal:\n float outsize;\n float offset;\n\n void init() \{\n // calculate output width and height and offset based on padding\n outsize = float(dst.bounds.height()/padding);\n // xy offset for margin on lower left corner\n offset = dst.bounds.height()*left_margin;\n \}\n\n float gaussian(float d, float a, float expv) \{\n return max(0.0f, exp(-a*d*d)-expv);\n \}\n\n float gaussian_filter(float x, float y, float r) \{\n // return gaussian weighted distance from origin (0, 0)\n // given coordinate (x, y) and radius r\n float a = 1.5f; // rate falloff\n float expv = exp(-a*r*r);\n return gaussian(x, a, expv) * gaussian(y, a, expv);\n \}\n\n void write_aa(float x, float y, float4 rgb) \{\n // skip black pixels\n if (rgb.x == 0.0f && rgb.y == 0.0f && rgb.z == 0.0f) return;\n \n // size of pixel neighborhood = n*2+1 by n*2+1\n int n = 2;\n\n // center of neighborhood\n int u0 = round(x);\n int v0 = round(y);\n\n // skip if center pixel weight is greater than tolerance\n if ( dst.bounds.inside(u0, v0)) \{\n if (dst(u0, v0, 3) >= tolerance) return;\n \}\n\n // loop over neighborhood\n for (int j = -n; j <= n; j++) \{\n int v = v0 + j;\n for (int i = -n; i <= n; i++) \{\n int u = u0 + i;\n if ( dst.bounds.inside(u, v)) \{\n // get filter weight for coord (u,v)\n float w = gaussian_filter(u-x, v-y, float(n));\n float4 c0 = dst(u, v); // existing color\n\n // merge current color sample over existing color sample\n for (int k=0; k<3; k++) \{\n dst(u, v, k) = rgb\[k]*w+c0\[k]*(1-w); \n \}\n\n // merge current weight over existing weight\n float w0 = dst(u, v, 3);\n dst(u, v, 3) = w+w0*(1-w);\n \}\n \}\n \}\n \}\n\n void draw_grid() \{\n // grid width in pixels. expresses a 0 to 1 range in CIE xy\n float grid_width = 1.0f * outsize + offset;\n // draw grid lines\n float i = offset;\n while (i <= grid_width && i > 0.0f) \{\n write_aa(offset, i, grid_color);\n write_aa(i, offset, grid_color);\n i += 1.0;\n \}\n // cross-hatching interval in pixels\n float hatch_interval = (grid_width - offset) * 0.1f;\n // cross-hatch length in pixels\n float hatch_width = outsize * 0.01f;\n i = offset;\n while (i <= grid_width) \{\n i += hatch_interval;\n float j = 0.0;\n while (j <= hatch_width/2) \{\n write_aa(offset+j, i, grid_color);\n write_aa(offset-j, i, grid_color);\n write_aa(i, offset+j, grid_color);\n write_aa(i, offset-j, grid_color);\n j += 1.0;\n \}\n \}\n \}\n\n void process(int2 pos) \{\n float4 rgba = col(pos.x, pos.y);\n \n // Get CIE xy position from Yxy input for current pixel\n float2 xy = float2(Yxy(pos.x, pos.y, 1), Yxy(pos.x, pos.y, 2));\n \n // Find output pixel coordinate for this CIE xy pixel value\n float2 out_coord = float2(xy.x * outsize + offset, xy.y * outsize + offset);\n\n // For each RGB component, write value from color input to output coordinate\n if (antialias) \{\n write_aa(out_coord.x, out_coord.y, rgba);\n \} else \{\n // For each RGB component, write value from color input to output coordinate\n int2 p = int2(round(out_coord.x), round(out_coord.y));\n if (dst.bounds.inside(p.x, p.y)) \{\n for (int k=0; k<3; k++) \{\n dst(p.x, p.y, k) = col(pos.x, pos.y, k);\n \}\n dst(p.x, p.y, 3) = 1.0f;\n \}\n \}\n\n // draw CIExy coordinate system axes\n if (draw_axes && pos.x == 0 && pos.y == 0) \{\n draw_grid();\n \}\n \}\n\};" useGPUIfAvailable {{parent.use_gpu}} rebuild "" PlotChromaticity_grid_padding {{parent.PlotChromaticities.PlotChromaticity_padding}} PlotChromaticity_grid_left_margin {{parent.PlotChromaticities.PlotChromaticity_left_margin}} PlotChromaticity_grid_tolerance 0.8 PlotChromaticity_grid_antialias true PlotChromaticity_grid_draw_axes {{parent.coordinate_system}} PlotChromaticity_grid_grid_color {0.15 0 0.005 1} format "2048 2048 0 0 2048 2048 1 square_2K" rebuild_finalise "" name PlotInput2 xpos -700 ypos 608 } FrameHold { first_frame 1 name FrameHold1 xpos -700 ypos 680 cached true } Dot { name Dot3 label " " note_font "Helvetica Bold" note_font_size 24 note_font_color 0xa5a5a501 xpos -666 ypos 762 } Input { inputs 0 name Input xpos 620 ypos -1426 } AddChannels { name AddChannels1 xpos 620 ypos -1360 } Reformat { type "to box" box_width {{parent.resolution}} box_height {{box_width}} box_fixed true box_pixel_aspect {{input.pixel_aspect}} resize distort filter Impulse name OutputFormat xpos 620 ypos -1282 disable {{!parent.resample_input}} } Crop { box {0 0 {width} {height}} crop false name CropBBox xpos 620 ypos -1257 } Dot { name Dot7 label " " note_font "Helvetica Bold" note_font_size 24 note_font_color 0xa5a5a501 xpos 654 ypos 162 } set N53256990 [stack 0] Constant { inputs 0 channels rgb color {0 0 0 1} format "256 256 0 0 256 256 1 square_256" name Constant2 xpos 400 ypos 38 postage_stamp false } Reformat { type "to box" box_width {{parent.resolution}} box_height {{box_width}} box_fixed true box_pixel_aspect {{input.pixel_aspect}} resize distort filter Impulse name OutputFormat1 xpos 400 ypos 64 disable {{!parent.resample_input}} } Switch { inputs 2 which {{"\[exists parent.input0]"}} name Switch1 xpos 400 ypos 158 } Fill { output rgb color 0.18 name SampleColor xpos 290 ypos 158 } Crop { box {0 0 {width} {height}} crop false name Crop2 xpos 290 ypos 184 } Fill { output alpha name Fill3 xpos 290 ypos 224 } Dot { name Dot6 xpos 324 ypos 282 } set N3b3ad490 [stack 0] ColorMatrix { matrix { {{parent.GamutToXYZ.ColorMatrix.matrix} {parent.GamutToXYZ.ColorMatrix.matrix} {parent.GamutToXYZ.ColorMatrix.matrix}} {{parent.GamutToXYZ.ColorMatrix.matrix} {parent.GamutToXYZ.ColorMatrix.matrix} {parent.GamutToXYZ.ColorMatrix.matrix}} {{parent.GamutToXYZ.ColorMatrix.matrix} {parent.GamutToXYZ.ColorMatrix.matrix} {parent.GamutToXYZ.ColorMatrix.matrix}} } name ColorMatrix4 label "working to XYZ" xpos 180 ypos 272 } Colorspace { colorspace_in CIE-XYZ primary_in "Adobe (1998)" colorspace_out CIE-Yxy name Colorspace1 label "\[value colorspace_in] -> \[value colorspace_out]" xpos 180 ypos 320 } Expression { expr0 r expr1 "4*g / ( -2*g + 12*b + 3)" expr2 "9*b / ( -2*g + 12*b + 3)" name Expression6 label "CIE Yxy to CIELuv" xpos 180 ypos 368 disable {{!parent.diagram}} } push $N3b3ad490 BlinkScript { inputs 2 KernelDescription "2 \"PlotChromaticity_sample\" iterate pixelWise 20e14b615a937bac78c1a771cbdfd10cc7c5fb6c487f65d0bb2d6633e404b958 3 \"col\" Read Random \"Yxy\" Read Random \"dst\" Write Random 3 \"padding\" Float 1 AAAAAA== \"left_margin\" Float 1 AAAAAA== \"tolerance\" Float 1 AAAAAA== 3 \"padding\" 1 1 \"left_margin\" 1 1 \"tolerance\" 1 1 2 \"outsize\" Float 1 1 AAAAAA== \"offset\" Float 1 1 AAAAAA==" kernelSource "kernel PlotChromaticity_sample : public ImageComputationKernel\n\{\n Image col;\n Image Yxy;\n Image dst;\n\nparam:\n float padding;\n float left_margin;\n float tolerance;\n\nlocal:\n float outsize;\n float offset;\n\n void init() \{\n // calculate output width and height and offset based on padding\n outsize = float(dst.bounds.height()/padding);\n // xy offset for margin on lower left corner\n offset = dst.bounds.height()*left_margin;\n \}\n\n void process(int2 pos) \{\n // only process the first pixel\n if (pos.x > 0 && pos.y > 0) return;\n\n // Get CIE xy position from Yxy input for current pixel\n float2 xy = float2(Yxy(pos.x, pos.y, 1), Yxy(pos.x, pos.y, 2));\n \n // Find output pixel coordinate for this CIE xy pixel value\n float2 out_coord = float2(xy.x * outsize + offset, xy.y * outsize + offset);\n\n // For each RGB component, write value from color input to output coordinate\n int2 p = int2(round(out_coord.x), round(out_coord.y));\n if (dst.bounds.inside(p.x, p.y)) \{\n for (int k=0; k<3; k++) \{\n dst(p.x, p.y, k) = col(pos.x, pos.y, k);\n \}\n dst(p.x, p.y, 3) = 1.0f;\n \}\n \}\n\};" useGPUIfAvailable {{parent.use_gpu}} rebuild "" PlotChromaticity_sample_padding {{"parent.diagram ? parent.right_margin*0.8 : parent.right_margin"}} PlotChromaticity_sample_left_margin {{parent.left_margin}} PlotChromaticity_sample_tolerance 1 format "2048 2048 0 0 2048 2048 1 square_2K" rebuild_finalise "" name PlotChromaticities1 xpos 290 ypos 368 } Dot { name Dot22 xpos 324 ypos 450 } set N1b9ecd50 [stack 0] Dilate { channels rgba size {{Output.width/2048}} name Dilate1 label "\[value size]" xpos 290 ypos 488 } set N1b9f1b00 [stack 0] Dilate { channels rgba size {{Output.width/2048*2}} name Dilate2 label "\[value size]" xpos 180 ypos 488 } push $N1b9ecd50 Dot { name Dot21 xpos -6 ypos 450 } FilterErode { channels rgba size {{-Output.width/2048/5}} filter triangle name FilterErode1 label "\[value size]" xpos -40 ypos 489 } set N52f37b90 [stack 0] Dilate { channels rgba size {0 {parent.Dilate3.size.w}} name Dilate4 label "\[value size]" xpos -40 ypos 584 } push $N52f37b90 Dilate { channels rgba size {{Output.width*plus_size/100} 0} name Dilate3 label "\[value size]" xpos 70 ypos 488 addUserKnob {20 User} addUserKnob {7 plus_size R 0 4} plus_size 0.8 } Merge2 { inputs 2 operation screen bbox B name Merge9 xpos 70 ypos 591 } Merge2 { inputs 2 operation stencil bbox B name Merge10 xpos 180 ypos 591 } Group { name HueRotate xpos 180 ypos 639 } Input { inputs 0 name Input xpos -40 ypos -24 } Unpremult { name Unpremult1 xpos -40 ypos 15 } Colorspace { colorspace_out HSV name Colorspace1 xpos -40 ypos 72 } Add { channels {rgba.red -rgba.green -rgba.blue none} value 0.5 name Add1 xpos -40 ypos 111 } Fill { output {-rgba.red -rgba.green rgba.blue none} name Fill1 xpos -40 ypos 147 } Colorspace { colorspace_in HSV name Colorspace2 xpos -40 ypos 183 } Premult { name Premult1 xpos -40 ypos 231 } Output { name Output1 xpos -40 ypos 302 } end_group push $N1b9f1b00 Merge2 { inputs 2 bbox B name Merge8 xpos 290 ypos 638 } Dot { name Dot20 label " " note_font "Helvetica Bold" note_font_size 24 note_font_color 0xa5a5a501 xpos 324 ypos 690 } push $N53256990 Dot { name Dot1 label " " note_font "Helvetica Bold" note_font_size 24 note_font_color 0xa5a5a501 xpos 764 ypos 162 } Group { name GamutToXYZ label "\[if \{\[value invert]\} \{return \"XYZ to \[value gamut]\"\} else \{return \"\[value gamut] to XYZ\"\}]\n\n" xpos 730 ypos 247 addUserKnob {20 GamutToXYZ_tab l GamutToXYZ} addUserKnob {4 gamut t "Choose gamut" M {XYZ ACES ACEScg "Filmlight E-Gamut" Rec709 Rec2020 P3D60 P3D65 P3DCI "Arri AlexaWideGamut" REDDRAGONcolor REDDRAGONcolor2 REDcolor REDcolor2 REDcolor3 REDcolor4 REDWideGamutRGB "GoPro Protune Native" CanonCinemaGamut SonySGamut SonySGamut3Cine PanasonicVGamut "DJI D-Gamut" "Fujifilm F-Gamut" BMDFilmV1 BMD4kFilmV1 BMD4kFilmV3 BMD46kFilmV1 BMD46kFilmV3 BMDWideGamutV4 "AdobeRGB\t" AdobeWideGamutRGB ROMM RIMM ERIMM ProPhotoRGB RusselRGB SharpRGB AppleRGB BestRGB}} gamut ACEScg addUserKnob {6 invert +STARTLINE} addUserKnob {26 ""} addUserKnob {26 chromaticity_coordinates_label l " " T "Chromaticity Coordinates"} addUserKnob {41 rxy T ColorMatrix.rxy} addUserKnob {41 gxy T ColorMatrix.gxy} addUserKnob {41 bxy T ColorMatrix.bxy} addUserKnob {41 wxy T ColorMatrix.wxy} addUserKnob {41 matrix T ColorMatrix.matrix} } Input { inputs 0 name Input xpos -40 ypos -10 } ColorMatrix { matrix { {{curve(which) 1 0.9525524378 0.6624541879 0.7053968906 0.4123907983 0.6369580626 0.5049495697 0.4865709841 0.4451698363 0.6380076408 0.5070186853 0.4462202489 0.4300414324 0.4581649601 0.4878340662 0.4517004192 0.7352752686 0.5022571683 0.7160496712 0.7064827085 0.5990839601 0.6796444654 0.6481720209 0.6369580626 0.6390493512 0.6141571999 0.3724023998 0.60689044 0.4017650783 0.6065810919 0.5766690373 0.7165006995 0.797760427 0.797760427 0.797760427 0.7976718545 0.7015837431 0.8156226277 0.4496616423 0.6318944097} {curve(which) 0 0 0.1340042055 0.1640413404 0.3575843275 0.1446169019 0.2646814585 0.2656676769 0.2771343887 0.2147038579 0.3587769568 0.3157556653 0.3700728714 0.3832037449 0.3432727158 0.3178463876 0.06860940903 0.2929667532 0.1296834797 0.1288010478 0.2489254922 0.1522114277 0.1940581352 0.1446169019 0.1578372866 0.2825684249 0.4324877858 0.2193847299 0.4560420811 0.2203479856 0.1855582297 0.1010205746 0.1351858526 0.1351858526 0.1351858526 0.1351878047 0.1554162204 0.04716260359 0.3162561059 0.2053879201} {curve(which) 0 9.367863095e-05 0.1561876982 0.08101774752 0.180480808 0.1688809693 0.1830150485 0.1982172877 0.1722826511 0.09774444997 0.0868505761 0.190669477 0.152531758 0.1112773567 0.1215386018 0.1830992699 0.1465712637 0.1552320272 0.1047228053 0.1151721701 0.1024464965 0.1186000481 0.108225815 0.1688809693 0.1516760886 0.05183707923 0.1436725408 0.124180764 0.09264881909 0.123526901 0.1882286519 0.1467743814 0.03134934977 0.03134934977 0.03134934977 0.03133957833 0.09979832917 0.1372147948 0.1845382005 0.1270133406}} {{curve(which) 0 0.3439664543 0.2722287476 0.2801307142 0.2126390189 0.2627002299 0.237623319 0.2289745659 0.209491685 0.2919537723 0.2207257152 0.1942579001 0.2022213936 0.1694435924 0.2289056629 0.2119505703 0.2866941094 0.1387997568 0.2612613738 0.2709796727 0.2150758505 0.2606855333 0.2830046713 0.2627002299 0.1743051857 0.2365771234 0.1383759677 0.1973138005 0.1721783578 0.2680045366 0.2973450124 0.258728236 0.2880711257 0.2880711257 0.2880711257 0.2880405784 0.3152042925 0.3790788651 0.2446159422 0.2276017666} {curve(which) 1 0.7281661034 0.6740817428 0.8202066422 0.7151686549 0.6779980659 0.6891706586 0.6917385459 0.7215952873 0.8238410354 0.839184761 0.7385566831 0.7585275769 0.8648257852 0.7808576822 0.7230190039 0.8429791331 0.910841465 0.8696421385 0.786606431 0.8850684762 0.7748944759 0.8131960034 0.6779980659 0.951146543 0.8896810412 0.911518693 0.943950057 0.8553914428 0.8326833844 0.6273635626 0.7246823311 0.7118432522 0.7118432522 0.7118432522 0.7118694782 0.6648360491 0.5769088268 0.6720442176 0.7383946776} {curve(which) 0 -0.07213255018 0.05368951708 -0.1003373638 0.07219231874 0.05930171534 0.07320601493 0.07928691059 0.06891305745 -0.1157948226 -0.05991046131 0.06718540192 0.03925102949 -0.03426937759 -0.009763340466 0.06503042579 -0.1296732277 -0.04964122549 -0.1309035122 -0.05758608505 -0.1001443192 -0.03558001295 -0.09620071948 0.05930171534 -0.1254517138 -0.1262581497 -0.04989464581 -0.1412638426 -0.02756982669 -0.1006879359 0.07529145479 0.01658944227 8.565396274e-05 8.565396274e-05 8.565396274e-05 8.991353388e-05 0.01995966583 0.04401229322 0.08333983272 0.0340035744}} {{curve(which) 0 -3.863927134e-08 -0.005574660841 -0.1037815213 0.01933082007 0 0 0 0 0.0027982709 -0.0544523783 -0.04792318866 -0.0176958181 -0.1061859056 -0.02100777067 -0.01945115253 -0.07968087494 0.07801423222 -0.009676366113 -0.009677864611 -0.03206583485 -0.009310216643 -0.01825834997 0 -0.11669112 -0.02325225808 -0.1602820009 -0.1427432895 -0.10720893 -0.02941203304 0.02703136392 -2.906408625e-08 -3.236030111e-08 -3.236030111e-08 -3.236030111e-08 0 0 -0.01229703799 0.02518104948 0} {curve(which) 0 0 0.004060741514 -0.07290724665 0.1191947311 0.0280726999 0.0449459292 0.04511339962 0.04706057906 -0.06703422964 -0.0003228379355 -0.0002844714036 0.08768811822 0.02554347552 0.01782695204 0.01650637016 -0.3473432064 -0.3148325086 -0.2364816219 0.004600019194 -0.02765839547 -0.004612449091 -0.08316776901 0.0280726999 -0.5518454909 -0.4897170365 -0.171635136 -0.4278847873 0.07809129357 -0.08659287542 0.07068887353 0.05121183768 1.2621717e-08 1.2621717e-08 1.2621717e-08 -1.262213711e-08 0.04317118227 0.01672476344 0.1411857158 0.01001892332} {curve(which) 1 1.008825183 1.010339141 1.265746474 0.950532198 1.060985088 0.9638792276 1.043944359 0.9073553085 1.153293729 1.063571215 1.057001948 0.9388025999 1.089437366 1.01197505 1.011739731 1.51608181 1.325875998 1.335215807 1.094135642 1.148782015 1.102980375 1.190483928 1.060985088 1.745692492 1.590125084 1.409072995 1.65968585 1.118175387 1.205062628 0.9913375378 0.7738927603 0.8251045942 0.8251045942 0.8251045942 0.8248898983 0.8782252669 0.9955722094 0.9226909876 0.8150856495}} } invert {{parent.invert}} name ColorMatrix label "RGB to XYZ" xpos -40 ypos 32 addUserKnob {20 Gamut} addUserKnob {3 which} which {{parent.gamut}} addUserKnob {12 rxy} rxy {{curve(which) 1 0.7347 0.713 0.8 0.64 0.708 0.68 0.68 0.68 0.684 0.7530442228 0.7530444911 0.6997470013 0.8786825105 0.7011810359 0.7011805919 0.780308 0.69848046 0.74 0.73 0.766 0.73 0.71 0.708 0.9173 0.7422 1.0625 0.9175 0.8608 0.7177 0.64 0.7347 0.7347 0.7347 0.7347 0.734699 0.69 0.6898 0.625 0.7351916376} {curve(which) 0 0.2653 0.293 0.3177 0.33 0.292 0.32 0.32 0.32 0.313 0.3278305767 0.3278310295 0.3290469303 0.3249640074 0.3290141556 0.3290136991 0.304253 0.19302645 0.27 0.28 0.275 0.28 0.31 0.292 0.2502 0.2859 0.3948 0.2983 0.3689 0.3171 0.33 0.2653 0.2653 0.2653 0.2653 0.265301 0.31 0.3206 0.34 0.2648083624}} addUserKnob {12 gxy} gxy {{curve(which) 0 0 0.165 0.18 0.3 0.17 0.265 0.265 0.265 0.221 0.2995702285 0.2995704905 0.304264039 0.3008887144 0.3006003047 0.3006003955 0.121595 0.32955538 0.17 0.14 0.225 0.165 0.21 0.17 0.2833 0.414 0.3689 0.2983 0.3282 0.228 0.21 0.1152 0.1596 0.1596 0.1596 0.159597 0.18 0.0736 0.28 0.2153361345} {curve(which) 1 1 0.83 0.9 0.6 0.797 0.69 0.69 0.69 0.848 0.700699322 0.7006994156 0.6236411451 0.6790547558 0.6837888343 0.6837888243 1.493994 1.02459662 1.14 0.855 0.8 0.84 0.88 0.797 1.7072 1.3035 0.7775 1.2835 0.6156 0.8616 0.71 0.8264 0.8404 0.8404 0.8404 0.840403 0.77 0.9003 0.595 0.7741596639}} addUserKnob {12 bxy} bxy {{curve(which) 0 0.0001 0.128 0.065 0.15 0.131 0.15 0.15 0.15 0.0861 0.07964206674 0.1450115843 0.1349139613 0.09539869461 0.1081544556 0.1453319462 0.095612 0.10844263 0.08 0.1 0.089 0.1 0.09 0.131 0.0856 0.0342 0.0956 0.0756 0.0783 0.1006 0.15 0.1566 0.0366 0.0366 0.0366 0.036598 0.1 0.1166 0.155 0.1301229508} {curve(which) 0 -0.077 0.044 -0.0805 0.06 0.046 0.06 0.06 0.06 -0.102 -0.05493795109 0.05109712509 0.03471744128 -0.02937932683 -0.008688175787 0.05161680362 -0.084589 -0.03467857 -0.1 -0.05 -0.087 -0.03 -0.08 0.046 -0.0708 -0.0833 -0.0332 -0.086 -0.0233 -0.082 0.06 0.0177 0.0001 0.0001 0.0001 0.000105 0.02 0.0374 0.07 0.03483606557}} addUserKnob {12 wxy} wxy {{curve(which) 0.33333333 0.32168 0.32168 0.3127 0.3127 0.3127 0.32168 0.3127 0.314 0.3127 0.3216831877 0.3216832104 0.3216832894 0.3216832894 0.3216832104 0.3216832894 0.3127 0.3127 0.3127 0.3127 0.3127 0.3127 0.3127 0.3127 0.3135 0.3135 0.3135 0.3127 0.3127 0.3127 0.3127 0.3457 0.3457 0.3457 0.3457 0.345704 0.33243 0.33333333 0.3127 0.3457} {curve(which) 0.33333333 0.33767 0.33767 0.329 0.329 0.329 0.33767 0.329 0.351 0.329 0.337673316 0.3376736101 0.3376734472 0.3376734472 0.3376736101 0.3376734472 0.329 0.329 0.329 0.329 0.329 0.329 0.329 0.329 0.3305 0.3305 0.3305 0.329 0.329 0.329 0.329 0.3585 0.3585 0.3585 0.3585 0.35854 0.34744 0.33333333 0.329 0.3585}} } Output { name Output xpos -40 ypos 86 } end_group Colorspace { colorspace_in CIE-XYZ primary_in "Adobe (1998)" colorspace_out CIE-Yxy name Colorspace2 label "\[value colorspace_in] -> \[value colorspace_out]" xpos 730 ypos 296 } Expression { expr0 r expr1 "4*g / ( -2*g + 12*b + 3)" expr2 "9*b / ( -2*g + 12*b + 3)" name Expression4 label "CIE Yxy to CIELuv" xpos 730 ypos 344 disable {{!parent.diagram}} } Dot { name Dot13 label " Pos" note_font "Helvetica Bold" note_font_size 24 note_font_color 0xa5a5a501 xpos 764 ypos 546 } push $N53256990 Dot { name Dot16 label " Col" note_font "Helvetica Bold" note_font_size 24 note_font_color 0xa5a5a501 xpos 654 ypos 450 } BlinkScript { inputs 2 KernelDescription "2 \"PlotChromaticity\" iterate pixelWise 3e86399c7642fe5c35c23528a644f88a8bf13f967de084ae6842f8be55098c6b 3 \"col\" Read Random \"Yxy\" Read Random \"dst\" Write Random 4 \"padding\" Float 1 AAAAAA== \"left_margin\" Float 1 AAAAAA== \"tolerance\" Float 1 AAAAAA== \"antialias\" Bool 1 AA== 4 \"padding\" 1 1 \"left_margin\" 1 1 \"tolerance\" 1 1 \"antialias\" 1 1 2 \"outsize\" Float 1 1 AAAAAA== \"offset\" Float 1 1 AAAAAA==" kernelSource "kernel PlotChromaticity : public ImageComputationKernel\n\{\n Image col;\n Image Yxy;\n Image dst;\n\nparam:\n float padding;\n float left_margin;\n float tolerance;\n bool antialias;\n\nlocal:\n float outsize;\n float offset;\n\n void init() \{\n // calculate output width and height and offset based on padding\n outsize = float(dst.bounds.height()/padding);\n // xy offset for margin on lower left corner\n offset = dst.bounds.height()*left_margin;\n \}\n\n float gaussian(float d, float a, float expv) \{\n return max(0.0f, exp(-a*d*d)-expv);\n \}\n\n float gaussian_filter(float x, float y, float r) \{\n // return gaussian weighted distance from origin (0, 0)\n // given coordinate (x, y) and radius r\n float a = 1.5f; // rate falloff\n float expv = exp(-a*r*r);\n return gaussian(x, a, expv) * gaussian(y, a, expv);\n \}\n\n void write_aa(float x, float y, float4 rgb) \{\n // skip black pixels\n if (rgb.x == 0.0f && rgb.y == 0.0f && rgb.z == 0.0f) return;\n \n // size of pixel neighborhood = n*2+1 by n*2+1\n int n = 2;\n\n // center of neighborhood\n int u0 = round(x);\n int v0 = round(y);\n\n // skip if center pixel weight is greater than tolerance\n if ( dst.bounds.inside(u0, v0)) \{\n if (dst(u0, v0, 3) >= tolerance) return;\n \}\n\n // loop over neighborhood\n for (int j = -n; j <= n; j++) \{\n int v = v0 + j;\n for (int i = -n; i <= n; i++) \{\n int u = u0 + i;\n if ( dst.bounds.inside(u, v)) \{\n // get filter weight for coord (u,v)\n float w = gaussian_filter(u-x, v-y, float(n));\n float4 c0 = dst(u, v); // existing color\n\n // merge current color sample over existing color sample\n for (int k=0; k<3; k++) \{\n dst(u, v, k) = rgb\[k]*w+c0\[k]*(1-w); \n \}\n\n // merge current weight over existing weight\n float w0 = dst(u, v, 3);\n dst(u, v, 3) = w+w0*(1-w);\n \}\n \}\n \}\n \}\n\n\n void process(int2 pos) \{\n float4 rgba = col(pos.x, pos.y);\n \n // Get CIE xy position from Yxy input for current pixel\n float2 xy = float2(Yxy(pos.x, pos.y, 1), Yxy(pos.x, pos.y, 2));\n \n // Find output pixel coordinate for this CIE xy pixel value\n float2 out_coord = float2(xy.x * outsize + offset, xy.y * outsize + offset);\n\n // For each RGB component, write value from color input to output coordinate\n if (antialias) \{\n write_aa(out_coord.x, out_coord.y, rgba);\n \} else \{\n // For each RGB component, write value from color input to output coordinate\n int2 p = int2(round(out_coord.x), round(out_coord.y));\n if (dst.bounds.inside(p.x, p.y)) \{\n for (int k=0; k<3; k++) \{\n dst(p.x, p.y, k) = col(pos.x, pos.y, k);\n \}\n dst(p.x, p.y, 3) = 1.0f;\n \}\n \}\n \}\n\};" useGPUIfAvailable {{parent.use_gpu}} rebuild "" PlotChromaticity_padding {{"parent.diagram ? parent.right_margin*0.8 : parent.right_margin"}} PlotChromaticity_left_margin {{parent.left_margin}} PlotChromaticity_tolerance 2 PlotChromaticity_antialias true format "2048 2048 0 0 2048 2048 1 square_2K" rebuild_finalise "" name PlotChromaticities xpos 620 ypos 536 disable {{!parent.plot_input}} } Fill { color 0 name BLACK tile_color 0x111111ff xpos 620 ypos 591 disable {{parent.plot_input}} } Merge2 { inputs 2 bbox B name Merge7 xpos 620 ypos 686 disable {{!parent.enable_sample_color}} } Merge2 { inputs 2 name Merge1 xpos 620 ypos 758 } Output { name Output xpos 620 ypos 1046 } push $Ncfdfd7b0 Viewer { frame 27 frame_range 1-100 viewerProcess "sRGB (default)" name Viewer1 note_font Helvetica xpos -1140 ypos -1134 } end_group