Visualize Expression Links

Moderator: Chad

User avatar
intelligent machine
Fusionista
Posts: 399
Joined: Fri May 13, 2016 10:01 pm
Answers: 2
Location: Austin, Texas, USA
Been thanked: 28 times
Contact:

Visualize Expression Links

#1

Post by intelligent machine » Tue Feb 19, 2019 10:08 am

I'd love to see an update the expressions field that encapsulates the parts of the expression that link to other tools and allows the user to right click and goto that tool or perform other actions relating to the referenced tool (not just parameter).

Just as an example for expression fields, here's a screenshot from Apple Numbers. Each of the colored ovals is a reference to another cell in the spreadsheet. Perhaps clicking the little arrow dropdown could reveal the selected field (as checked) and other available fields from the same tool in a submenu. If the tool reference is typed or pasted in instead of using the picker, then it should automatically be recognized as a tool reference based on a specific syntax (maybe a leading character like ':' or clicking a button next to the field that suspends tool activation mode and just allows you to select a tool in the flow as a reference to fill in the expression):

I know a long shot but would be super handy to modernize and streamline.
Image

In addition, hovering over the nodes to reveal faint dashed lines between that tool and all expression referenced tools. Another color dashed line for modifier references perhaps.

User avatar
SirEdric
Fusionator
Posts: 1716
Joined: Tue Aug 05, 2014 10:04 am
Answers: 1
Real name: Eric Westphal
Been thanked: 75 times
Contact:

Re: Visualize Expression Links

#2

Post by SirEdric » Tue Feb 19, 2019 11:33 am

intelligent machine wrote:
Tue Feb 19, 2019 10:08 am
and just allows you to select a tool in the flow as a reference to fill in the expression
Plus of course a popup list of all sensible inputs of that selected tool to choose from.
(Rather than having to type tool.Transform3DOp.Translate.X for the umpteenth time...:-))

User avatar
SirEdric
Fusionator
Posts: 1716
Joined: Tue Aug 05, 2014 10:04 am
Answers: 1
Real name: Eric Westphal
Been thanked: 75 times
Contact:

Re: Visualize Expression Links

#3

Post by SirEdric » Tue Feb 19, 2019 11:34 am

Plus modifiers as tools on the flow (like masks)!

User avatar
intelligent machine
Fusionista
Posts: 399
Joined: Fri May 13, 2016 10:01 pm
Answers: 2
Location: Austin, Texas, USA
Been thanked: 28 times
Contact:

Re: Visualize Expression Links

#4

Post by intelligent machine » Tue Feb 19, 2019 12:04 pm

SirEdric wrote:
Tue Feb 19, 2019 11:34 am
Plus modifiers as tools on the flow (like masks)!
YES! Even better - and add another input type triangle that is colored black to connect in the modifiers stack.

User avatar
Chad
Fusionator
Posts: 1373
Joined: Fri Aug 08, 2014 1:11 pm
Been thanked: 8 times

Re: Visualize Expression Links

#5

Post by Chad » Tue Feb 19, 2019 12:41 pm

I made an calculation fuse that runs in the flow. It acts just like a modifier (which is how you use it with normal tools) but it inputs and outputs numbers in the flow.

So if you set the mode to say, fmod, it would take the number input 1 and the number input 2 and output a number based on fmod(n1, n2). I paired it with number generator (which just had a slider) that output numbers and a random number generator (that had a seed slider). Between them you could do some neat stuff.

It's a stupidly simple fuse, too. You just have to know how to set it up to appear in the flow, as opposed to the modifier list.

And the cool part is, by default it is a slightly smaller tile in the flow, and if you drag the tool to the viewer, it shows you the output number. Like Eyeon was eventually going to release modifiers-in-the-flow as standard.

I shared it on here somewhere, I should probably figure out how Reactor submissions work.

User avatar
SirEdric
Fusionator
Posts: 1716
Joined: Tue Aug 05, 2014 10:04 am
Answers: 1
Real name: Eric Westphal
Been thanked: 75 times
Contact:

Re: Visualize Expression Links

#6

Post by SirEdric » Tue Feb 19, 2019 1:52 pm

Chad wrote:
Tue Feb 19, 2019 12:41 pm
I shared it on here somewhere, I should probably figure out how Reactor submissions work.
Yes, please. Shouldn't be too hard, especially for you programming guru...:-)

User avatar
Chad
Fusionator
Posts: 1373
Joined: Fri Aug 08, 2014 1:11 pm
Been thanked: 8 times

Re: Visualize Expression Links

#7

Post by Chad » Tue Feb 19, 2019 2:13 pm

I've been on a steady stress burn for like 2 years now. Learning anything new takes serious effort now. I'm not in college anymore.

User avatar
intelligent machine
Fusionista
Posts: 399
Joined: Fri May 13, 2016 10:01 pm
Answers: 2
Location: Austin, Texas, USA
Been thanked: 28 times
Contact:

Re: Visualize Expression Links

#8

Post by intelligent machine » Tue Feb 19, 2019 2:37 pm

After Chad's comment this seems like an appropriate time to introduce what I've already started working on and see if there is any interest in it whatsoever and any potential collaborators here.

