Browse Source

cubehelix.genjit now is a file ; auto window resize

master
TFLCL 8 months ago
parent
commit
e75d9240ea
  1. 175
      cubehelix.genjit
  2. 68
      jit.cubehelix.maxhelp
  3. 196
      jit.cubehelix.maxpat
  4. 461
      jit.cubehelix.ui.maxpat

175
cubehelix.genjit

@ -0,0 +1,175 @@
{
"patcher" : {
"fileversion" : 1,
"appversion" : {
"major" : 8,
"minor" : 5,
"revision" : 6,
"architecture" : "x64",
"modernui" : 1
}
,
"classnamespace" : "jit.gen",
"rect" : [ 188.0, 268.0, 672.0, 730.0 ],
"bglocked" : 0,
"openinpresentation" : 0,
"default_fontsize" : 12.0,
"default_fontface" : 0,
"default_fontname" : "Arial",
"gridonopen" : 1,
"gridsize" : [ 15.0, 15.0 ],
"gridsnaponopen" : 1,
"objectsnaponopen" : 1,
"statusbarvisible" : 2,
"toolbarvisible" : 1,
"lefttoolbarpinned" : 0,
"toptoolbarpinned" : 0,
"righttoolbarpinned" : 0,
"bottomtoolbarpinned" : 0,
"toolbars_unpinned_last_save" : 0,
"tallnewobj" : 0,
"boxanimatetime" : 200,
"enablehscroll" : 1,
"enablevscroll" : 1,
"devicewidth" : 0.0,
"description" : "",
"digest" : "",
"tags" : "",
"style" : "",
"subpatcher_template" : "",
"assistshowspatchername" : 0,
"boxes" : [ {
"box" : {
"id" : "obj-11",
"linecount" : 3,
"maxclass" : "comment",
"numinlets" : 1,
"numoutlets" : 0,
"patching_rect" : [ 50.0, 135.0, 570.0, 48.0 ],
"text" : "Original cubehelix implementation from: Green, D. A., 2011, ‘A colour scheme for the display of astronomical intensity images’, Bulletin of the Astronomical Society of India, 39, 289.\n(2011BASI...39..289G at ADS.): https://www.mrao.cam.ac.uk/~dag/CUBEHELIX/"
}
}
, {
"box" : {
"id" : "obj-8",
"linecount" : 2,
"maxclass" : "comment",
"numinlets" : 1,
"numoutlets" : 0,
"patching_rect" : [ 50.0, 188.0, 570.0, 34.0 ],
"text" : "Below implementation based on D3 implementation by @mbostock https://github.com/d3/d3-plugins/tree/master/cubehelix"
}
}
, {
"box" : {
"id" : "obj-7",
"linecount" : 4,
"maxclass" : "comment",
"numinlets" : 1,
"numoutlets" : 0,
"patching_rect" : [ 220.0, 47.0, 406.0, 62.0 ],
"text" : "Default values are meant to reproduce the default cubehelix color scheme.\nhue_offset is here to shift common Max hue values (with 0 as red) by 120° and make them work with the cubehelix algorithm (made to work with 0 as blue)."
}
}
, {
"box" : {
"id" : "obj-5",
"maxclass" : "newobj",
"numinlets" : 0,
"numoutlets" : 1,
"outlettype" : [ "" ],
"patching_rect" : [ 50.0, 47.0, 155.0, 22.0 ],
"text" : "param hue_offset 0.333333"
}
}
, {
"box" : {
"id" : "obj-3",
"maxclass" : "newobj",
"numinlets" : 0,
"numoutlets" : 1,
"outlettype" : [ "" ],
"patching_rect" : [ 304.0, 5.0, 203.0, 22.0 ],
"text" : "param color_end -0.666666 0.5 1. 1."
}
}
, {
"box" : {
"id" : "obj-2",
"maxclass" : "newobj",
"numinlets" : 0,
"numoutlets" : 1,
"outlettype" : [ "" ],
"patching_rect" : [ 92.0, 5.0, 202.0, 22.0 ],
"text" : "param color_start 0.888888 0.5 0. 1."
}
}
, {
"box" : {
"code" : "h_s = (color_start.x + hue_offset) * TWOPI;\r\nh_e = (color_end.x + hue_offset) * TWOPI - h_s;\r\ns_s = color_start.y;\r\ns_e = color_end.y - s_s;\r\nl_s = color_start.z;\r\nl_e = color_end.z - l_s;\r\n\r\n\r\nh = h_s + h_e * norm;\r\nl = pow(l_s + l_e * norm, gamma);\r\na = (s_s + s_e * norm) * l * (1 - l);\r\n\r\ncosh = cos(h);\r\nsinh = sin(h);\r\n\r\nr = l + a * (-0.14861 * cosh + 1.78277 * sinh);\r\n\r\ng = l + a * (-0.29227 * cosh - 0.90649 * sinh);\r\n\r\nb = l + a * (1.97294 * cosh);\r\n\r\nout1 = vec(1, r, g, b);",
"fontface" : 0,
"fontname" : "<Monospaced>",
"fontsize" : 12.0,
"id" : "obj-12",
"maxclass" : "codebox",
"numinlets" : 1,
"numoutlets" : 1,
"outlettype" : [ "" ],
"patching_rect" : [ 50.0, 224.0, 531.0, 382.0 ]
}
}
, {
"box" : {
"id" : "obj-10",
"maxclass" : "newobj",
"numinlets" : 0,
"numoutlets" : 1,
"outlettype" : [ "" ],
"patching_rect" : [ 527.0, 5.0, 99.0, 22.0 ],
"text" : "param gamma 1."
}
}
, {
"box" : {
"id" : "obj-1",
"maxclass" : "newobj",
"numinlets" : 0,
"numoutlets" : 1,
"outlettype" : [ "" ],
"patching_rect" : [ 50.0, 5.0, 28.0, 22.0 ],
"text" : "in 1"
}
}
, {
"box" : {
"id" : "obj-4",
"maxclass" : "newobj",
"numinlets" : 1,
"numoutlets" : 0,
"patching_rect" : [ 50.0, 623.0, 35.0, 22.0 ],
"text" : "out 1"
}
}
],
"lines" : [ {
"patchline" : {
"destination" : [ "obj-4", 0 ],
"source" : [ "obj-12", 0 ]
}
}
],
"autosave" : 0
}
}

