Danny Parsons
Forum Replies Created
-
Hi guys,
This sounded like a really useful idea, so I took the liberty of having a quick go at mashing Filip’s code together with a few UI-based script examples, and came up with a simple little palette with a [=] button and a [≠] button.
There are probably more concise/ elegant approaches than the one I took, but it is working… kind of…
It will work as either a floating palette, or as a dockable panel (when placed in the “ScriptsUI” folder and launched from the window-menu). However, if it is already docked to the workspace when restarting AE – or even just opening a different project – it seems to stop working. (It will either display the “no comp selected” alert, even though there is one selected – or it will just become unresponsive). In either instance, simply relaunching the script seems to do the trick.
I’ve uploaded the current version to a drop io “drop”, and set up the permissions so that anyone can upload revisions if they think they know how to fix this problem, or have any other ideas to improve it in any way (I’m still very new to this whole scripting business!)
Here’s the link: https://drop.io/Express_On_Off
Password: cowCheers,
DP
-
Danny Parsons
February 21, 2009 at 2:35 am in reply to: Clamping the result of a radiansToDegrees expression…Oh, well – thanks for trying!
It’s really just the dragging behaviour I was after – it doesn’t need to be animated, as it is part of a kind of comp-panel based UI to drive other stuff.
Regarding which…
Sorry to do this again, but I have yet another follow-up question! Admittedly, I haven’t spent much time trying to figure this one out for myself yet, but I figure that whilst I have you ‘on the line’, you can probably save me a few hours of head-bashing…
The rotation property we were just discussing will be a “value +” kind of deal, since I would like the user to be able to tweak the value of a rotary control using the pad “+” and “-“ keys, as an alternative to dragging with his/her mouse.
But for those who are neither exclusively ‘tappers’ or ‘draggers’, and would occasionally like to use both methods, it would be nice if the null’s position could also ‘catch up’ with its rotation, if the rotation is tweaked independently.
I don’t think I have ever used radiansToDegrees before, and from looking at other threads, its potential applications seem pretty varied, so any suggestions as to how to go about this would be much appreciated.
Thanks again,
DP
-
Danny Parsons
February 21, 2009 at 12:25 am in reply to: Clamping the result of a radiansToDegrees expression…Thanks Dan,
I had a feeling it was going to be something a lot simpler than some of the things I was trying!
I do have a quick follow-up question, however…
Now, when I drag the null any ‘earlier’ than ‘twelve o’clock’, the rotation value snaps straight to the upper clamp-limit. Is there any I could get it to stick at zero until I reach the 270 degrees mark again (going backwards), and only THEN have the layer resume its movement (in much the same way that it currently behaves when I’m moving in the opposite – clockwise – direction)?
Thanks again,
DP
-
Danny Parsons
February 9, 2009 at 7:31 pm in reply to: Find project.item – continue if found; if not, create.Ah!
I swear I must have come so close to the solution on numerous occasions over the weekend, but was probably adding that superfluous “.length” after “numItems” again (which I guess you only need if you’re working with a custom array?)
It works perfectly now – Thanks again!
DP
-
Danny Parsons
February 9, 2009 at 6:10 pm in reply to: Find project.item – continue if found; if not, create.Hi Dan,
It doesn’t sound like there’s any misunderstanding; your last post neatly sums up exactly what I’m aiming for.
Regarding the error’s context… at this point, there really ISN’T any (context)! For the moment, I’m just trying to figure out how to perform this task in a simple test script before I try implementing it into the final script. So, really all I’m doing right now is completing the final line in your code in order to create an empty test comp. However, like I said, it keeps getting stuck on the first “if” line…
I think I’m just a little unclear on how exactly the line above it is supposed to work, since – in my admittedly very limited experience – I’ve not seen the first line of a loop end without a closing parenthesis before, and I’m also unclear as to how exactly it’s setting up to define (i) as anything other than 1.
Apologies for my ignorance – and thanks again for your help and patience,
DP
-
Danny Parsons
February 7, 2009 at 3:54 am in reply to: Find project.item – continue if found; if not, create.Hi Dan,
Thanks for the swift response…
Unfortunately, for some reason, I’m receiving an “Expected: ;” from the third line of your code…
That aside (and I’ll have to be quite honest and admit that my standard-issue, linearly oriented mind doesn’t QUITE grasp every aspect of your approach and suggested Order of Operations), I suspect that maybe I should make myself a little more clear regarding my objective and its context…
The objective, as I’ve described it in the thread-title, is not to be the primary function of the script, but rather just a small step along the way… The comp that I want to search for (or else create) is one made out of a whole bunch of solids with various settings, and, without a doubt, WILL be used many, many times within the project. It doesn’t, however, need to be unique…
Each time the script runs, it will be adding this comp AT LEAST a couple of times as precomp-layers within other comps that the script will create…
So I just want – at a fairly early point in the script – to quickly check if the comp already exists, and if so, set a variable for it so that I can reference it again and again, but if not, then go about the steps required in creating it, and then set a variable…
Thanks again in advance, and please forgive the fact that I’m new to this whole scripting malarkey, and that it is currently 03.48 where I am, as I write this!
(And if you still think that your original code is the way forward, and that the reported error can be easily explained, a slightly more detailed breakdown would be much appreciated!)
Cheers,
DP
-
I know of a free plug-in that should do the trick… I would post the link, but unfortunately it seems that the developer’s site is currently exceeding its bandwith… I have the plug-in on my system however, and would be happy to try sending it to you…
My email address is dannyparsons *at* hotmail *dot* co *dot* uk
DP
-
Take a look at Dan’s Undulation expressions:
https://www.motionscript.com/expressions-lab-ae65/undulations.html
DP
-
This should work…
wipe = thisComp.layer(“gradWipeLayer”).effect(“Gradient Wipe”)(“Transition Completion”);
[0,linear(wipe,0,100,0,576)]The “576” refers to the top row of pixels working in D1/DV PAL; just change this value to whatever your comp’s vertical resolution is…
DP
-
You might want to check out the ‘Text Decoder’ script available at nabscripts.com:
https://www.nabscripts.com/Experiments/Scripts/experiments_scripts_en.php
It can be found in the ‘experimental’ section of the site, so it may still be a work-in-progress… I’ve had a couple of plays around with it, however, and it seems to work fine…
I’m surprised Mike didn’t already point you towards it, as it was a post he’d made in a thread a few weeks ago that first led me to that site (re which: thanks, Mike; there’s some amazing stuff there — the “Organiser” plug-in alone is a life-changer: it’s like having a housemaid in your project panel!)
Cheers,
DP