I've been pondering the creation of a complete series of simple fuses that would live in a special "math" subfolder. The idea is to string out long equations in a series of nodes so that constants and variables can be piped into multiple places and the final 'result' nodes could be referenced in expressions or tunneled somehow through he comp until they are called by channel id.

The custom tool is great for all this but the tabs bug me and it's difficult to visualize the whole equation.

I've already started work on "math.Constant" and "math.RangeMapper" tools.

The Constant tool has a dropdown to select the type (Boole, Integer, Real, Vector2D, Vector3D, Matrix2D, Matrix3D, String, Color, and a few others). After selecting a type, the appropriate field for that type is displayed and all others are hidden away. What to do with the resulting value is a work in progress.

The RangeMapper has up to 5 inputs. The main input to be twiddled with along with optional inputs for constants (still need to figure out how to disable a field when it is overridden by an input). This tool will simply take the defined input low/high values and remap them to the output low/high values proportionally. Additional options may include tick boxes for clamping the lows or highs, modulo function, and a spline curve and/or gradient input for the remap. Right now it's meant to work with a single channel/value so for color work the channels would be split using a vec2reals adapter with one input and 3
or 4 outputs... which could be piped into separate operations. and combined/mixed back together later in the flow...a stripped down channel boolean tool in a way.

A time node that just passes along the time.

It would be nice to give the nodes their own look. (default color and text color to start, also size)
Such as operator nodes that are slightly larger than pipe routers. Is that possible? In the flow these tools would just contain a symbol or function name as the node name or image. In the tool panel, a dropdown to select the operator (+,-,*,/,sin, cos, tan, atan, floor, ceil, etc.)

User avatar
SirEdric
Fusionator
Posts: 1716
Joined: Tue Aug 05, 2014 10:04 am
Answers: 1
Real name: Eric Westphal
Been thanked: 75 times
Contact:

Re: Visualize Expression Links

#9

Post by SirEdric » Tue Feb 19, 2019 9:41 pm

Wow. That sounds incredibly cool indeed! Clickable math!
Maybe you should team up with @KomkomDoorn, since Raf's WIP Data tools might be utilized for something similar and/or in conjunction with what your up to....

User avatar
intelligent machine
Fusionista
Posts: 399
Joined: Fri May 13, 2016 10:01 pm
Answers: 2
Location: Austin, Texas, USA
Been thanked: 28 times
Contact:

Re: Visualize Expression Links

#10

Post by intelligent machine » Wed Feb 20, 2019 3:29 am

I read that in the Krokodove 8 alpha description but alas I don't have a single computer with Windows... :(

Image

User avatar
Chad
Fusionator
Posts: 1373
Joined: Fri Aug 08, 2014 1:11 pm
Been thanked: 8 times

Re: Visualize Expression Links

#11

Post by Chad » Wed Feb 20, 2019 10:47 am

The existing "flow modifiers" that were in Fusion 6+ were between a piperouter and standard tool size.
Modifier.png
You do not have the required permissions to view the files attached to this post.

User avatar
SecondMan
Site Admin
Posts: 3341
Joined: Thu Jul 31, 2014 5:31 pm
Answers: 1
Location: Vancouver, Canada
Been thanked: 63 times
Contact:

Re: Visualize Expression Links

#12

Post by SecondMan » Thu Feb 21, 2019 9:53 pm

intelligent machine wrote:
Tue Feb 19, 2019 2:37 pm
After Chad's comment this seems like an appropriate time to introduce what I've already started working on and see if there is any interest in it whatsoever and any potential collaborators here.
Absolutely! I think it is a terrific idea and I for one will help out when and where I can. Aeons ago we started the Fuse Box which was meant to serve initiatives exactly like yours.

The other day I was thinking of relocating the posts inside Fuse Box to the Scripting forum and just closing the thing down but your post has made me reconsider :)

Sweet! :cheer:

User avatar
intelligent machine
Fusionista
Posts: 399
Joined: Fri May 13, 2016 10:01 pm
Answers: 2
Location: Austin, Texas, USA
Been thanked: 28 times
Contact:

Re: Visualize Expression Links

#13

Post by intelligent machine » Thu Feb 21, 2019 10:00 pm

Sounds good. Is there a way to grant multiple users to edit a single post in the fuse box? If not, then enable bbcode [gspread] to embed a google spreadsheet?

User avatar
SecondMan
Site Admin
Posts: 3341
Joined: Thu Jul 31, 2014 5:31 pm
Answers: 1
Location: Vancouver, Canada
Been thanked: 63 times
Contact:

Re: Visualize Expression Links

#14

Post by SecondMan » Thu Feb 21, 2019 11:30 pm

Maybe... What is it that you would suggest we do?

Google Sheets embedding is already supported on WSL without the need for a bbcode, just like Youtube and Vimeo and a host of other things. Nobody has used it so far but I thought it might come in handy one day :)

User avatar
intelligent machine
Fusionista
Posts: 399
Joined: Fri May 13, 2016 10:01 pm
Answers: 2
Location: Austin, Texas, USA
Been thanked: 28 times
Contact:

Re: Visualize Expression Links

#15

Post by intelligent machine » Fri Feb 22, 2019 6:18 am

I wanted to embed a spreadsheet in the first post and grant anyone access to keep track of tasks and paste URI's to specific posts in the thread.
I task list and thread index in one.