68
jit.cubehelix.maxhelp

@ -10,7 +10,7 @@
}
,
"classnamespace" : "box",
"rect" : [ 1127.0, 227.0, 751.0, 558.0 ],
"rect" : [ 85.0, 100.0, 747.0, 587.0 ],
"bglocked" : 0,
"openinpresentation" : 0,
"default_fontsize" : 12.0,
@ -354,7 +354,7 @@
}
,
"classnamespace" : "box",
"rect" : [ 0.0, 26.0, 751.0, 532.0 ],
"rect" : [ 0.0, 26.0, 747.0, 535.0 ],
"bglocked" : 0,
"openinpresentation" : 0,
"default_fontsize" : 12.0,
@ -385,13 +385,25 @@
"assistshowspatchername" : 0,
"title" : "History",
"boxes" : [ {
"box" : {
"id" : "obj-4",
"maxclass" : "jit.pwindow",
"numinlets" : 1,
"numoutlets" : 2,
"outlettype" : [ "jit_matrix", "" ],
"patching_rect" : [ 15.0, 480.0, 720.0, 50.0 ],
"sync" : 1
}
}
, {
"box" : {
"id" : "obj-10",
"maxclass" : "newobj",
"numinlets" : 1,
"numoutlets" : 1,
"outlettype" : [ "" ],
"patching_rect" : [ 12.0, 330.0, 54.0, 22.0 ],
"patching_rect" : [ 15.0, 334.0, 54.0, 22.0 ],
"text" : "deferlow"
}
@ -403,7 +415,7 @@
"numinlets" : 1,
"numoutlets" : 1,
"outlettype" : [ "bang" ],
"patching_rect" : [ 12.0, 300.0, 58.0, 22.0 ],
"patching_rect" : [ 15.0, 304.0, 58.0, 22.0 ],
"text" : "loadbang"
}
@ -417,7 +429,7 @@
"numoutlets" : 2,
"outlettype" : [ "", "bang" ],
"parameter_enable" : 0,
"patching_rect" : [ 169.300000000000011, 136.0, 67.0, 22.0 ]
"patching_rect" : [ 172.300000000000011, 140.0, 67.0, 22.0 ]
}
}
@ -428,7 +440,7 @@
"numinlets" : 1,
"numoutlets" : 1,
"outlettype" : [ "" ],
"patching_rect" : [ 169.300000000000011, 109.0, 113.0, 22.0 ],
"patching_rect" : [ 172.300000000000011, 113.0, 113.0, 22.0 ],
"text" : "loadmess 0.888889"
}
@ -442,7 +454,7 @@
"numoutlets" : 2,
"outlettype" : [ "", "bang" ],
"parameter_enable" : 0,
"patching_rect" : [ 166.0, 244.0, 67.0, 22.0 ]
"patching_rect" : [ 169.0, 248.0, 67.0, 22.0 ]
}
}
@ -453,7 +465,7 @@
"numinlets" : 1,
"numoutlets" : 1,
"outlettype" : [ "" ],
"patching_rect" : [ 166.0, 217.0, 117.0, 22.0 ],
"patching_rect" : [ 169.0, 221.0, 117.0, 22.0 ],
"text" : "loadmess -0.666666"
}
@ -478,7 +490,7 @@
"numinlets" : 2,
"numoutlets" : 1,
"outlettype" : [ "" ],
"patching_rect" : [ 217.400000000000034, 324.0, 69.0, 22.0 ],
"patching_rect" : [ 220.400000000000034, 328.0, 69.0, 22.0 ],
"text" : "reset, bang"
}
@ -495,18 +507,6 @@
"textcolor" : [ 0.32548999786377, 0.345097988843918, 0.372548997402191, 1.0 ]
}
}
, {
"box" : {
"id" : "obj-93",
"maxclass" : "jit.pwindow",
"numinlets" : 1,
"numoutlets" : 2,
"outlettype" : [ "jit_matrix", "" ],
"patching_rect" : [ 12.0, 474.0, 720.0, 50.0 ],
"sync" : 1
}
}
, {
"box" : {
@ -515,7 +515,7 @@
"numinlets" : 1,
"numoutlets" : 3,
"outlettype" : [ "jit_matrix", "jit_matrix", "" ],
"patching_rect" : [ 12.0, 359.0, 244.0, 22.0 ],
"patching_rect" : [ 15.0, 363.0, 244.0, 22.0 ],
"text" : "jit.cubehelix @dim 100 @coloroutputmode 1"
}
@ -528,7 +528,7 @@
"maxclass" : "comment",
"numinlets" : 1,
"numoutlets" : 0,
"patching_rect" : [ 17.0, 243.0, 147.0, 24.0 ],
"patching_rect" : [ 20.0, 247.0, 147.0, 24.0 ],
"text" : "Change end color hue"
}
@ -541,7 +541,7 @@
"maxclass" : "comment",
"numinlets" : 1,
"numoutlets" : 0,
"patching_rect" : [ 17.0, 135.0, 147.0, 24.0 ],
"patching_rect" : [ 20.0, 139.0, 147.0, 24.0 ],
"text" : "Change start color hue"
}
@ -553,7 +553,7 @@
"numinlets" : 6,
"numoutlets" : 1,
"outlettype" : [ "" ],
"patching_rect" : [ 108.399999999999977, 280.0, 163.0, 22.0 ],
"patching_rect" : [ 111.399999999999977, 284.0, 163.0, 22.0 ],
"text" : "pak color_end hsl 0. 0.5 1. 1."
}
@ -565,7 +565,7 @@
"numinlets" : 6,
"numoutlets" : 1,
"outlettype" : [ "" ],
"patching_rect" : [ 110.5, 172.0, 166.0, 22.0 ],
"patching_rect" : [ 113.5, 176.0, 166.0, 22.0 ],
"text" : "pak color_start hsl 0. 0.5 0. 1."
}
@ -592,7 +592,7 @@
"numinlets" : 1,
"numoutlets" : 5,
"outlettype" : [ "jit_matrix", "jit_matrix", "jit_matrix", "jit_matrix", "" ],
"patching_rect" : [ 12.0, 400.0, 69.0, 22.0 ],
"patching_rect" : [ 15.0, 404.0, 69.0, 22.0 ],
"text" : "jit.unpack 4"
}
@ -605,7 +605,7 @@
"maxclass" : "comment",
"numinlets" : 1,
"numoutlets" : 0,
"patching_rect" : [ 300.0, 390.0, 168.0, 39.0 ],
"patching_rect" : [ 303.0, 394.0, 168.0, 39.0 ],
"text" : "Shows only lightness channel"
}
@ -617,7 +617,7 @@
"numinlets" : 1,
"numoutlets" : 2,
"outlettype" : [ "jit_matrix", "" ],
"patching_rect" : [ 12.0, 433.0, 720.0, 30.0 ],
"patching_rect" : [ 15.0, 437.0, 720.0, 30.0 ],
"sync" : 1
}
@ -645,7 +645,7 @@
}
, {
"patchline" : {
"destination" : [ "obj-93", 0 ],
"destination" : [ "obj-4", 0 ],
"source" : [ "obj-1", 1 ]
}
@ -765,7 +765,7 @@
}
,
"classnamespace" : "box",
"rect" : [ 0.0, 26.0, 751.0, 532.0 ],
"rect" : [ 0.0, 26.0, 747.0, 535.0 ],
"bglocked" : 0,
"openinpresentation" : 0,
"default_fontsize" : 12.0,
@ -1280,7 +1280,7 @@
}
,
"classnamespace" : "box",
"rect" : [ 0.0, 26.0, 751.0, 532.0 ],
"rect" : [ 85.0, 152.0, 747.0, 535.0 ],
"bglocked" : 0,
"openinpresentation" : 0,
"default_fontsize" : 12.0,
@ -2003,10 +2003,10 @@
}
,
"dependency_cache" : [ {
"name" : "cubehelixui-default.json",
"name" : "cubehelix.genjit",
"bootpath" : "D:/_MAX/_RESSOURCE/Cubehelix_color_MaxMSP",
"patcherrelativepath" : ".",
"type" : "JSON",
"type" : "gJIT",
"implicit" : 1
}
, {

196
jit.cubehelix.maxpat

@ -198,7 +198,7 @@
"box" : {
"comment" : "ARGB matrix output (unprocessed)",
"id" : "obj-40",
"index" : 0,
"index" : 2,
"maxclass" : "outlet",
"numinlets" : 1,
"numoutlets" : 0,
@ -2262,180 +2262,8 @@
"numinlets" : 1,
"numoutlets" : 2,
"outlettype" : [ "jit_matrix", "" ],
"patcher" : {
"fileversion" : 1,
"appversion" : {
"major" : 8,
"minor" : 5,
"revision" : 6,
"architecture" : "x64",
"modernui" : 1
}
,
"classnamespace" : "jit.gen",
"rect" : [ 110.0, 335.0, 672.0, 730.0 ],
"bglocked" : 0,
"openinpresentation" : 0,
"default_fontsize" : 12.0,
"default_fontface" : 0,
"default_fontname" : "Arial",
"gridonopen" : 1,
"gridsize" : [ 15.0, 15.0 ],
"gridsnaponopen" : 1,
"objectsnaponopen" : 1,
"statusbarvisible" : 2,
"toolbarvisible" : 1,
"lefttoolbarpinned" : 0,
"toptoolbarpinned" : 0,
"righttoolbarpinned" : 0,
"bottomtoolbarpinned" : 0,
"toolbars_unpinned_last_save" : 0,
"tallnewobj" : 0,
"boxanimatetime" : 200,
"enablehscroll" : 1,
"enablevscroll" : 1,
"devicewidth" : 0.0,
"description" : "",
"digest" : "",
"tags" : "",
"style" : "",
"subpatcher_template" : "",
"assistshowspatchername" : 0,
"boxes" : [ {
"box" : {
"id" : "obj-11",
"linecount" : 3,
"maxclass" : "comment",
"numinlets" : 1,
"numoutlets" : 0,
"patching_rect" : [ 50.0, 123.0, 570.0, 48.0 ],
"text" : "Original cubehelix implementation from: Green, D. A., 2011, ‘A colour scheme for the display of astronomical intensity images’, Bulletin of the Astronomical Society of India, 39, 289.\n(2011BASI...39..289G at ADS.): https://www.mrao.cam.ac.uk/~dag/CUBEHELIX/"
}
}
, {
"box" : {
"id" : "obj-8",
"linecount" : 2,
"maxclass" : "comment",
"numinlets" : 1,
"numoutlets" : 0,
"patching_rect" : [ 50.0, 176.0, 570.0, 34.0 ],
"text" : "Below implementation based on D3 implementation by @mbostock https://github.com/d3/d3-plugins/tree/master/cubehelix"
}
}
, {
"box" : {
"id" : "obj-7",
"linecount" : 3,
"maxclass" : "comment",
"numinlets" : 1,
"numoutlets" : 0,
"patching_rect" : [ 282.0, 54.0, 338.0, 48.0 ],
"text" : "hue_offset is here to shift common Max hue values (with 0 as red) by 120° and make them work with the cubehelix algorithm (made to work with 0 as blue)"
}
}
, {
"box" : {
"id" : "obj-5",
"maxclass" : "newobj",
"numinlets" : 0,
"numoutlets" : 1,
"outlettype" : [ "" ],
"patching_rect" : [ 105.0, 52.0, 155.0, 22.0 ],
"text" : "param hue_offset 0.333333"
}
}
, {
"box" : {
"id" : "obj-3",
"maxclass" : "newobj",
"numinlets" : 0,
"numoutlets" : 1,
"outlettype" : [ "" ],
"patching_rect" : [ 317.0, 14.0, 203.0, 22.0 ],
"text" : "param color_end -0.666666 0.5 1. 1."
}
}
, {
"box" : {
"id" : "obj-2",
"maxclass" : "newobj",
"numinlets" : 0,
"numoutlets" : 1,
"outlettype" : [ "" ],
"patching_rect" : [ 105.0, 14.0, 202.0, 22.0 ],
"text" : "param color_start 0.888888 0.5 0. 1."
}
}
, {
"box" : {
"code" : "h_s = (color_start.x + hue_offset) * TWOPI;\r\nh_e = (color_end.x + hue_offset) * TWOPI - h_s;\r\ns_s = color_start.y;\r\ns_e = color_end.y - s_s;\r\nl_s = color_start.z;\r\nl_e = color_end.z - l_s;\r\n\r\n\r\nh = h_s + h_e * norm;\r\nl = pow(l_s + l_e * norm, gamma);\r\na = (s_s + s_e * norm) * l * (1 - l);\r\n\r\ncosh = cos(h);\r\nsinh = sin(h);\r\n\r\nr = l + a * (-0.14861 * cosh + 1.78277 * sinh);\r\n\r\ng = l + a * (-0.29227 * cosh - 0.90649 * sinh);\r\n\r\nb = l + a * (1.97294 * cosh);\r\n\r\nout1 = vec(1, r, g, b);",
"fontface" : 0,
"fontname" : "<Monospaced>",
"fontsize" : 12.0,
"id" : "obj-12",
"maxclass" : "codebox",
"numinlets" : 1,
"numoutlets" : 1,
"outlettype" : [ "" ],
"patching_rect" : [ 50.0, 224.0, 531.0, 382.0 ]
}
}
, {
"box" : {
"id" : "obj-10",
"maxclass" : "newobj",
"numinlets" : 0,
"numoutlets" : 1,
"outlettype" : [ "" ],
"patching_rect" : [ 540.0, 14.0, 99.0, 22.0 ],
"text" : "param gamma 1."
}
}
, {
"box" : {
"id" : "obj-1",
"maxclass" : "newobj",
"numinlets" : 0,
"numoutlets" : 1,
"outlettype" : [ "" ],
"patching_rect" : [ 50.0, 14.0, 28.0, 22.0 ],
"text" : "in 1"
}
}
, {
"box" : {
"id" : "obj-4",
"maxclass" : "newobj",
"numinlets" : 1,
"numoutlets" : 0,
"patching_rect" : [ 50.0, 623.0, 35.0, 22.0 ],
"text" : "out 1"
}
}
],
"lines" : [ {
"patchline" : {
"destination" : [ "obj-4", 0 ],
"source" : [ "obj-12", 0 ]
}
}
]
}
,
"patching_rect" : [ 126.513736263736178, 482.0, 129.0, 22.0 ],
"text" : "jit.gen @title cubehelix"
"patching_rect" : [ 126.513736263736178, 482.0, 162.0, 22.0 ],
"text" : "jit.gen @gen cubehelix.genjit"
}
}
@ -2540,7 +2368,7 @@
"box" : {
"comment" : " Outputs lists of colors, formatted accordingly to coloroutputmode and alpha_last",
"id" : "obj-88",
"index" : 0,
"index" : 3,
"maxclass" : "outlet",
"numinlets" : 1,
"numoutlets" : 0,
@ -2612,7 +2440,7 @@
"box" : {
"comment" : "ARGB/RGBA/AHSL/HSLA matrix output",
"id" : "obj-44",
"index" : 0,
"index" : 1,
"maxclass" : "outlet",
"numinlets" : 1,
"numoutlets" : 0,
@ -2634,13 +2462,13 @@
}
, {
"box" : {
"comment" : "",
"comment" : "bang, colormodeoutput, alpha_last, listoutput, auto, color_start, color_end, start, rotation, saturation, flip, gamma, type, dim, getcolor, reset",
"id" : "obj-22",
"index" : 0,
"index" : 1,
"maxclass" : "inlet",
"numinlets" : 0,
"numoutlets" : 1,
"outlettype" : [ "" ],
"outlettype" : [ "bang" ],
"patching_rect" : [ 31.0, 11.0, 30.0, 30.0 ]
}
@ -3064,13 +2892,7 @@
}
}
],
"dependency_cache" : [ {
"name" : "jit.pass.mxe64",
"type" : "mx64"
}
],
"autosave" : 0
]
}
}

