pt_CropPrecomps (formerly Crop Layer Sets)

Moderator: Paul Tuersley

Paul Tuersley
Posts: 704
Joined: June 5th, 2004, 7:59 am
Location: London, UK

This script can crop nested compositions to fit the image contents. Useful in cases like Photoshop imports where precomps are created as document size. It makes precomp layers easier to work with as their bounding boxes fit the images, and can speed up rendering by reducing the areas being processed.

Written on request for screen graphics designer Mark Coleran, whose work can be seen on the computer screens in movies such as The Bourne Identity and Tomb Raider. Mark designs complex user interfaces in Photoshop made up of many layers nested into groups, before importing them into After Effects to animate.

Watch the tutorial video and download pt_CropPrecomps from aescripts.com

Image
Kasio
Posts: 10
Joined: February 8th, 2008, 4:39 am

Thanks for this very helpful script.

It works perfectly fine in AE7 (Windows) while I have experienced problems in CS3.

I think it might relate to CS3 being able to import Photoshop-files with layer sets within another layer set. The files for witch I want the PreComps cropped are like this.

Any help appreciated.
Kasio
Posts: 10
Joined: February 8th, 2008, 4:39 am

Apparently, the script works great in CS3 as well, apart from the problem mentioned above (ie Photoshop documents with Groups inside another Group, creating a chain of nested compositions in After Effects).

However, I have found a workaround.

The nesting and layers of the compositions are like this:
Main_Comp (Layer 1, Pre_Comp1) -> Pre_Comp1 (Layer 2, Pre_Comp2) -> Layer 3

Pre_Comp2 should crop to the size of Layer 3.
Pre_Comp1 should crop to the size of Layer 2 and Pre_Comp2 combined.

If I run the script with Main_Comp active nothing happens.

So:

1. First make Pre_Comp1 the active composition and run the script -> Pre_Comp2 crops correctly.
2. Then make Main_Comp the active composition and run the script -> Pre_Comp1 crops correctly.

Unfortunately, I do not have the knowledge yet to alter the script to check for this (if possible).
Does anyone have the time to do an update?

Thanks
Paul Tuersley
Posts: 704
Joined: June 5th, 2004, 7:59 am
Location: London, UK

I'll look into it.

Paul
Paul Tuersley
Posts: 704
Joined: June 5th, 2004, 7:59 am
Location: London, UK

It turned out to be an easy fix. Give this a try and let me know if it works.
Download pt_CropLayerSets_v1.1.zip (link removed)

I've also made the script ignore adjustment layers when calculating the crop. Any thoughts on that?

Paul
ymmij
Posts: 28
Joined: December 1st, 2006, 1:20 pm

This script is great. Really helps.

Is there a similar script around which will take any comp and crop it to the boundary of the visible layers?

Thanks,

Russ
Kasio
Posts: 10
Joined: February 8th, 2008, 4:39 am

Initial tests works great. Thanks a lot for this.

Ignoring adjustment.. That is very clever. Preserving its effect on layers below when the Collapse Transformations is checked. I have no problem with that.
Kasio
Posts: 10
Joined: February 8th, 2008, 4:39 am

I've been getting a lot of these lately:

"Unable to execute script at line 75. After Effects error: Unable to set "width". value -2616 out of range 1 to 30000."

Is it possible to make the script also ignore layers that are outside of the canvas?
Paul Tuersley
Posts: 704
Joined: June 5th, 2004, 7:59 am
Location: London, UK

ymmij wrote:Is there a similar script around which will take any comp and crop it to the boundary of the visible layers?

Thanks,

Russ
This script won't crop the currently active comp, just the precomps inside it. If you place your comp in another comp and run the script from there, it will crop it, but it assumes all layers are unchanged (100% scale and 0 degree rotation) as they would be in a newly imported PSD.

There is a "sourceRectAtTime()" scripting method (page 48 of AE CS3 scripting guide.pdf) but I think it may only work for text and shape layers. And there have been a few threads about trying to calculating the bounds of text layers:
http://www.aenhancers.com/viewtopic.php?f=8&t=150
http://www.aenhancers.com/viewtopic.php?f=6&t=931
Kasio wrote:I've been getting a lot of these lately:

"Unable to execute script at line 75. After Effects error: Unable to set "width". value -2616 out of range 1 to 30000."

Is it possible to make the script also ignore layers that are outside of the canvas?
Those errors were caused by having layers that were outside the canvas. I've changed it to ignore those layers. Let me know if it works ok.
Download pt_CropLayerSets_v1.2.zip (link removed)
Navstar
Posts: 68
Joined: February 16th, 2009, 12:41 pm

I'm having trouble with AE 9.0.2 and Crop 1.2.

I'm getting this error... :(

Imported with comp with layer size. It's an Illustrator CS4 multi layer doc if that makes a difference.
Attachments
Picture 3.png
Picture 3.png (24.63 KiB) Viewed 64409 times
Paul Tuersley
Posts: 704
Joined: June 5th, 2004, 7:59 am
Location: London, UK

If you can send me the file you're having problems with (or a cut down zipped version if it's too big) I'll take a look. I'm away travelling at the moment though, so I won't be able to look into this until I get back home on 22nd July.
Navstar
Posts: 68
Joined: February 16th, 2009, 12:41 pm

Hey Paul .. Getting it again. Using CS5 now.
Screen shot 2010-08-08 at 7.33.39 PM.png
Screen shot 2010-08-08 at 7.33.39 PM.png (22.64 KiB) Viewed 61680 times
I've attached the project file.

I'm trying to run Layer Crop on each of the precomps (Eyes & Mouth) in the main comp. And I'm getting that 'line 110' error.
Attachments
Lip Sync Rig.zip
(146.07 KiB) Downloaded 1590 times
Paul Tuersley
Posts: 704
Joined: June 5th, 2004, 7:59 am
Location: London, UK

Yes sorry, I haven't released the update yet... but I did send you a work in progress some time back. I'll mail you another copy and get the update out soon.

I think this only happens when using it on Illustrator files. Can I ask what you're workflow is? Maybe you're the only person running into this.
Paul Tuersley
Posts: 704
Joined: June 5th, 2004, 7:59 am
Location: London, UK

I've posted an update for this script, now called pt_CropPrecomps.

New in version 2.0:

- Dockable UI and built-in help
- Option to retain border pixels
- Various bug fixes
- New video tutorial

Watch the tutorial video and download pt_CropPrecomps from aescripts.com
Dimple
Posts: 1
Joined: January 15th, 2012, 10:04 am

Awesome script! Thank you :D
Post Reply