## [submission] se_Expressionist [SUBMITTED]

Moderator: SecondMan

SirEdric
Fusionator
Posts: 1822
Joined: Tue Aug 05, 2014 10:04 am
Real name: Eric Westphal
Been thanked: 97 times
Contact:

### [submission] se_Expressionist

When doing MotionGraphics one often has to animate many (many!) tools,
or connect certain Inputs of those tools to a designated Input of a master tool.
Sometimes one even needs incremental values, so that Tool1 rotates twice as fast as the master tool,
Tool2 rotates three times the speed, Tool3 four times the speed, etc., you get the point...
A lot of copy & paste. And a lot of wasted time.

This script adds Expressions to any Number of Tools and Inputs.
Therefore it first checks the selected Tools for Inputs they have in Common.
Those Inputs are then displayed in the treeview.

To assign Expressions to an Input, first select the desired Input(s) in the treeview.
Then type the actual Expression in the associated field.
In this first example we connect the Y-Rotation of all selected Tools to the Y-Rotation of a tool called "Master".

In the second example we get a bit more fancy and assign $current + time *$1 to the Y-Rotation of all selected Tools.
se_Exp_Main.png (119.01 KiB) Viewed 102 times
$current evaluates the current Value of the Input and adds the rest of the Expression to that.$1 is an incremental value specified in the Increment 1 field, which is 2 in this example.
Incremental means, that it will be multiplied in the Expression every time it's assigned.
If we assume a current value of 20 for the Y-Rotation on each Tool,
the resulting Expression on the first Tool will read 20 + time * 2,
on the second Tool it will be 20 + time * 4, on the third 20 + time * 6,
on the fourth 20 + time * 8, etc.

When working with incremental values, the order of the tools normally matters.
Since Fusion's toollist is by default an unsorted lua table,
the Sort Tools by dropdown offers an option to define the order the tools are processed in.
And if you really like this little helper, why not buy me a coffee on https://www.paypal.me/siredric.

Atom file contents:

Code: Select all

Atom {
Name = "se_Expressionist",
Category = "Scripts/Comp",
Author = "Eric 'SirEdric' Westphal",
Version = 0.75,
Date = {2019, 2, 23},
Description = [[<h3 align="center"><sup>&#91;se&#93;</sup>Expressionist</h3><p align="center"><strong>Add or modify Expressions on multiple tools simultaneously.</strong>
<br>When doing MotionGraphics one often has to animate many (many!) tools,<br>
or connect certain Inputs of those tools to a designated Input of a master tool.
Sometimes one even needs incremental values, <br>so that Tool1 rotates twice as fast as the master tool,
Tool2 rotates three times the speed, Tool3 four times the speed, etc., you get the point...:-)<br>
A lot of copy & paste. And a lot of wasted time.<br><br>

This script adds Expressions to any Number of Tools and Inputs.<br>
Therefore it first checks the selected Tools for Inputs they have in Common.<br>
Those Inputs are then displayed in the treeview.<br><br>

To assign Expressions to an Input, first select the desired Input(s) in the treeview.<br>
Then type the actual Expression in the associated field.<br><br>

]],
Donation = {
URL = [[https://www.paypal.me/SirEdric]],
Amount = "5,00 €",
},

Deploy = {
"Scripts/Comp/SirEdric/se_Expressionist.lua",
},
}


Attachments
com.SirEdric.se_Expressionist.zip
Last edited by SirEdric on Sat Feb 23, 2019 7:50 am, edited 1 time in total.

AndrewHazelden
Fusionator
Posts: 1297
Joined: Fri Apr 03, 2015 3:20 pm
Location: West Dover, Nova Scotia, Canada
Been thanked: 35 times
Contact:

### Re: [submission] se_Expressionist

Hi.

The Atom "Description" element is pure HTML 4. That means you need to close the <p align="center"> tag at the end of the body of text with a matching </p>.

Also, as an HTML formatting comment, it looks like you wanted to have each section of text in the description field as unique paragraphs. Only the lines with <br> on them will have newlines added in the HTML output. Just because you visually added a newline in the text by hand won't change the output when it is rendered as rich text unless you wrap each paragraph in their own individual set of <p></p> tags, or you will need to add a few more <br>'s to each block of text to force that formatting to happen.

SirEdric
Fusionator
Posts: 1822
Joined: Tue Aug 05, 2014 10:04 am
Real name: Eric Westphal
Been thanked: 97 times
Contact:

### Re: [submission] se_Expressionist  [SUBMITTED]

Ahh....bloody HTML....:-/
Updated the original attachments...

SecondMan
Posts: 3416
Joined: Thu Jul 31, 2014 5:31 pm
Been thanked: 78 times
Contact:

### Re: [submission] se_Expressionist

And submitted!

SirEdric
Fusionator
Posts: 1822
Joined: Tue Aug 05, 2014 10:04 am