From 55dfc2088579942d8b902b810012011e8fdb6e4a Mon Sep 17 00:00:00 2001 From: mwinter Date: Thu, 16 Nov 2023 20:22:47 +0000 Subject: [PATCH] final state before opening --- openstagecontrol/stepper_control_gui_v2.json | 20 +- ...tepper_control_gui_v2_public_automate.json | 84 +- .../stepper_control_gui_v2_public_sub.json | 1055 +++++++++++++++++ .../stepper_control_gui_v2_sub.json | 1037 ++++++++++++++++ python/vernier_tracker.py | 4 +- supercollider/installation_audio_player.scd | 35 +- supercollider/installation_control_v2.scd | 61 +- 7 files changed, 2258 insertions(+), 38 deletions(-) create mode 100644 openstagecontrol/stepper_control_gui_v2_public_sub.json create mode 100644 openstagecontrol/stepper_control_gui_v2_sub.json diff --git a/openstagecontrol/stepper_control_gui_v2.json b/openstagecontrol/stepper_control_gui_v2.json index 0a5b6f0..aff37dd 100644 --- a/openstagecontrol/stepper_control_gui_v2.json +++ b/openstagecontrol/stepper_control_gui_v2.json @@ -411,7 +411,7 @@ "decoupled": false, "typeTags": "", "ignoreDefaults": false, - "onCreate": "function shuffle(array) {\n let currentIndex = array.length, randomIndex;\n\n // While there remain elements to shuffle.\n while (currentIndex > 0) {\n\n // Pick a remaining element.\n randomIndex = Math.floor(Math.random() * currentIndex);\n currentIndex--;\n\n // And swap it with the current element.\n [array[currentIndex], array[randomIndex]] = [\n array[randomIndex], array[currentIndex]];\n }\n\n return array;\n}\n\nset(\"automate\", false)\n\nvar imageShuffle = shuffle([1, 2, 3, 4, 5, 6, 7, 8, 9])\nvar time = 0;\nvar imageCount = 0;\nvar imageInterval = 60 * 2\nvar automateInterval = setInterval(function() {\n if(get(\"automate_play\") !== 0){\n //set(\"lock\", false)\n //set(\"automate\", true)\n //var curImageTime = (time % (60 * 3))\n if(time === imageInterval){\n imageCount = imageCount + 1;\n set(\"img_\" + imageShuffle[imageCount] + \"_select\", imageShuffle[imageCount])\n if(imageCount === 8){\n imageShuffle = shuffle([1, 2, 3, 4, 5, 6, 7, 8, 9])\n }\n time = 0\n }\n \n time = time + 1\n set(\"message\", \"another tiling/message will be selected in \" + (imageInterval - time) + \" seconds\")\n set(\"message_public\", \"another tiling/message will be selected in \" + (imageInterval - time) + \" seconds\")\n }\n \n}, 1000);", + "onCreate": "function shuffle(array) {\n let currentIndex = array.length, randomIndex;\n\n // While there remain elements to shuffle.\n while (currentIndex > 0) {\n\n // Pick a remaining element.\n randomIndex = Math.floor(Math.random() * currentIndex);\n currentIndex--;\n\n // And swap it with the current element.\n [array[currentIndex], array[randomIndex]] = [\n array[randomIndex], array[currentIndex]];\n }\n\n return array;\n}\n\nset(\"automate\", false)\n\nvar imageShuffle = shuffle([1, 2, 3, 4, 5, 6, 7, 8, 9])\nvar imageDurs = [10, 10, 5, 10, 5, 10, 5, 10, 10]\nvar time = 0;\nvar imageCount = 0;\nvar imageInterval = 0\nvar automateInterval = setInterval(function() {\n if(get(\"automate_play\") !== 0){\n //set(\"lock\", false)\n //set(\"automate\", true)\n //var curImageTime = (time % (60 * 3))\n if(time === imageInterval){\n imageCount = imageCount + 1;\n set(\"img_\" + imageShuffle[imageCount] + \"_select\", imageShuffle[imageCount])\n if(imageCount === 8){\n imageShuffle = shuffle([1, 2, 3, 4, 5, 6, 7, 8, 9])\n }\n time = 0\n imageInterval = imageDurs[imageShuffle[imageCount] - 1] * 60\n }\n \n time = time + 1\n set(\"message\", \"another tiling/message will be selected in \" + (imageInterval - time) + \" seconds\")\n set(\"message_public\", \"another tiling/message will be selected in \" + (imageInterval - time) + \" seconds\")\n set(\"message_sub\", \"another tiling/message will be selected in \" + (imageInterval - time) + \" seconds\")\n }\n \n}, 1000);", "onValue": "if(get(\"automate_play\") !== 0){\n set(\"lock\", false)\n set(\"automate\", true)\n} else {\n set(\"lock\", true)\n set(\"automate\", false)\n }" } ], @@ -963,6 +963,24 @@ "bypass": false, "onCreate": "", "onValue": "" + }, + { + "type": "variable", + "lock": false, + "id": "message_sub", + "comments": "", + "value": "", + "default": "", + "linkId": "", + "address": "auto", + "preArgs": "", + "typeTags": "", + "decimals": 2, + "target": "", + "ignoreDefaults": false, + "bypass": false, + "onCreate": "", + "onValue": "" } ], "tabs": [], diff --git a/openstagecontrol/stepper_control_gui_v2_public_automate.json b/openstagecontrol/stepper_control_gui_v2_public_automate.json index c966a1b..6324402 100644 --- a/openstagecontrol/stepper_control_gui_v2_public_automate.json +++ b/openstagecontrol/stepper_control_gui_v2_public_automate.json @@ -37,7 +37,7 @@ "id": "main_panel", "linkId": "", "width": 520, - "height": 480, + "height": 530, "css": "> .panel {\n background-color: black;\n border: 2px solid grey;\n}\n:host {\n top:calc(50% - 156rem);\n left:calc(50% - 251rem);\n z-index:15;\n font-size: 125%;\n}", "scroll": true, "default": "", @@ -533,6 +533,88 @@ "bypass": false, "onCreate": "", "onValue": "" + }, + { + "type": "button", + "top": 480, + "left": 250, + "id": "automate_play", + "linkId": "", + "width": 30, + "height": 30, + "label": "#{\n@{this} == 1 ? \"^stop\" : \"^play\"\n}", + "css": ":host{\n--color-raised:#2A2A2D;\n> .label {\nfont-size: 150%;\n}", + "doubleTap": false, + "on": 1, + "off": 0, + "value": "", + "address": "/automate_play", + "preArgs": "", + "target": "", + "bypass": false, + "default": "", + "decimals": 1, + "colorWidget": "grey", + "mode": "toggle", + "lock": false, + "visible": false, + "interaction": true, + "comments": "", + "expand": "false", + "colorText": "auto", + "colorStroke": "auto", + "colorFill": "auto", + "alphaStroke": "auto", + "alphaFillOff": "auto", + "alphaFillOn": "auto", + "lineWidth": "auto", + "borderRadius": "auto", + "padding": "auto", + "html": "", + "colorTextOn": "auto", + "vertical": false, + "wrap": false, + "decoupled": false, + "typeTags": "", + "ignoreDefaults": false, + "onCreate": "function shuffle(array) {\n let currentIndex = array.length, randomIndex;\n\n // While there remain elements to shuffle.\n while (currentIndex > 0) {\n\n // Pick a remaining element.\n randomIndex = Math.floor(Math.random() * currentIndex);\n currentIndex--;\n\n // And swap it with the current element.\n [array[currentIndex], array[randomIndex]] = [\n array[randomIndex], array[currentIndex]];\n }\n\n return array;\n}\n\nset(\"automate\", false)\n\nvar imageShuffle = shuffle([1, 2, 3, 4, 5, 6, 7, 8, 9])\nvar imageDurs = [6, 6, 3, 6, 3, 6, 3, 6, 6]\nvar time = 0;\nvar imageCount = 0;\nvar imageInterval = 0\nvar automateInterval = setInterval(function() {\n if(get(\"automate_play\") !== 0){\n //set(\"lock\", false)\n //set(\"automate\", true)\n //var curImageTime = (time % (60 * 3))\n if(time === imageInterval){\n imageCount = imageCount + 1;\n set(\"img_\" + imageShuffle[imageCount] + \"_select\", imageShuffle[imageCount])\n if(imageCount === 8){\n imageShuffle = shuffle([1, 2, 3, 4, 5, 6, 7, 8, 9])\n }\n time = 0\n imageInterval = imageDurs[imageShuffle[imageCount] - 1] * 60\n }\n \n time = time + 1\n set(\"message\", \"another tiling/message will be selected in \" + (imageInterval - time) + \" seconds\")\n set(\"message_public\", \"another tiling/message will be selected in \" + (imageInterval - time) + \" seconds\")\n set(\"message_sub\", \"another tiling/message will be selected in \" + (imageInterval - time) + \" seconds\")\n }\n \n}, 1000);", + "onValue": "if(get(\"automate_play\") !== 0){\n set(\"lock\", false)\n set(\"automate\", true)\n} else {\n set(\"lock\", true)\n set(\"automate\", false)\n }" + }, + { + "type": "variable", + "lock": false, + "id": "message_public", + "comments": "", + "value": "", + "default": "", + "linkId": "", + "address": "auto", + "preArgs": "", + "typeTags": "", + "decimals": 2, + "target": "", + "ignoreDefaults": false, + "bypass": false, + "onCreate": "", + "onValue": "" + }, + { + "type": "variable", + "lock": false, + "id": "message_sub", + "comments": "", + "value": "", + "default": "", + "linkId": "", + "address": "auto", + "preArgs": "", + "typeTags": "", + "decimals": 2, + "target": "", + "ignoreDefaults": false, + "bypass": false, + "onCreate": "", + "onValue": "" } ], "tabs": [], diff --git a/openstagecontrol/stepper_control_gui_v2_public_sub.json b/openstagecontrol/stepper_control_gui_v2_public_sub.json new file mode 100644 index 0000000..51a7c38 --- /dev/null +++ b/openstagecontrol/stepper_control_gui_v2_public_sub.json @@ -0,0 +1,1055 @@ +{ + "createdWith": "Open Stage Control", + "version": "1.25.2", + "type": "session", + "content": { + "type": "root", + "id": "root", + "linkId": "", + "css": "", + "default": "", + "value": "", + "address": "/root", + "preArgs": "", + "target": "", + "bypass": false, + "traversing": false, + "variables": {}, + "tabs": [ + { + "type": "tab", + "id": "main_tab", + "linkId": "", + "label": "a history of the domino problem", + "css": ":root {\n--color-bg: black;\n--color-raised: black;\n--color-accent: grey;\n--color-light: grey;\n}", + "default": "", + "value": "", + "address": "/tab_1", + "preArgs": "", + "target": "", + "bypass": false, + "variables": "@{parent.variables}", + "widgets": [ + { + "type": "panel", + "top": "auto", + "left": "auto", + "id": "main_panel", + "linkId": "", + "width": 500, + "height": 390, + "css": "> .panel {\n background-color: black;\n border: 2px solid grey;\n}\n:host {\n top:calc(50% - 156rem);\n left:calc(50% - 251rem);\n z-index:15;\n}", + "scroll": true, + "default": "", + "value": "", + "address": "/main_panel", + "preArgs": "", + "target": "", + "bypass": true, + "variables": "@{parent.variables}", + "widgets": [ + { + "type": "text", + "top": 250, + "left": 30, + "id": "message", + "linkId": "", + "width": 450, + "height": 50, + "css": ".text {\n background-color: black;\n border: 1px solid grey;\n}", + "default": " ", + "value": "", + "address": "/message", + "preArgs": "", + "decimals": 2, + "colorWidget": "white", + "lock": false, + "visible": true, + "comments": "", + "expand": "false", + "colorText": "auto", + "colorStroke": "auto", + "colorFill": "auto", + "alphaStroke": "auto", + "alphaFillOff": "auto", + "alphaFillOn": "auto", + "lineWidth": "auto", + "borderRadius": "auto", + "padding": "auto", + "html": "", + "target": "", + "onCreate": "", + "onValue": "", + "vertical": false, + "wrap": false, + "align": "center" + }, + { + "type": "text", + "top": 325, + "left": 30, + "id": "pos_message", + "linkId": "", + "width": 450, + "height": 50, + "css": ".text {\n background-color: black;\n border: 1px solid grey;\n}", + "default": " ", + "value": "", + "address": "/pos_message", + "preArgs": "", + "decimals": 2, + "colorWidget": "white", + "lock": false, + "visible": true, + "comments": "", + "expand": "false", + "colorText": "auto", + "colorStroke": "auto", + "colorFill": "auto", + "alphaStroke": "auto", + "alphaFillOff": "auto", + "alphaFillOn": "auto", + "lineWidth": "auto", + "borderRadius": "auto", + "padding": "auto", + "html": "", + "target": "", + "onCreate": "", + "onValue": "", + "vertical": false, + "wrap": false, + "align": "center" + }, + { + "type": "panel", + "top": 10, + "left": 248, + "id": "jog", + "linkId": "", + "width": 240, + "height": 240, + "css": ".panel {\n background-color: black;\n border: 2px solid grey;\n}", + "value": "", + "address": "/jog", + "preArgs": "", + "target": "", + "bypass": true, + "scroll": false, + "default": "", + "variables": "@{parent.variables}", + "widgets": [ + { + "type": "button", + "top": 200, + "left": 200, + "id": "img_5_calibrate", + "linkId": "", + "width": 30, + "height": 30, + "label": "C", + "css": ":host{\n--color-raised:grey;\n}", + "doubleTap": false, + "on": 5, + "off": 0, + "value": "", + "address": "/img_calibrate", + "preArgs": "", + "target": "", + "bypass": false, + "decimals": 2, + "mode": "push", + "lock": false, + "visible": true, + "interaction": true, + "comments": "", + "expand": "false", + "colorText": "auto", + "colorWidget": "auto", + "colorStroke": "auto", + "colorFill": "auto", + "alphaStroke": "auto", + "alphaFillOff": "auto", + "alphaFillOn": "auto", + "lineWidth": "auto", + "borderRadius": "auto", + "padding": "auto", + "html": "", + "colorTextOn": "auto", + "vertical": false, + "wrap": false, + "decoupled": false, + "default": "", + "typeTags": "", + "ignoreDefaults": false, + "onCreate": "", + "onValue": "" + }, + { + "type": "button", + "top": 150, + "left": 90, + "id": "jog_down", + "linkId": "", + "width": 60, + "height": 60, + "label": "^arrow-alt-circle-down", + "css": ":host{\n--color-raised:#2A2A2D;\n}\n> .label {\nfont-size: 300%;\n}", + "doubleTap": false, + "on": -1, + "off": 0, + "value": "", + "address": "/jog_vertical", + "preArgs": "", + "target": "", + "bypass": false, + "decimals": 1, + "mode": "push", + "lock": false, + "visible": true, + "interaction": true, + "comments": "", + "expand": "false", + "colorText": "auto", + "colorWidget": "auto", + "colorStroke": "auto", + "colorFill": "auto", + "alphaStroke": "auto", + "alphaFillOff": "auto", + "alphaFillOn": "auto", + "lineWidth": "auto", + "borderRadius": "auto", + "padding": "auto", + "html": "", + "colorTextOn": "auto", + "vertical": false, + "wrap": false, + "decoupled": false, + "default": "", + "typeTags": "", + "ignoreDefaults": false, + "onCreate": "", + "onValue": "" + }, + { + "type": "button", + "top": 90, + "left": 150, + "id": "jog_right", + "linkId": "", + "width": 60, + "height": 60, + "label": "^arrow-alt-circle-right", + "css": ":host{\n--color-raised:#2A2A2D;\n}\n> .label {\nfont-size: 300%;\n}", + "doubleTap": false, + "on": 1, + "off": 0, + "value": "", + "address": "/jog_horizontal", + "preArgs": "", + "target": "", + "bypass": false, + "decimals": 1, + "mode": "push", + "lock": false, + "visible": true, + "interaction": true, + "comments": "", + "expand": "false", + "colorText": "auto", + "colorWidget": "auto", + "colorStroke": "auto", + "colorFill": "auto", + "alphaStroke": "auto", + "alphaFillOff": "auto", + "alphaFillOn": "auto", + "lineWidth": "auto", + "borderRadius": "auto", + "padding": "auto", + "html": "", + "colorTextOn": "auto", + "vertical": false, + "wrap": false, + "decoupled": false, + "default": "", + "typeTags": "", + "ignoreDefaults": false, + "onCreate": "", + "onValue": "" + }, + { + "type": "button", + "top": 90, + "left": 30, + "id": "jog_left", + "linkId": "", + "width": 60, + "height": 60, + "label": "^arrow-alt-circle-left", + "css": ":host{\n--color-raised:#2A2A2D;\n}\n> .label {\nfont-size: 300%;\n}", + "doubleTap": false, + "on": -1, + "off": 0, + "value": "", + "address": "/jog_horizontal", + "preArgs": "", + "target": "", + "bypass": false, + "decimals": 1, + "mode": "push", + "lock": false, + "visible": true, + "interaction": true, + "comments": "", + "expand": "false", + "colorText": "auto", + "colorWidget": "auto", + "colorStroke": "auto", + "colorFill": "auto", + "alphaStroke": "auto", + "alphaFillOff": "auto", + "alphaFillOn": "auto", + "lineWidth": "auto", + "borderRadius": "auto", + "padding": "auto", + "html": "", + "colorTextOn": "auto", + "vertical": false, + "wrap": false, + "decoupled": false, + "default": "", + "typeTags": "", + "ignoreDefaults": false, + "onCreate": "", + "onValue": "" + }, + { + "type": "button", + "top": 30, + "left": 90, + "id": "jog_up", + "linkId": "", + "width": 60, + "height": 60, + "label": "^arrow-alt-circle-up", + "css": ":host{\n--color-raised:#2A2A2D;\n}\n> .label {\nfont-size: 300%;\n}", + "doubleTap": false, + "on": 1, + "off": 0, + "value": "", + "address": "/jog_vertical", + "preArgs": "", + "target": "", + "bypass": false, + "default": "", + "decimals": 1, + "colorWidget": "auto", + "mode": "push", + "lock": false, + "visible": true, + "interaction": true, + "comments": "", + "expand": "false", + "colorText": "auto", + "colorStroke": "auto", + "colorFill": "auto", + "alphaStroke": "auto", + "alphaFillOff": "auto", + "alphaFillOn": "auto", + "lineWidth": "auto", + "borderRadius": "auto", + "padding": "auto", + "html": "", + "colorTextOn": "auto", + "vertical": false, + "wrap": false, + "decoupled": false, + "typeTags": "", + "ignoreDefaults": false, + "onCreate": "", + "onValue": "" + }, + { + "type": "button", + "top": 160, + "left": 200, + "id": "automate_play", + "linkId": "", + "width": 30, + "height": 30, + "label": "#{\n@{this} == 1 ? \"^stop\" : \"^play\"\n}", + "css": ":host{\n--color-raised:#2A2A2D;\n> .label {\nfont-size: 150%;\n}", + "doubleTap": false, + "on": 1, + "off": 0, + "value": "", + "address": "/automate_play", + "preArgs": "", + "target": "", + "bypass": false, + "default": "", + "decimals": 1, + "colorWidget": "grey", + "mode": "toggle", + "lock": false, + "visible": true, + "interaction": true, + "comments": "", + "expand": "false", + "colorText": "auto", + "colorStroke": "auto", + "colorFill": "auto", + "alphaStroke": "auto", + "alphaFillOff": "auto", + "alphaFillOn": "auto", + "lineWidth": "auto", + "borderRadius": "auto", + "padding": "auto", + "html": "", + "colorTextOn": "auto", + "vertical": false, + "wrap": false, + "decoupled": false, + "typeTags": "", + "ignoreDefaults": false, + "onCreate": "", + "onValue": "if(get(\"automate_play\") !== 0){\n set(\"lock\", false)\n set(\"automate\", true)\n} else {\n set(\"lock\", true)\n set(\"automate\", false)\n }" + } + ], + "tabs": [], + "decimals": 2, + "innerPadding": false, + "padding": 0, + "alphaStroke": 0, + "lock": false, + "visible": true, + "interaction": true, + "comments": "", + "expand": "false", + "colorText": "auto", + "colorWidget": "auto", + "colorStroke": "auto", + "colorFill": "auto", + "alphaFillOff": "auto", + "alphaFillOn": "auto", + "lineWidth": "auto", + "borderRadius": "auto", + "html": "", + "colorBg": "auto", + "layout": "default", + "justify": "start", + "gridTemplate": "", + "contain": true, + "tabsPosition": "top", + "traversing": false, + "typeTags": "", + "ignoreDefaults": false, + "onCreate": "", + "onValue": "" + }, + { + "type": "panel", + "top": 10, + "left": 10, + "id": "img_matrix", + "linkId": "", + "width": 240, + "height": 240, + "css": ".panel {\n background-color: black;\n border: 2px solid grey;\n}", + "scroll": false, + "default": "", + "value": "", + "address": "/image_select", + "preArgs": "", + "target": "", + "bypass": true, + "variables": "@{parent.variables}", + "widgets": [ + { + "type": "button", + "top": 20, + "left": 20, + "id": "img_1_select", + "linkId": "", + "width": 40, + "height": 40, + "label": false, + "css": ":host{\n--color-raised:#2A2A2D;\n}\n:host.on{\n--color-bg:white;\n}", + "doubleTap": false, + "on": 1, + "off": -1, + "default": "", + "value": "", + "address": "/img_select", + "preArgs": "", + "target": "", + "bypass": false, + "decimals": 2, + "mode": "toggle", + "lock": false, + "visible": true, + "interaction": true, + "comments": "", + "expand": "false", + "colorText": "auto", + "colorWidget": "auto", + "colorStroke": "auto", + "colorFill": "auto", + "alphaStroke": "auto", + "alphaFillOff": "auto", + "alphaFillOn": "auto", + "lineWidth": "auto", + "borderRadius": "auto", + "padding": "auto", + "html": "", + "colorTextOn": "auto", + "vertical": false, + "wrap": false, + "decoupled": false, + "typeTags": "", + "ignoreDefaults": false, + "onCreate": "", + "onValue": "" + }, + { + "type": "button", + "top": 20, + "left": 100, + "id": "img_2_select", + "linkId": "", + "width": 40, + "height": 40, + "label": false, + "css": ":host{\n--color-raised:#2A2A2D;\n}\n:host.on{\n--color-bg:white;\n}", + "doubleTap": false, + "on": 2, + "off": -2, + "default": "", + "value": "", + "address": "/img_select", + "preArgs": "", + "target": "", + "bypass": false, + "decimals": 2, + "mode": "toggle", + "lock": false, + "visible": true, + "interaction": true, + "comments": "", + "expand": "false", + "colorText": "auto", + "colorWidget": "auto", + "colorStroke": "auto", + "colorFill": "auto", + "alphaStroke": "auto", + "alphaFillOff": "auto", + "alphaFillOn": "auto", + "lineWidth": "auto", + "borderRadius": "auto", + "padding": "auto", + "html": "", + "colorTextOn": "auto", + "vertical": false, + "wrap": false, + "decoupled": false, + "typeTags": "", + "ignoreDefaults": false, + "onCreate": "", + "onValue": "" + }, + { + "type": "button", + "top": 20, + "left": 180, + "id": "img_3_select", + "linkId": "", + "width": 40, + "height": 40, + "label": false, + "css": ":host{\n--color-raised:#2A2A2D;\n}\n:host.on{\n--color-bg:white;\n}", + "doubleTap": false, + "on": 3, + "off": -3, + "default": "", + "value": "", + "address": "/img_select", + "preArgs": "", + "target": "", + "bypass": false, + "decimals": 2, + "mode": "toggle", + "lock": false, + "visible": true, + "interaction": true, + "comments": "", + "expand": "false", + "colorText": "auto", + "colorWidget": "auto", + "colorStroke": "auto", + "colorFill": "auto", + "alphaStroke": "auto", + "alphaFillOff": "auto", + "alphaFillOn": "auto", + "lineWidth": "auto", + "borderRadius": "auto", + "padding": "auto", + "html": "", + "colorTextOn": "auto", + "vertical": false, + "wrap": false, + "decoupled": false, + "typeTags": "", + "ignoreDefaults": false, + "onCreate": "", + "onValue": "" + }, + { + "type": "button", + "top": 100, + "left": 20, + "id": "img_4_select", + "linkId": "", + "width": 40, + "height": 40, + "label": false, + "css": ":host{\n--color-raised:#2A2A2D;\n}\n:host.on{\n--color-bg:white;\n}", + "doubleTap": false, + "on": 4, + "off": -4, + "default": "", + "value": "", + "address": "/img_select", + "preArgs": "", + "target": "", + "bypass": false, + "decimals": 2, + "mode": "toggle", + "lock": false, + "visible": true, + "interaction": true, + "comments": "", + "expand": "false", + "colorText": "auto", + "colorWidget": "auto", + "colorStroke": "auto", + "colorFill": "auto", + "alphaStroke": "auto", + "alphaFillOff": "auto", + "alphaFillOn": "auto", + "lineWidth": "auto", + "borderRadius": "auto", + "padding": "auto", + "html": "", + "colorTextOn": "auto", + "vertical": false, + "wrap": false, + "decoupled": false, + "typeTags": "", + "ignoreDefaults": false, + "onCreate": "", + "onValue": "" + }, + { + "type": "button", + "top": 180, + "left": 20, + "id": "img_7_select", + "linkId": "", + "width": 40, + "height": 40, + "label": false, + "css": ":host{\n--color-raised:#2A2A2D;\n}\n:host.on{\n--color-bg:white;\n}", + "doubleTap": false, + "on": 7, + "off": -7, + "default": "", + "value": "", + "address": "/img_select", + "preArgs": "", + "target": "", + "bypass": false, + "decimals": 2, + "mode": "toggle", + "lock": false, + "visible": true, + "interaction": true, + "comments": "", + "expand": "false", + "colorText": "auto", + "colorWidget": "auto", + "colorStroke": "auto", + "colorFill": "auto", + "alphaStroke": "auto", + "alphaFillOff": "auto", + "alphaFillOn": "auto", + "lineWidth": "auto", + "borderRadius": "auto", + "padding": "auto", + "html": "", + "colorTextOn": "auto", + "vertical": false, + "wrap": false, + "decoupled": false, + "typeTags": "", + "ignoreDefaults": false, + "onCreate": "", + "onValue": "" + }, + { + "type": "button", + "top": 100, + "left": 100, + "id": "img_5_select", + "linkId": "", + "width": 40, + "height": 40, + "css": ":host{\n--color-raised:#2A2A2D;\n}\n:host.on{\n--color-bg:white;\n}", + "default": "", + "value": "", + "address": "/img_select", + "preArgs": "", + "target": "", + "bypass": false, + "decimals": 2, + "mode": "toggle", + "lock": false, + "visible": true, + "interaction": true, + "comments": "", + "expand": "false", + "colorText": "auto", + "colorWidget": "auto", + "colorStroke": "auto", + "colorFill": "auto", + "alphaStroke": "auto", + "alphaFillOff": "auto", + "alphaFillOn": "auto", + "lineWidth": "auto", + "borderRadius": "auto", + "padding": "auto", + "html": "", + "colorTextOn": "auto", + "wrap": false, + "typeTags": "", + "ignoreDefaults": false, + "onCreate": "", + "onValue": "", + "label": false, + "doubleTap": false, + "on": 5, + "off": -5, + "vertical": false, + "decoupled": false + }, + { + "type": "button", + "top": 100, + "left": 180, + "id": "img_6_select", + "linkId": "", + "width": 40, + "height": 40, + "label": false, + "css": ":host{\n--color-raised:#2A2A2D;\n}\n:host.on{\n--color-bg:white;\n}", + "doubleTap": false, + "on": 6, + "off": -6, + "default": "", + "value": "", + "address": "/img_select", + "preArgs": "", + "target": "", + "bypass": false, + "decimals": 2, + "mode": "toggle", + "lock": false, + "visible": true, + "interaction": true, + "comments": "", + "expand": "false", + "colorText": "auto", + "colorWidget": "auto", + "colorStroke": "auto", + "colorFill": "auto", + "alphaStroke": "auto", + "alphaFillOff": "auto", + "alphaFillOn": "auto", + "lineWidth": "auto", + "borderRadius": "auto", + "padding": "auto", + "html": "", + "colorTextOn": "auto", + "vertical": false, + "wrap": false, + "decoupled": false, + "typeTags": "", + "ignoreDefaults": false, + "onCreate": "", + "onValue": "" + }, + { + "type": "button", + "top": 180, + "left": 100, + "id": "img_8_select", + "linkId": "", + "width": 40, + "height": 40, + "label": false, + "css": ":host{\n--color-raised:#2A2A2D;\n}\n:host.on{\n--color-bg:white;\n}", + "doubleTap": false, + "on": 8, + "off": -8, + "default": "", + "value": "", + "address": "/img_select", + "preArgs": "", + "target": "", + "bypass": false, + "decimals": 2, + "mode": "toggle", + "lock": false, + "visible": true, + "interaction": true, + "comments": "", + "expand": "false", + "colorText": "auto", + "colorWidget": "auto", + "colorStroke": "auto", + "colorFill": "auto", + "alphaStroke": "auto", + "alphaFillOff": "auto", + "alphaFillOn": "auto", + "lineWidth": "auto", + "borderRadius": "auto", + "padding": "auto", + "html": "", + "colorTextOn": "auto", + "vertical": false, + "wrap": false, + "decoupled": false, + "typeTags": "", + "ignoreDefaults": false, + "onCreate": "", + "onValue": "" + }, + { + "type": "button", + "top": 180, + "left": 180, + "id": "img_9_select", + "linkId": "", + "width": 40, + "height": 40, + "label": false, + "css": ":host{\n--color-raised:#2A2A2D;\n}\n:host.on{\n--color-bg:white;\n}", + "doubleTap": false, + "on": 9, + "off": -9, + "default": "", + "value": "", + "address": "/img_select", + "preArgs": "", + "target": "", + "bypass": false, + "decimals": 2, + "mode": "toggle", + "lock": false, + "visible": true, + "interaction": true, + "comments": "", + "expand": "false", + "colorText": "auto", + "colorWidget": "auto", + "colorStroke": "auto", + "colorFill": "auto", + "alphaStroke": "auto", + "alphaFillOff": "auto", + "alphaFillOn": "auto", + "lineWidth": "auto", + "borderRadius": "auto", + "padding": "auto", + "html": "", + "colorTextOn": "auto", + "vertical": false, + "wrap": false, + "decoupled": false, + "typeTags": "", + "ignoreDefaults": false, + "onCreate": "", + "onValue": "" + } + ], + "tabs": [], + "decimals": 2, + "innerPadding": false, + "padding": 0, + "alphaStroke": 0, + "lock": false, + "visible": true, + "interaction": true, + "comments": "", + "expand": "false", + "colorText": "auto", + "colorWidget": "auto", + "colorStroke": "auto", + "colorFill": "auto", + "alphaFillOff": "auto", + "alphaFillOn": "auto", + "lineWidth": "auto", + "borderRadius": "auto", + "html": "", + "colorBg": "auto", + "layout": "default", + "justify": "start", + "gridTemplate": "", + "contain": true, + "tabsPosition": "top", + "traversing": false, + "typeTags": "", + "ignoreDefaults": false, + "onCreate": "", + "onValue": "" + }, + { + "type": "variable", + "lock": false, + "id": "lock", + "comments": "", + "value": 0, + "default": "", + "linkId": "", + "address": "auto", + "preArgs": "", + "typeTags": "", + "decimals": 2, + "target": "", + "ignoreDefaults": false, + "bypass": false, + "onCreate": "", + "onValue": "" + }, + { + "type": "variable", + "lock": false, + "id": "automate", + "comments": "", + "value": "", + "default": "", + "linkId": "", + "address": "auto", + "preArgs": "", + "typeTags": "", + "decimals": 2, + "target": "", + "ignoreDefaults": false, + "bypass": false, + "onCreate": "", + "onValue": "" + }, + { + "type": "variable", + "lock": false, + "id": "message_public", + "comments": "", + "value": "", + "default": "", + "linkId": "", + "address": "auto", + "preArgs": "", + "typeTags": "", + "decimals": 2, + "target": "", + "ignoreDefaults": false, + "bypass": false, + "onCreate": "", + "onValue": "" + } + ], + "tabs": [], + "decimals": 2, + "innerPadding": false, + "padding": 0, + "alphaStroke": 0, + "lock": false, + "visible": true, + "interaction": true, + "comments": "", + "expand": "false", + "colorText": "auto", + "colorWidget": "auto", + "colorStroke": "auto", + "colorFill": "auto", + "alphaFillOff": "auto", + "alphaFillOn": "auto", + "lineWidth": "auto", + "borderRadius": "auto", + "html": "", + "colorBg": "auto", + "layout": "default", + "justify": "start", + "gridTemplate": "", + "contain": true, + "tabsPosition": "top", + "traversing": false, + "typeTags": "", + "ignoreDefaults": false, + "onCreate": "", + "onValue": "" + } + ], + "tabs": [], + "scroll": true, + "decimals": 2, + "colorWidget": "white", + "innerPadding": false, + "padding": 0, + "lock": false, + "visible": true, + "interaction": true, + "comments": "", + "colorText": "auto", + "colorFill": "auto", + "borderRadius": "auto", + "html": "", + "colorBg": "auto", + "layout": "default", + "justify": "start", + "gridTemplate": "", + "contain": true, + "tabsPosition": "top", + "traversing": false, + "typeTags": "", + "ignoreDefaults": false, + "onCreate": "", + "onValue": "" + } + ], + "scroll": true, + "decimals": 2, + "lock": false, + "visible": true, + "interaction": true, + "comments": "", + "width": "auto", + "height": "auto", + "colorText": "auto", + "colorWidget": "auto", + "alphaFillOn": "auto", + "borderRadius": "auto", + "padding": "auto", + "html": "", + "colorBg": "auto", + "layout": "default", + "justify": "start", + "gridTemplate": "", + "contain": true, + "innerPadding": true, + "tabsPosition": "top", + "hideMenu": false, + "typeTags": "", + "ignoreDefaults": false, + "onCreate": "", + "onValue": "", + "widgets": [] + } +} \ No newline at end of file diff --git a/openstagecontrol/stepper_control_gui_v2_sub.json b/openstagecontrol/stepper_control_gui_v2_sub.json new file mode 100644 index 0000000..374ebe8 --- /dev/null +++ b/openstagecontrol/stepper_control_gui_v2_sub.json @@ -0,0 +1,1037 @@ +{ + "createdWith": "Open Stage Control", + "version": "1.25.2", + "type": "session", + "content": { + "type": "root", + "id": "root", + "linkId": "", + "css": "", + "default": "", + "value": "", + "address": "/root", + "preArgs": "", + "target": "", + "bypass": false, + "traversing": false, + "variables": {}, + "tabs": [ + { + "type": "tab", + "id": "main_tab", + "linkId": "", + "label": "a history of the domino problem", + "css": ":root {\n--color-bg: black;\n--color-raised: black;\n--color-accent: grey;\n--color-light: grey;\n}", + "default": "", + "value": "", + "address": "/tab_1", + "preArgs": "", + "target": "", + "bypass": false, + "variables": "@{parent.variables}", + "widgets": [ + { + "type": "panel", + "top": "auto", + "left": "auto", + "id": "main_panel", + "linkId": "", + "width": 500, + "height": 390, + "css": "> .panel {\n background-color: black;\n border: 2px solid grey;\n}\n:host {\n top:calc(50% - 156rem);\n left:calc(50% - 251rem);\n z-index:15;\n}", + "scroll": true, + "default": "", + "value": "", + "address": "/main_panel", + "preArgs": "", + "target": "", + "bypass": true, + "variables": "@{parent.variables}", + "widgets": [ + { + "type": "text", + "top": 250, + "left": 30, + "id": "message_sub", + "linkId": "", + "width": 450, + "height": 50, + "css": ".text {\n background-color: black;\n border: 1px solid grey;\n}", + "default": " ", + "value": "", + "address": "/message_sub", + "preArgs": "", + "decimals": 2, + "colorWidget": "white", + "lock": false, + "visible": true, + "comments": "", + "expand": "false", + "colorText": "auto", + "colorStroke": "auto", + "colorFill": "auto", + "alphaStroke": "auto", + "alphaFillOff": "auto", + "alphaFillOn": "auto", + "lineWidth": "auto", + "borderRadius": "auto", + "padding": "auto", + "html": "", + "target": "", + "onCreate": "", + "onValue": "", + "vertical": false, + "wrap": false, + "align": "center" + }, + { + "type": "text", + "top": 325, + "left": 30, + "id": "pos_message", + "linkId": "", + "width": 450, + "height": 50, + "css": ".text {\n background-color: black;\n border: 1px solid grey;\n}", + "default": " ", + "value": "", + "address": "/pos_message", + "preArgs": "", + "decimals": 2, + "colorWidget": "white", + "lock": false, + "visible": true, + "comments": "", + "expand": "false", + "colorText": "auto", + "colorStroke": "auto", + "colorFill": "auto", + "alphaStroke": "auto", + "alphaFillOff": "auto", + "alphaFillOn": "auto", + "lineWidth": "auto", + "borderRadius": "auto", + "padding": "auto", + "html": "", + "target": "", + "onCreate": "", + "onValue": "", + "vertical": false, + "wrap": false, + "align": "center" + }, + { + "type": "panel", + "top": 10, + "left": 248, + "id": "jog", + "linkId": "", + "width": 240, + "height": 240, + "css": ".panel {\n background-color: black;\n border: 2px solid grey;\n}", + "value": "", + "address": "/jog", + "preArgs": "", + "target": "", + "bypass": true, + "scroll": false, + "default": "", + "variables": "@{parent.variables}", + "widgets": [ + { + "type": "button", + "top": 200, + "left": 200, + "id": "img_5_calibrate", + "linkId": "", + "width": 30, + "height": 30, + "label": "C", + "css": ":host{\n--color-raised:grey;\n}", + "doubleTap": false, + "on": 5, + "off": 0, + "value": "", + "address": "/img_calibrate", + "preArgs": "", + "target": "", + "bypass": false, + "decimals": 2, + "mode": "push", + "lock": false, + "visible": true, + "interaction": true, + "comments": "", + "expand": "false", + "colorText": "auto", + "colorWidget": "auto", + "colorStroke": "auto", + "colorFill": "auto", + "alphaStroke": "auto", + "alphaFillOff": "auto", + "alphaFillOn": "auto", + "lineWidth": "auto", + "borderRadius": "auto", + "padding": "auto", + "html": "", + "colorTextOn": "auto", + "vertical": false, + "wrap": false, + "decoupled": false, + "default": "", + "typeTags": "", + "ignoreDefaults": false, + "onCreate": "", + "onValue": "" + }, + { + "type": "button", + "top": 150, + "left": 90, + "id": "jog_down", + "linkId": "", + "width": 60, + "height": 60, + "label": "^arrow-alt-circle-down", + "css": ":host{\n--color-raised:#2A2A2D;\n}\n> .label {\nfont-size: 300%;\n}", + "doubleTap": false, + "on": -1, + "off": 0, + "value": "", + "address": "/jog_vertical", + "preArgs": "", + "target": "", + "bypass": false, + "decimals": 1, + "mode": "push", + "lock": false, + "visible": true, + "interaction": true, + "comments": "", + "expand": "false", + "colorText": "auto", + "colorWidget": "auto", + "colorStroke": "auto", + "colorFill": "auto", + "alphaStroke": "auto", + "alphaFillOff": "auto", + "alphaFillOn": "auto", + "lineWidth": "auto", + "borderRadius": "auto", + "padding": "auto", + "html": "", + "colorTextOn": "auto", + "vertical": false, + "wrap": false, + "decoupled": false, + "default": "", + "typeTags": "", + "ignoreDefaults": false, + "onCreate": "", + "onValue": "" + }, + { + "type": "button", + "top": 90, + "left": 150, + "id": "jog_right", + "linkId": "", + "width": 60, + "height": 60, + "label": "^arrow-alt-circle-right", + "css": ":host{\n--color-raised:#2A2A2D;\n}\n> .label {\nfont-size: 300%;\n}", + "doubleTap": false, + "on": 1, + "off": 0, + "value": "", + "address": "/jog_horizontal", + "preArgs": "", + "target": "", + "bypass": false, + "decimals": 1, + "mode": "push", + "lock": false, + "visible": true, + "interaction": true, + "comments": "", + "expand": "false", + "colorText": "auto", + "colorWidget": "auto", + "colorStroke": "auto", + "colorFill": "auto", + "alphaStroke": "auto", + "alphaFillOff": "auto", + "alphaFillOn": "auto", + "lineWidth": "auto", + "borderRadius": "auto", + "padding": "auto", + "html": "", + "colorTextOn": "auto", + "vertical": false, + "wrap": false, + "decoupled": false, + "default": "", + "typeTags": "", + "ignoreDefaults": false, + "onCreate": "", + "onValue": "" + }, + { + "type": "button", + "top": 90, + "left": 30, + "id": "jog_left", + "linkId": "", + "width": 60, + "height": 60, + "label": "^arrow-alt-circle-left", + "css": ":host{\n--color-raised:#2A2A2D;\n}\n> .label {\nfont-size: 300%;\n}", + "doubleTap": false, + "on": -1, + "off": 0, + "value": "", + "address": "/jog_horizontal", + "preArgs": "", + "target": "", + "bypass": false, + "decimals": 1, + "mode": "push", + "lock": false, + "visible": true, + "interaction": true, + "comments": "", + "expand": "false", + "colorText": "auto", + "colorWidget": "auto", + "colorStroke": "auto", + "colorFill": "auto", + "alphaStroke": "auto", + "alphaFillOff": "auto", + "alphaFillOn": "auto", + "lineWidth": "auto", + "borderRadius": "auto", + "padding": "auto", + "html": "", + "colorTextOn": "auto", + "vertical": false, + "wrap": false, + "decoupled": false, + "default": "", + "typeTags": "", + "ignoreDefaults": false, + "onCreate": "", + "onValue": "" + }, + { + "type": "button", + "top": 30, + "left": 90, + "id": "jog_up", + "linkId": "", + "width": 60, + "height": 60, + "label": "^arrow-alt-circle-up", + "css": ":host{\n--color-raised:#2A2A2D;\n}\n> .label {\nfont-size: 300%;\n}", + "doubleTap": false, + "on": 1, + "off": 0, + "value": "", + "address": "/jog_vertical", + "preArgs": "", + "target": "", + "bypass": false, + "default": "", + "decimals": 1, + "colorWidget": "auto", + "mode": "push", + "lock": false, + "visible": true, + "interaction": true, + "comments": "", + "expand": "false", + "colorText": "auto", + "colorStroke": "auto", + "colorFill": "auto", + "alphaStroke": "auto", + "alphaFillOff": "auto", + "alphaFillOn": "auto", + "lineWidth": "auto", + "borderRadius": "auto", + "padding": "auto", + "html": "", + "colorTextOn": "auto", + "vertical": false, + "wrap": false, + "decoupled": false, + "typeTags": "", + "ignoreDefaults": false, + "onCreate": "", + "onValue": "" + }, + { + "type": "button", + "top": 160, + "left": 200, + "id": "automate_play", + "linkId": "", + "width": 30, + "height": 30, + "label": "#{\n@{this} == 1 ? \"^stop\" : \"^play\"\n}", + "css": ":host{\n--color-raised:#2A2A2D;\n> .label {\nfont-size: 150%;\n}", + "doubleTap": false, + "on": 1, + "off": 0, + "value": "", + "address": "/automate_play", + "preArgs": "", + "target": "", + "bypass": false, + "default": "", + "decimals": 1, + "colorWidget": "grey", + "mode": "toggle", + "lock": false, + "visible": true, + "interaction": true, + "comments": "", + "expand": "false", + "colorText": "auto", + "colorStroke": "auto", + "colorFill": "auto", + "alphaStroke": "auto", + "alphaFillOff": "auto", + "alphaFillOn": "auto", + "lineWidth": "auto", + "borderRadius": "auto", + "padding": "auto", + "html": "", + "colorTextOn": "auto", + "vertical": false, + "wrap": false, + "decoupled": false, + "typeTags": "", + "ignoreDefaults": false, + "onCreate": "", + "onValue": "if(get(\"automate_play\") !== 0){\n set(\"lock\", false)\n set(\"automate\", true)\n} else {\n set(\"lock\", true)\n set(\"automate\", false)\n }" + } + ], + "tabs": [], + "decimals": 2, + "innerPadding": false, + "padding": 0, + "alphaStroke": 0, + "lock": false, + "visible": true, + "interaction": true, + "comments": "", + "expand": "false", + "colorText": "auto", + "colorWidget": "auto", + "colorStroke": "auto", + "colorFill": "auto", + "alphaFillOff": "auto", + "alphaFillOn": "auto", + "lineWidth": "auto", + "borderRadius": "auto", + "html": "", + "colorBg": "auto", + "layout": "default", + "justify": "start", + "gridTemplate": "", + "contain": true, + "tabsPosition": "top", + "traversing": false, + "typeTags": "", + "ignoreDefaults": false, + "onCreate": "", + "onValue": "" + }, + { + "type": "panel", + "top": 10, + "left": 10, + "id": "img_matrix", + "linkId": "", + "width": 240, + "height": 240, + "css": ".panel {\n background-color: black;\n border: 2px solid grey;\n}", + "scroll": false, + "default": "", + "value": "", + "address": "/image_select", + "preArgs": "", + "target": "", + "bypass": true, + "variables": "@{parent.variables}", + "widgets": [ + { + "type": "button", + "top": 20, + "left": 20, + "id": "img_1_select", + "linkId": "", + "width": 40, + "height": 40, + "label": false, + "css": ":host{\n--color-raised:#2A2A2D;\n}\n:host.on{\n--color-bg:white;\n}", + "doubleTap": false, + "on": 1, + "off": -1, + "default": "", + "value": "", + "address": "/img_select", + "preArgs": "", + "target": "", + "bypass": false, + "decimals": 2, + "mode": "toggle", + "lock": false, + "visible": true, + "interaction": true, + "comments": "", + "expand": "false", + "colorText": "auto", + "colorWidget": "auto", + "colorStroke": "auto", + "colorFill": "auto", + "alphaStroke": "auto", + "alphaFillOff": "auto", + "alphaFillOn": "auto", + "lineWidth": "auto", + "borderRadius": "auto", + "padding": "auto", + "html": "", + "colorTextOn": "auto", + "vertical": false, + "wrap": false, + "decoupled": false, + "typeTags": "", + "ignoreDefaults": false, + "onCreate": "", + "onValue": "" + }, + { + "type": "button", + "top": 20, + "left": 100, + "id": "img_2_select", + "linkId": "", + "width": 40, + "height": 40, + "label": false, + "css": ":host{\n--color-raised:#2A2A2D;\n}\n:host.on{\n--color-bg:white;\n}", + "doubleTap": false, + "on": 2, + "off": -2, + "default": "", + "value": "", + "address": "/img_select", + "preArgs": "", + "target": "", + "bypass": false, + "decimals": 2, + "mode": "toggle", + "lock": false, + "visible": true, + "interaction": true, + "comments": "", + "expand": "false", + "colorText": "auto", + "colorWidget": "auto", + "colorStroke": "auto", + "colorFill": "auto", + "alphaStroke": "auto", + "alphaFillOff": "auto", + "alphaFillOn": "auto", + "lineWidth": "auto", + "borderRadius": "auto", + "padding": "auto", + "html": "", + "colorTextOn": "auto", + "vertical": false, + "wrap": false, + "decoupled": false, + "typeTags": "", + "ignoreDefaults": false, + "onCreate": "", + "onValue": "" + }, + { + "type": "button", + "top": 20, + "left": 180, + "id": "img_3_select", + "linkId": "", + "width": 40, + "height": 40, + "label": false, + "css": ":host{\n--color-raised:#2A2A2D;\n}\n:host.on{\n--color-bg:white;\n}", + "doubleTap": false, + "on": 3, + "off": -3, + "default": "", + "value": "", + "address": "/img_select", + "preArgs": "", + "target": "", + "bypass": false, + "decimals": 2, + "mode": "toggle", + "lock": false, + "visible": true, + "interaction": true, + "comments": "", + "expand": "false", + "colorText": "auto", + "colorWidget": "auto", + "colorStroke": "auto", + "colorFill": "auto", + "alphaStroke": "auto", + "alphaFillOff": "auto", + "alphaFillOn": "auto", + "lineWidth": "auto", + "borderRadius": "auto", + "padding": "auto", + "html": "", + "colorTextOn": "auto", + "vertical": false, + "wrap": false, + "decoupled": false, + "typeTags": "", + "ignoreDefaults": false, + "onCreate": "", + "onValue": "" + }, + { + "type": "button", + "top": 100, + "left": 20, + "id": "img_4_select", + "linkId": "", + "width": 40, + "height": 40, + "label": false, + "css": ":host{\n--color-raised:#2A2A2D;\n}\n:host.on{\n--color-bg:white;\n}", + "doubleTap": false, + "on": 4, + "off": -4, + "default": "", + "value": "", + "address": "/img_select", + "preArgs": "", + "target": "", + "bypass": false, + "decimals": 2, + "mode": "toggle", + "lock": false, + "visible": true, + "interaction": true, + "comments": "", + "expand": "false", + "colorText": "auto", + "colorWidget": "auto", + "colorStroke": "auto", + "colorFill": "auto", + "alphaStroke": "auto", + "alphaFillOff": "auto", + "alphaFillOn": "auto", + "lineWidth": "auto", + "borderRadius": "auto", + "padding": "auto", + "html": "", + "colorTextOn": "auto", + "vertical": false, + "wrap": false, + "decoupled": false, + "typeTags": "", + "ignoreDefaults": false, + "onCreate": "", + "onValue": "" + }, + { + "type": "button", + "top": 180, + "left": 20, + "id": "img_7_select", + "linkId": "", + "width": 40, + "height": 40, + "label": false, + "css": ":host{\n--color-raised:#2A2A2D;\n}\n:host.on{\n--color-bg:white;\n}", + "doubleTap": false, + "on": 7, + "off": -7, + "default": "", + "value": "", + "address": "/img_select", + "preArgs": "", + "target": "", + "bypass": false, + "decimals": 2, + "mode": "toggle", + "lock": false, + "visible": true, + "interaction": true, + "comments": "", + "expand": "false", + "colorText": "auto", + "colorWidget": "auto", + "colorStroke": "auto", + "colorFill": "auto", + "alphaStroke": "auto", + "alphaFillOff": "auto", + "alphaFillOn": "auto", + "lineWidth": "auto", + "borderRadius": "auto", + "padding": "auto", + "html": "", + "colorTextOn": "auto", + "vertical": false, + "wrap": false, + "decoupled": false, + "typeTags": "", + "ignoreDefaults": false, + "onCreate": "", + "onValue": "" + }, + { + "type": "button", + "top": 100, + "left": 100, + "id": "img_5_select", + "linkId": "", + "width": 40, + "height": 40, + "css": ":host{\n--color-raised:#2A2A2D;\n}\n:host.on{\n--color-bg:white;\n}", + "default": "", + "value": "", + "address": "/img_select", + "preArgs": "", + "target": "", + "bypass": false, + "decimals": 2, + "mode": "toggle", + "lock": false, + "visible": true, + "interaction": true, + "comments": "", + "expand": "false", + "colorText": "auto", + "colorWidget": "auto", + "colorStroke": "auto", + "colorFill": "auto", + "alphaStroke": "auto", + "alphaFillOff": "auto", + "alphaFillOn": "auto", + "lineWidth": "auto", + "borderRadius": "auto", + "padding": "auto", + "html": "", + "colorTextOn": "auto", + "wrap": false, + "typeTags": "", + "ignoreDefaults": false, + "onCreate": "", + "onValue": "", + "label": false, + "doubleTap": false, + "on": 5, + "off": -5, + "vertical": false, + "decoupled": false + }, + { + "type": "button", + "top": 100, + "left": 180, + "id": "img_6_select", + "linkId": "", + "width": 40, + "height": 40, + "label": false, + "css": ":host{\n--color-raised:#2A2A2D;\n}\n:host.on{\n--color-bg:white;\n}", + "doubleTap": false, + "on": 6, + "off": -6, + "default": "", + "value": "", + "address": "/img_select", + "preArgs": "", + "target": "", + "bypass": false, + "decimals": 2, + "mode": "toggle", + "lock": false, + "visible": true, + "interaction": true, + "comments": "", + "expand": "false", + "colorText": "auto", + "colorWidget": "auto", + "colorStroke": "auto", + "colorFill": "auto", + "alphaStroke": "auto", + "alphaFillOff": "auto", + "alphaFillOn": "auto", + "lineWidth": "auto", + "borderRadius": "auto", + "padding": "auto", + "html": "", + "colorTextOn": "auto", + "vertical": false, + "wrap": false, + "decoupled": false, + "typeTags": "", + "ignoreDefaults": false, + "onCreate": "", + "onValue": "" + }, + { + "type": "button", + "top": 180, + "left": 100, + "id": "img_8_select", + "linkId": "", + "width": 40, + "height": 40, + "label": false, + "css": ":host{\n--color-raised:#2A2A2D;\n}\n:host.on{\n--color-bg:white;\n}", + "doubleTap": false, + "on": 8, + "off": -8, + "default": "", + "value": "", + "address": "/img_select", + "preArgs": "", + "target": "", + "bypass": false, + "decimals": 2, + "mode": "toggle", + "lock": false, + "visible": true, + "interaction": true, + "comments": "", + "expand": "false", + "colorText": "auto", + "colorWidget": "auto", + "colorStroke": "auto", + "colorFill": "auto", + "alphaStroke": "auto", + "alphaFillOff": "auto", + "alphaFillOn": "auto", + "lineWidth": "auto", + "borderRadius": "auto", + "padding": "auto", + "html": "", + "colorTextOn": "auto", + "vertical": false, + "wrap": false, + "decoupled": false, + "typeTags": "", + "ignoreDefaults": false, + "onCreate": "", + "onValue": "" + }, + { + "type": "button", + "top": 180, + "left": 180, + "id": "img_9_select", + "linkId": "", + "width": 40, + "height": 40, + "label": false, + "css": ":host{\n--color-raised:#2A2A2D;\n}\n:host.on{\n--color-bg:white;\n}", + "doubleTap": false, + "on": 9, + "off": -9, + "default": "", + "value": "", + "address": "/img_select", + "preArgs": "", + "target": "", + "bypass": false, + "decimals": 2, + "mode": "toggle", + "lock": false, + "visible": true, + "interaction": true, + "comments": "", + "expand": "false", + "colorText": "auto", + "colorWidget": "auto", + "colorStroke": "auto", + "colorFill": "auto", + "alphaStroke": "auto", + "alphaFillOff": "auto", + "alphaFillOn": "auto", + "lineWidth": "auto", + "borderRadius": "auto", + "padding": "auto", + "html": "", + "colorTextOn": "auto", + "vertical": false, + "wrap": false, + "decoupled": false, + "typeTags": "", + "ignoreDefaults": false, + "onCreate": "", + "onValue": "" + } + ], + "tabs": [], + "decimals": 2, + "innerPadding": false, + "padding": 0, + "alphaStroke": 0, + "lock": false, + "visible": true, + "interaction": true, + "comments": "", + "expand": "false", + "colorText": "auto", + "colorWidget": "auto", + "colorStroke": "auto", + "colorFill": "auto", + "alphaFillOff": "auto", + "alphaFillOn": "auto", + "lineWidth": "auto", + "borderRadius": "auto", + "html": "", + "colorBg": "auto", + "layout": "default", + "justify": "start", + "gridTemplate": "", + "contain": true, + "tabsPosition": "top", + "traversing": false, + "typeTags": "", + "ignoreDefaults": false, + "onCreate": "", + "onValue": "" + }, + { + "type": "variable", + "lock": false, + "id": "lock", + "comments": "", + "value": 0, + "default": "", + "linkId": "", + "address": "auto", + "preArgs": "", + "typeTags": "", + "decimals": 2, + "target": "", + "ignoreDefaults": false, + "bypass": false, + "onCreate": "", + "onValue": "" + }, + { + "type": "variable", + "lock": false, + "id": "automate", + "comments": "", + "value": "", + "default": "", + "linkId": "", + "address": "auto", + "preArgs": "", + "typeTags": "", + "decimals": 2, + "target": "", + "ignoreDefaults": false, + "bypass": false, + "onCreate": "", + "onValue": "" + } + ], + "tabs": [], + "decimals": 2, + "innerPadding": false, + "padding": 0, + "alphaStroke": 0, + "lock": false, + "visible": true, + "interaction": true, + "comments": "", + "expand": "false", + "colorText": "auto", + "colorWidget": "auto", + "colorStroke": "auto", + "colorFill": "auto", + "alphaFillOff": "auto", + "alphaFillOn": "auto", + "lineWidth": "auto", + "borderRadius": "auto", + "html": "", + "colorBg": "auto", + "layout": "default", + "justify": "start", + "gridTemplate": "", + "contain": true, + "tabsPosition": "top", + "traversing": false, + "typeTags": "", + "ignoreDefaults": false, + "onCreate": "", + "onValue": "" + } + ], + "tabs": [], + "scroll": true, + "decimals": 2, + "colorWidget": "white", + "innerPadding": false, + "padding": 0, + "lock": false, + "visible": true, + "interaction": true, + "comments": "", + "colorText": "auto", + "colorFill": "auto", + "borderRadius": "auto", + "html": "", + "colorBg": "auto", + "layout": "default", + "justify": "start", + "gridTemplate": "", + "contain": true, + "tabsPosition": "top", + "traversing": false, + "typeTags": "", + "ignoreDefaults": false, + "onCreate": "", + "onValue": "" + } + ], + "scroll": true, + "decimals": 2, + "lock": false, + "visible": true, + "interaction": true, + "comments": "", + "width": "auto", + "height": "auto", + "colorText": "auto", + "colorWidget": "auto", + "alphaFillOn": "auto", + "borderRadius": "auto", + "padding": "auto", + "html": "", + "colorBg": "auto", + "layout": "default", + "justify": "start", + "gridTemplate": "", + "contain": true, + "innerPadding": true, + "tabsPosition": "top", + "hideMenu": false, + "typeTags": "", + "ignoreDefaults": false, + "onCreate": "", + "onValue": "", + "widgets": [] + } +} \ No newline at end of file diff --git a/python/vernier_tracker.py b/python/vernier_tracker.py index 2c22cbb..89a3590 100644 --- a/python/vernier_tracker.py +++ b/python/vernier_tracker.py @@ -189,7 +189,7 @@ class MainWindow(QGlPicamera2): self.shortcut_close_window = QShortcut(QKeySequence('f'), self) self.shortcut_close_window.activated.connect(self.goFullscreen) self.setWindowFlags(Qt.FramelessWindowHint) - self.move(0, 0) + self.move(920, 80) def mousePressEvent(self, event): self.oldPos = event.globalPos() @@ -243,7 +243,7 @@ cv2.setMouseCallback("Frame", moveROI) #picam2.controls.ScalerCrop = (800, 0, 3040, 3040) #picam2.controls.ScalerCrop = (1375, 550, 1800, 1800) -picam2.controls.ScalerCrop = (925, 630, 2025, 2025) +picam2.controls.ScalerCrop = (945, 630, 2025, 2025) #picam2.controls.Brightness = 0.2 picam2.controls.Contrast = 1.1 #picam2.set_controls({"ExposureValue": 2}) diff --git a/supercollider/installation_audio_player.scd b/supercollider/installation_audio_player.scd index 068140f..c1619f9 100644 --- a/supercollider/installation_audio_player.scd +++ b/supercollider/installation_audio_player.scd @@ -8,7 +8,7 @@ s.waitForBoot({ playSig = PlayBuf.ar(2, playBuf, BufRateScale.kr(playBuf), gate, 0); fade = EnvGen.kr(Env.asr(fadeTime, 1, fadeTime), gate); Out.ar(0, playSig * fade); - Out.ar([0, 1], BrownNoise.ar * 0.05 * (fade - 1).abs); + Out.ar([0, 1], BrownNoise.ar * 0.03 * (fade - 1).abs); }).add; 5.wait; @@ -28,24 +28,27 @@ s.waitForBoot({ playRoutine.stop; playRoutine = Routine({ var playDur, piece, numPlayFrames, startFrame; - if(isPlaying, { + //if(isPlaying, { player.set(\gate, 0); 30.wait; + //}); + + if(msg[1] >= 0, { + isPlaying = true; + piece = msg[1].postln; + //playDur = (5.0.rand + 5) * 60; + playDur = 10 * 60; + numPlayFrames = playDur * recInfo[piece][1]; + startFrame = (recInfo[piece][0] - numPlayFrames).rand; + playBuf.free; + playBuf = Buffer.read(s, recPaths[piece], startFrame, numPlayFrames, action: {arg buf; + player.set(\gate, 1); + }); + (playDur - 30).wait; + player.set(\gate, 0); + 30.wait; + isPlaying = false; }); - isPlaying = true; - piece = msg[1]; - //playDur = (5.0.rand + 5) * 60; - playDur = 10 * 60; - numPlayFrames = playDur * recInfo[piece][1]; - startFrame = (recInfo[piece][0] - numPlayFrames).rand; - playBuf.free; - playBuf = Buffer.read(s, recPaths[piece], startFrame, numPlayFrames, action: {arg buf; - player.set(\gate, 1); - }); - (playDur - 30).wait; - player.set(\gate, 0); - 30.wait; - isPlaying = false; }).play },'/playTiling', localAddress); }) diff --git a/supercollider/installation_control_v2.scd b/supercollider/installation_control_v2.scd index 39d5de8..c3bb27d 100644 --- a/supercollider/installation_control_v2.scd +++ b/supercollider/installation_control_v2.scd @@ -12,13 +12,13 @@ dirTuples, dirAdjustRoutine, dirTuplesSeq; // init global vars imgPositions = 9.collect({nil}); -imgIndexToAudioIndex = [0, 1, nil, 2, nil, 3, nil, 4, 5]; +imgIndexToAudioIndex = [0, 1, -1, 2, -1, 3, -1, 4, 5]; curPos = Point.new(0, 0); tarPos = Point.new(0, 0); netAddress = NetAddr.new("127.0.0.1", 8080); localAddress = NetAddr.new("127.0.0.1", 57120); lastSelect = -1; -trackerOffsetBaseDist = 16000; +trackerOffsetBaseDist = 12000; trackerOffset = [ [trackerOffsetBaseDist * 1, trackerOffsetBaseDist * 1], [trackerOffsetBaseDist * 0, trackerOffsetBaseDist * 1], @@ -57,16 +57,24 @@ dirTuples = [ [ -1, -1 ], [ -1, 0 ], [ -1, 1 ], [ 0, -1 ], [ 0, 1 ], [ 1, -1 ], safeMode = false; fork { netAddress.sendMsg("/STATE/SET", "{message: \"all clear\"}"); + netAddress.sendMsg("/STATE/SET", "{message_sub: \"all clear\"}"); + netAddress.sendMsg("/STATE/SET", "{message_public: \"all clear\"}"); 2.wait; netAddress.sendMsg("/STATE/SET", "{message: \"\"}"); + netAddress.sendMsg("/STATE/SET", "{message_sub: \"\"}"); + netAddress.sendMsg("/STATE/SET", "{message_public: \"\"}"); } }); }, { if(str[1..3].asString == "!!!", { netAddress.sendMsg("/STATE/SET", "{message: \"!!! limit switch still on after 1000 steps, this should NEVER happen\"}"); + netAddress.sendMsg("/STATE/SET", "{message_sub: \"!!! limit switch still on after 1000 steps, this should NEVER happen\"}"); + netAddress.sendMsg("/STATE/SET", "{message_public: \"!!! limit switch still on after 1000 steps, this should NEVER happen\"}"); }, { safeMode = true; netAddress.sendMsg("/STATE/SET", "{message: \"!! limit hit, move the other direction\"}"); + netAddress.sendMsg("/STATE/SET", "{message_sub: \"!! limit hit, move the other direction\"}"); + netAddress.sendMsg("/STATE/SET", "{message_public: \"!! limit hit, move the other direction\"}"); }); }); str = ""; @@ -124,23 +132,34 @@ imgSelect = { netAddress.sendMsg("/STATE/SET", "{img_" ++ (i + 1).asString ++ "_select: " ++ (i + 1).neg ++ "}")})}); lastSelect = imgIndex; audioIndex = imgIndexToAudioIndex[imgIndex]; - if(audioIndex != nil, {localAddress.sendMsg('/playTiling', audioIndex)}); - dirTuplesSeq = dirTuples.deepCopy.scramble.collect({arg tup; [tup, tup * -1]}).flatten; + //if(audioIndex != nil, {localAddress.sendMsg('/playTiling', audioIndex)}); + localAddress.sendMsg('/playTiling', audioIndex); + dirTuplesSeq = 2.collect({dirTuples.deepCopy.scramble.collect({arg tup; [tup, tup * -1]}).flatten}).flatten; dirAdjustRoutine = Routine({ - 180.wait; + 120.wait; imgPositions[imgIndex] = curPos.deepCopy; trackLock = true; - 10.wait; - 8.do({arg dirAdjust; + //10.wait; + 100.do({arg dirAdjust; "here".postln; - tarPos = imgPositions[imgIndex].deepCopy + (dirTuplesSeq[dirAdjust] * 200); - moveTo.value(tarPos); - 2.wait; - trackLock = false; - 10.wait; - trackLock = true; - 5.wait; + if(dirAdjust < 8, { + tarPos = imgPositions[imgIndex].deepCopy + (dirTuplesSeq[dirAdjust] * 200); + moveTo.value(tarPos); + 3.wait; + trackLock = false; + 15.wait; + trackLock = true; + //3.wait; + }, { + trackLock = false; + 15.wait; + trackLock = true; + 15.wait; + }); }); + trackLock = false; + //20.wait; + //trackLock = true; }).play; }, { //lastSelect.postln; @@ -160,7 +179,7 @@ imgCalibrate = { 20.do({0.1.wait}); [-1, 0, 1].do({arg row; [-1, 0, 1].do({arg col; - imgPositions[imageCalibrationIndex] = setPos.deepCopy + Point.new(6550 * col, 6550 * row); + imgPositions[imageCalibrationIndex] = setPos.deepCopy + Point.new(6700 * col, 6700 * row); imgPositions[imageCalibrationIndex].postln; imageCalibrationIndex = imageCalibrationIndex + 1; }); @@ -168,6 +187,8 @@ imgCalibrate = { imgPositions.postln; netAddress.sendMsg("/STATE/SET", "{message: \"image calibrated\"}"); + netAddress.sendMsg("/STATE/SET", "{message_sub: \"image calibrated\"}"); + netAddress.sendMsg("/STATE/SET", "{message_public: \"image calibrated\"}"); }); OSCFunc({ arg msg; @@ -176,7 +197,11 @@ imgCalibrate = { setPos = curPos.deepCopy; calibrateHold.play(AppClock); }, { - calibrateHold.stop; calibrateHold.reset; netAddress.sendMsg("/STATE/SET", "{message: \"\"}"); + calibrateHold.stop; + calibrateHold.reset; + netAddress.sendMsg("/STATE/SET", "{message: \"\"}"); + netAddress.sendMsg("/STATE/SET", "{message_sub: \"\"}"); + netAddress.sendMsg("/STATE/SET", "{message_public: \"\"}"); }); }, '/img_calibrate', netAddress); }.value; @@ -187,11 +212,11 @@ trackerPos = OSCFunc({arg msg; distX = curPos.x - imgPositions[lastSelect].x; distY = curPos.y - imgPositions[lastSelect].y; isFocusing = false; - if((imgPositions[lastSelect] != nil) && (distX.abs < 300) && ((msg[1] - trackerOffset[lastSelect][0]).abs > 3000), { + if((imgPositions[lastSelect] != nil) && (distX.abs < 350) && ((msg[1] - trackerOffset[lastSelect][0]).abs > 3000), { tarPos.x = curPos.x + (10 * (msg[1] - trackerOffset[lastSelect][0]).sign);// * -1); isFocusing = true; }); - if((imgPositions[lastSelect] != nil) && (distY.abs < 300) && ((msg[2] - trackerOffset[lastSelect][1]).abs > 3000), { + if((imgPositions[lastSelect] != nil) && (distY.abs < 350) && ((msg[2] - trackerOffset[lastSelect][1]).abs > 3000), { tarPos.y = curPos.y + (10 * (msg[2] - trackerOffset[lastSelect][1]).sign);// * -1); isFocusing = true; });