461
jit.cubehelix.ui.maxpat

@ -10,7 +10,7 @@
}
,
"classnamespace" : "box",
"rect" : [ 546.0, 85.0, 304.0, 418.0 ],
"rect" : [ 245.0, 320.0, 979.0, 679.0 ],
"bglocked" : 0,
"openinpresentation" : 1,
"default_fontsize" : 12.0,
@ -39,13 +39,212 @@
"subpatcher_template" : "",
"assistshowspatchername" : 0,
"boxes" : [ {
"box" : {
"id" : "obj-92",
"maxclass" : "newobj",
"numinlets" : 1,
"numoutlets" : 2,
"outlettype" : [ "bang", "bang" ],
"patching_rect" : [ 615.0, 126.75, 32.0, 22.0 ],
"text" : "t b b"
}
}
, {
"box" : {
"id" : "obj-84",
"maxclass" : "newobj",
"numinlets" : 1,
"numoutlets" : 1,
"outlettype" : [ "" ],
"patching_rect" : [ 400.892822000000024, 176.106797993183136, 120.0, 22.0 ],
"text" : "prepend pattrstorage"
}
}
, {
"box" : {
"id" : "obj-77",
"maxclass" : "newobj",
"numinlets" : 2,
"numoutlets" : 2,
"outlettype" : [ "", "" ],
"patching_rect" : [ 400.892822000000024, 148.029120743274689, 69.0, 22.0 ],
"text" : "route name"
}
}
, {
"box" : {
"id" : "obj-58",
"maxclass" : "message",
"numinlets" : 2,
"numoutlets" : 1,
"outlettype" : [ "" ],
"patching_rect" : [ 628.0, 186.0, 55.0, 22.0 ],
"text" : "getname"
}
}
, {
"box" : {
"id" : "obj-73",
"maxclass" : "newobj",
"numinlets" : 1,
"numoutlets" : 2,
"outlettype" : [ "", "" ],
"patching_rect" : [ 804.0, 244.0, 29.5, 22.0 ],
"text" : "t l l"
}
}
, {
"box" : {
"id" : "obj-72",
"maxclass" : "newobj",
"numinlets" : 2,
"numoutlets" : 2,
"outlettype" : [ "", "" ],
"patching_rect" : [ 804.0, 313.0, 39.0, 22.0 ],
"text" : "zl.join"
}
}
, {
"box" : {
"id" : "obj-66",
"maxclass" : "newobj",
"numinlets" : 1,
"numoutlets" : 2,
"outlettype" : [ "bang", "bang" ],
"patching_rect" : [ 804.0, 45.305826558368722, 32.0, 22.0 ],
"text" : "t b b"
}
}
, {
"box" : {
"id" : "obj-61",
"maxclass" : "message",
"numinlets" : 2,
"numoutlets" : 1,
"outlettype" : [ "" ],
"patching_rect" : [ 892.0, 237.0, 52.0, 22.0 ],
"text" : "300 410"
}
}
, {
"box" : {
"id" : "obj-55",
"maxclass" : "newobj",
"numinlets" : 2,
"numoutlets" : 1,
"outlettype" : [ "" ],
"patching_rect" : [ 824.0, 282.28640450407795, 87.0, 22.0 ],
"text" : "vexpr $i1 + $i2"
}
}
, {
"box" : {
"id" : "obj-46",
"maxclass" : "newobj",
"numinlets" : 2,
"numoutlets" : 2,
"outlettype" : [ "", "" ],
"patching_rect" : [ 804.0, 207.0, 55.0, 22.0 ],
"text" : "zl.slice 2"
}
}
, {
"box" : {
"id" : "obj-100",
"maxclass" : "newobj",
"numinlets" : 1,
"numoutlets" : 1,
"outlettype" : [ "bang" ],
"patching_rect" : [ 804.0, 13.0, 58.0, 22.0 ],
"text" : "loadbang"
}
}
, {
"box" : {
"id" : "obj-99",
"maxclass" : "message",
"numinlets" : 2,
"numoutlets" : 1,
"outlettype" : [ "" ],
"patching_rect" : [ 804.0, 77.5, 90.0, 22.0 ],
"text" : "window getsize"
}
}
, {
"box" : {
"fontname" : "Arial",
"fontsize" : 11.595186999999999,
"id" : "obj-96",
"maxclass" : "newobj",
"numinlets" : 2,
"numoutlets" : 2,
"outlettype" : [ "", "" ],
"patching_rect" : [ 804.0, 176.106797993183136, 59.0, 22.0 ],
"text" : "route size"
}
}
, {
"box" : {
"fontname" : "Arial",
"fontsize" : 11.595186999999999,
"id" : "obj-97",
"maxclass" : "newobj",
"numinlets" : 2,
"numoutlets" : 2,
"outlettype" : [ "", "" ],
"patching_rect" : [ 804.0, 148.029120743274689, 79.0, 22.0 ],
"text" : "route window"
}
}
, {
"box" : {
"fontname" : "Arial",
"fontsize" : 11.595186999999999,
"id" : "obj-94",
"maxclass" : "message",
"numinlets" : 2,
"numoutlets" : 1,
"outlettype" : [ "" ],
"patching_rect" : [ 804.0, 356.28640450407795, 208.0, 22.0 ],
"text" : "window size $1 $2 $3 $4, window exec"
}
}
, {
"box" : {
"id" : "obj-93",
"maxclass" : "newobj",
"numinlets" : 1,
"numoutlets" : 2,
"outlettype" : [ "", "" ],
"patching_rect" : [ 804.0, 114.106797993183136, 67.0, 22.0 ],
"save" : [ "#N", "thispatcher", ";", "#Q", "end", ";" ],
"text" : "thispatcher"
}
}
, {
"box" : {
"id" : "obj-54",
"linecount" : 7,
"maxclass" : "comment",
"numinlets" : 1,
"numoutlets" : 0,
"patching_rect" : [ 269.091850278514926, 304.893202006816864, 448.300971925258636, 103.0 ],
"patching_rect" : [ 587.0, 550.687592625617981, 448.300971925258636, 103.0 ],
"text" : "TODO:\n- Make pattrstorage store scaled values for the range (more meaningfull to user)\n- Implement a special mode for the end color hue to act as an offset from the start hue (basically make it a \"rotation\" setting), with a selection of some default values (complementary, \n- Allow to set knob settings from inlet with messages such as 'start_hue 0. -0.5 0.5 0' (value of 0., random range of -0.5, 0.5 and locked to 0)"
}
@ -59,7 +258,7 @@
"numoutlets" : 1,
"outlettype" : [ "" ],
"patching_rect" : [ 432.0, 600.0, 50.0, 36.0 ],
"text" : "-0.666666"
"text" : "-0.323996"
}
}
@ -70,7 +269,7 @@
"numinlets" : 2,
"numoutlets" : 1,
"outlettype" : [ "" ],
"patching_rect" : [ 615.0, 125.856797502738914, 161.0, 22.0 ],
"patching_rect" : [ 615.0, 156.5, 161.0, 22.0 ],
"text" : "read cubehelixui-default.json"
}
@ -94,7 +293,7 @@
"numinlets" : 2,
"numoutlets" : 1,
"outlettype" : [ "" ],
"patching_rect" : [ 464.591850278514926, 126.75, 34.0, 22.0 ],
"patching_rect" : [ 464.591850278514926, 118.338785111904144, 34.0, 22.0 ],
"text" : "write"
}
@ -106,7 +305,7 @@
"numinlets" : 2,
"numoutlets" : 1,
"outlettype" : [ "" ],
"patching_rect" : [ 534.591850278514926, 126.75, 33.0, 22.0 ],
"patching_rect" : [ 534.591850278514926, 118.338785111904144, 33.0, 22.0 ],
"text" : "read"
}
@ -118,7 +317,7 @@
"maxclass" : "comment",
"numinlets" : 1,
"numoutlets" : 0,
"patching_rect" : [ 556.892822000000024, 99.106797502738914, 38.0, 20.0 ],
"patching_rect" : [ 556.892822000000024, 90.695582614643058, 38.0, 20.0 ],
"presentation" : 1,
"presentation_rect" : [ 174.92397830374523, 20.457170218229294, 38.0, 20.0 ],
"text" : "Read",
@ -137,7 +336,7 @@
"outlettype" : [ "bang" ],
"outlinecolor" : [ 0.701960784313725, 0.415686274509804, 0.886274509803922, 1.0 ],
"parameter_enable" : 0,
"patching_rect" : [ 534.591850278514926, 99.106797502738914, 20.300971721485098, 20.300971721485098 ],
"patching_rect" : [ 534.591850278514926, 90.695582614643058, 20.300971721485098, 20.300971721485098 ],
"presentation" : 1,
"presentation_rect" : [ 205.623006582260132, 20.457170218229294, 20.300971721485098, 20.300971721485098 ]
}
@ -150,7 +349,7 @@
"maxclass" : "comment",
"numinlets" : 1,
"numoutlets" : 0,
"patching_rect" : [ 486.892822000000024, 99.106797502738914, 38.0, 20.0 ],
"patching_rect" : [ 486.892822000000024, 90.695582614643058, 38.0, 20.0 ],
"presentation" : 1,
"presentation_rect" : [ 174.92397830374523, 3.106797502738914, 38.0, 20.0 ],
"text" : "Write",
@ -169,7 +368,7 @@
"outlettype" : [ "bang" ],
"outlinecolor" : [ 0.701960784313725, 0.415686274509804, 0.886274509803922, 1.0 ],
"parameter_enable" : 0,
"patching_rect" : [ 464.591850278514926, 99.106797502738914, 20.300971721485098, 20.300971721485098 ],
"patching_rect" : [ 464.591850278514926, 90.695582614643058, 20.300971721485098, 20.300971721485098 ],
"presentation" : 1,
"presentation_rect" : [ 205.623006582260132, 3.106797502738914, 20.300971721485098, 20.300971721485098 ]
}
@ -182,20 +381,20 @@
"numinlets" : 1,
"numoutlets" : 4,
"outlettype" : [ "", "", "", "" ],
"patching_rect" : [ 648.0, 31.621908843517303, 56.0, 22.0 ],
"patching_rect" : [ 678.892822000000024, 31.621908843517303, 56.0, 22.0 ],
"restore" : {
"alpha_last" : [ 0.0 ],
"colormodeoutput" : [ 0.0 ],
"dim" : [ 128 ],
"e_h" : [ -0.666666, 0, 1, 0 ],
"e_l" : [ 1, 0, 1, 0 ],
"e_s" : [ 0.5, 0, 1, 0 ],
"e_h" : [ -0.323995549892999, 0.25, 0.75, 0 ],
"e_l" : [ 0.750656257113465, 0, 1, 0 ],
"e_s" : [ 1.895719982930721, 0, 1, 0 ],
"flip" : [ 0.0 ],
"gamma" : [ 1, 0.166666666666667, 0.5, 0 ],
"gamma" : [ 0.526810515230414, 0.166666666666667, 0.5, 0 ],
"listoutput" : [ 0.0 ],
"s_h" : [ 0.888888, 0, 1, 0 ],
"s_l" : [ 0, 0, 1, 0 ],
"s_s" : [ 0.619999999999999, 0, 1, 0 ]
"s_h" : [ 0.247902265609083, 0.25, 0.75, 0 ],
"s_l" : [ 0.499595442526692, 0, 1, 0 ],
"s_s" : [ 1.855728608182778, 0, 1, 0 ]
}
,
"text" : "autopattr",
@ -224,7 +423,7 @@
"maxclass" : "comment",
"numinlets" : 1,
"numoutlets" : 0,
"patching_rect" : [ 269.091850278514926, 174.28640450407795, 448.300971925258636, 126.0 ],
"patching_rect" : [ 587.0, 420.080795122879067, 448.300971925258636, 126.0 ],
"text" : "jit.cubehelix.ui by Théophile Clet - 2023 - contact@tflcl.xyz - https://tflcl.xyz\n\nOriginal cubehelix by D.-A. Green (2011) in A colour scheme for the display of astronomical intensity images, Bulletin of the Astronomical Society of India\n\nCubehelix intervals implementation by @mbostocks in D3: https://github.com/d3/d3-plugins/tree/master/cubehelix",
"textcolor" : [ 1.0, 1.0, 1.0, 1.0 ]
}
@ -249,7 +448,7 @@
"numoutlets" : 3,
"outlettype" : [ "int", "", "" ],
"parameter_enable" : 0,
"patching_rect" : [ 86.892822203773505, 63.927735401886025, 100.0, 22.0 ],
"patching_rect" : [ 20.892822203773505, 107.927735401886025, 91.0, 22.0 ],
"presentation" : 1,
"presentation_rect" : [ 41.085271954536438, 82.093024373054504, 52.0, 22.0 ],
"textcolor" : [ 0.239, 0.255, 0.278, 1.0 ]
@ -267,7 +466,7 @@
"numoutlets" : 2,
"outlettype" : [ "", "bang" ],
"parameter_enable" : 0,
"patching_rect" : [ 127.392822203773505, 95.181818008422852, 50.0, 22.0 ],
"patching_rect" : [ 56.892822203773505, 139.181818008422852, 50.0, 22.0 ],
"presentation" : 1,
"presentation_rect" : [ 92.813573718070984, 82.093024373054504, 50.0, 22.0 ],
"textcolor" : [ 1.0, 1.0, 1.0, 1.0 ],
@ -285,7 +484,7 @@
"outlettype" : [ "jit_matrix", "" ],
"patching_rect" : [ 210.392822203773534, 761.995149970054626, 94.388350605964661, 12.553398311138153 ],
"presentation" : 1,
"presentation_rect" : [ -0.015029668807983, 338.159525632858276, 300.5, 17.674002230167389 ],
"presentation_rect" : [ -0.015029668807983, 338.159525632858276, 300.75, 17.674002230167389 ],
"sync" : 1
}
@ -332,7 +531,7 @@
"numinlets" : 1,
"numoutlets" : 1,
"outlettype" : [ "" ],
"patching_rect" : [ 13.892821999999995, 97.5, 54.0, 22.0 ],
"patching_rect" : [ 20.892822203773505, 81.695582614643058, 54.0, 22.0 ],
"text" : "deferlow"
}
@ -477,7 +676,7 @@
"outlettype" : [ "jit_matrix", "" ],
"patching_rect" : [ 5.392822203773505, 788.54854828119278, 146.388350605964689, 46.407767176628113 ],
"presentation" : 1,
"presentation_rect" : [ 0.146259307861328, 376.333527863025665, 300.338711023330688, 19.0 ],
"presentation_rect" : [ 0.146259307861328, 376.333527863025665, 300.838711023330688, 19.0 ],
"sync" : 1
}
@ -496,7 +695,7 @@
}
, {
"box" : {
"comment" : "",
"comment" : "Unprocessed matrix (ARGB)",
"id" : "obj-5",
"index" : 2,
"maxclass" : "outlet",
@ -566,7 +765,7 @@
"numinlets" : 1,
"numoutlets" : 1,
"outlettype" : [ "" ],
"patching_rect" : [ 13.892821999999995, 69.5, 70.0, 22.0 ],
"patching_rect" : [ 20.892822203773505, 53.695582614643058, 70.0, 22.0 ],
"text" : "loadmess 3"
}
@ -750,7 +949,7 @@
}
, {
"box" : {
"comment" : "",
"comment" : "Outputs colors as lists",
"id" : "obj-80",
"index" : 3,
"maxclass" : "outlet",
@ -762,7 +961,7 @@
}
, {
"box" : {
"comment" : "",
"comment" : "Processed matrix (ARGB/RGBA/AHSL/HSLA)",
"id" : "obj-79",
"index" : 1,
"maxclass" : "outlet",
@ -774,13 +973,13 @@
}
, {
"box" : {
"comment" : "",
"comment" : "bang, dim, to_pattrstorage",
"id" : "obj-78",
"index" : 1,
"maxclass" : "inlet",
"numinlets" : 0,
"numoutlets" : 1,
"outlettype" : [ "" ],
"outlettype" : [ "bang" ],
"patching_rect" : [ 197.392822203773534, 9.0, 30.0, 30.0 ]
}
@ -2542,46 +2741,6 @@
"text" : "dim $1, bang"
}
}
, {
"box" : {
"bgcolor" : [ 0.290196, 0.309804, 0.301961, 0.0 ],
"elementcolor" : [ 0.349019607843137, 0.349019607843137, 0.349019607843137, 0.0 ],
"id" : "obj-25",
"knobcolor" : [ 0.701961, 0.415686, 0.886275, 0.701961 ],
"maxclass" : "slider",
"numinlets" : 1,
"numoutlets" : 1,
"orientation" : 1,
"outlettype" : [ "" ],
"parameter_enable" : 0,
"patching_rect" : [ 13.892821999999995, 156.5, 156.0, 11.0 ],
"size" : 360.0
}
}
, {
"box" : {
"button" : 1,
"contrastactivetab" : 0,
"htabcolor" : [ 0.701961, 0.415686, 0.886275, 1.0 ],
"id" : "obj-142",
"margin" : 0,
"maxclass" : "tab",
"mode" : 1,
"numinlets" : 1,
"numoutlets" : 3,
"outlettype" : [ "int", "", "" ],
"parameter_enable" : 0,
"patching_rect" : [ 13.892821999999995, 123.0, 156.0, 27.5 ],
"rounded" : 0.0,
"segmented" : 1,
"spacing_x" : 2.0,
"tabcolor" : [ 0.819016, 0.754851, 0.856722, 1.0 ],
"tabs" : [ "5", "12", "64", "128", "360" ],
"textcolor" : [ 0.239216, 0.254902, 0.278431, 1.0 ]
}
}
, {
"box" : {
@ -2590,7 +2749,7 @@
"maxclass" : "comment",
"numinlets" : 1,
"numoutlets" : 0,
"patching_rect" : [ 171.892821999999995, 126.75, 44.0, 20.0 ],
"patching_rect" : [ 11.892822203773505, 139.181818008422852, 44.0, 20.0 ],
"presentation" : 1,
"presentation_rect" : [ 0.174418568611145, 82.093024373054504, 41.0, 20.0 ],
"text" : "Steps",
@ -2641,7 +2800,7 @@
"maxclass" : "comment",
"numinlets" : 1,
"numoutlets" : 0,
"patching_rect" : [ 400.892822000000024, 99.106797502738914, 54.0, 20.0 ],
"patching_rect" : [ 400.892822000000024, 90.695582614643058, 54.0, 20.0 ],
"text" : "Presets",
"textcolor" : [ 1.0, 1.0, 1.0, 1.0 ]
}
@ -2658,7 +2817,7 @@
"numinlets" : 1,
"numoutlets" : 5,
"outlettype" : [ "preset", "int", "preset", "int", "" ],
"patching_rect" : [ 357.892822000000024, 126.75, 97.0, 47.0 ],
"patching_rect" : [ 400.892822000000024, 212.0, 97.0, 47.0 ],
"presentation" : 1,
"presentation_rect" : [ 0.0, 43.0, 240.829459190368652, 32.153864413499832 ],
"stored1" : [ 0.792308, 0.64636, 0.886275, 1.0 ]
@ -2695,7 +2854,7 @@
"parameter_enable" : 1,
"patching_rect" : [ 514.591850278514926, 660.640774250030518, 67.0, 24.0 ],
"presentation" : 1,
"presentation_rect" : [ 235.479597568511963, 353.333527863025665, 67.0, 25.0 ],
"presentation_rect" : [ 235.979597568511963, 353.833527863025665, 67.0, 25.0 ],
"saved_attribute_attributes" : {
"activebgcolor" : {
"expression" : ""
@ -2989,15 +3148,15 @@
],
"lines" : [ {
"patchline" : {
"destination" : [ "obj-33", 0 ],
"source" : [ "obj-11", 0 ]
"destination" : [ "obj-66", 0 ],
"source" : [ "obj-100", 0 ]
}
}
, {
"patchline" : {
"destination" : [ "obj-25", 0 ],
"source" : [ "obj-142", 1 ]
"destination" : [ "obj-33", 0 ],
"source" : [ "obj-11", 0 ]
}
}
@ -3090,6 +3249,13 @@
"source" : [ "obj-19", 0 ]
}
}
, {
"patchline" : {
"destination" : [ "obj-77", 0 ],
"source" : [ "obj-20", 0 ]
}
}
, {
"patchline" : {
@ -3223,19 +3389,10 @@
"source" : [ "obj-42", 0 ]
}
}
, {
"patchline" : {
"destination" : [ "obj-142", 0 ],
"order" : 1,
"source" : [ "obj-44", 0 ]
}
}
, {
"patchline" : {
"destination" : [ "obj-56", 0 ],
"order" : 0,
"source" : [ "obj-44", 0 ]
}
@ -3255,6 +3412,13 @@
"source" : [ "obj-45", 0 ]
}
}
, {
"patchline" : {
"destination" : [ "obj-73", 0 ],
"source" : [ "obj-46", 0 ]
}
}
, {
"patchline" : {
@ -3283,6 +3447,13 @@
"source" : [ "obj-53", 0 ]
}
}
, {
"patchline" : {
"destination" : [ "obj-72", 1 ],
"source" : [ "obj-55", 0 ]
}
}
, {
"patchline" : {
@ -3297,6 +3468,13 @@
"source" : [ "obj-57", 0 ]
}
}
, {
"patchline" : {
"destination" : [ "obj-20", 0 ],
"source" : [ "obj-58", 0 ]
}
}
, {
"patchline" : {
@ -3367,6 +3545,13 @@
"source" : [ "obj-60", 0 ]
}
}
, {
"patchline" : {
"destination" : [ "obj-55", 1 ],
"source" : [ "obj-61", 0 ]
}
}
, {
"patchline" : {
@ -3374,6 +3559,20 @@
"source" : [ "obj-65", 0 ]
}
}
, {
"patchline" : {
"destination" : [ "obj-61", 0 ],
"source" : [ "obj-66", 1 ]
}
}
, {
"patchline" : {
"destination" : [ "obj-99", 0 ],
"source" : [ "obj-66", 0 ]
}
}
, {
"patchline" : {
@ -3391,7 +3590,7 @@
}
, {
"patchline" : {
"destination" : [ "obj-71", 0 ],
"destination" : [ "obj-92", 0 ],
"source" : [ "obj-69", 0 ]
}
@ -3412,15 +3611,29 @@
}
, {
"patchline" : {
"destination" : [ "obj-25", 0 ],
"source" : [ "obj-7", 0 ]
"destination" : [ "obj-20", 0 ],
"source" : [ "obj-71", 0 ]
}
}
, {
"patchline" : {
"destination" : [ "obj-20", 0 ],
"source" : [ "obj-71", 0 ]
"destination" : [ "obj-94", 0 ],
"source" : [ "obj-72", 0 ]
}
}
, {
"patchline" : {
"destination" : [ "obj-55", 0 ],
"source" : [ "obj-73", 1 ]
}
}
, {
"patchline" : {
"destination" : [ "obj-72", 0 ],
"source" : [ "obj-73", 0 ]
}
}
@ -3451,6 +3664,13 @@
"source" : [ "obj-75", 1 ]
}
}
, {
"patchline" : {
"destination" : [ "obj-84", 0 ],
"source" : [ "obj-77", 0 ]
}
}
, {
"patchline" : {
@ -3479,6 +3699,13 @@
"source" : [ "obj-83", 1 ]
}
}
, {
"patchline" : {
"destination" : [ "obj-197", 0 ],
"source" : [ "obj-84", 0 ]
}
}
, {
"patchline" : {
@ -3523,6 +3750,56 @@
"source" : [ "obj-91", 1 ]
}
}
, {
"patchline" : {
"destination" : [ "obj-58", 0 ],
"source" : [ "obj-92", 1 ]
}
}
, {
"patchline" : {
"destination" : [ "obj-71", 0 ],
"source" : [ "obj-92", 0 ]
}
}
, {
"patchline" : {
"destination" : [ "obj-97", 0 ],
"source" : [ "obj-93", 0 ]
}
}
, {
"patchline" : {
"destination" : [ "obj-93", 0 ],
"midpoints" : [ 813.5, 381.0, 789.0, 381.0, 789.0, 108.0, 813.5, 108.0 ],
"source" : [ "obj-94", 0 ]
}
}
, {
"patchline" : {
"destination" : [ "obj-46", 0 ],
"source" : [ "obj-96", 0 ]
}
}
, {
"patchline" : {
"destination" : [ "obj-96", 0 ],
"source" : [ "obj-97", 0 ]
}
}
, {
"patchline" : {
"destination" : [ "obj-93", 0 ],
"source" : [ "obj-99", 0 ]
}
}
],
"bgcolor" : [ 0.611764705882353, 0.776470588235294, 0.905882352941176, 1.0 ],

Loading…
Cancel
Save