HOW TO USE:
*Select pathes and drag.
*Release mouse button to fix the result.
focal length: distance to focal point
global depth: default depth (negative value for z-axis)
fix z-order: (see OTHER NOTE below)
BE CAREFULL NOT TO DO SUBSEQUENT DRAGS:
*Once mouse button was released, the targets' z-axis values are
set to zero, and they return to 2D plane, as distorted shapes.
So, if you select these transformed targets and drag again,
the result must be a quite unexpected one.
If you don't prefer the result, make undo first.
OPTIONS BY THE NAME OF THE TARGETS:
*This script gets optional values from the name of the object
as follows. (N means a number)
N: height ( - global depth) (must be at the beginning of its name)
xN: x-axis rotation. uses center of the object itself as origin
xoN: x-axis rotation. uses global origin (default: center of the selection)
yN, zN: same as "xN" but for y-axis and z-axis
yoN, zoN: same as "xoN" but for y-axis and z-axis
LN: sets left side of the object as the self-rotation center
if N specified, offsets the center by N toward center of the object.
RN, TN, BN: same for right, top, bottom
ZN: offsets the center of the self-rotation by N toward z-axis (front/rear)
ex. name="10 x20" -> rotates 20 degree around x-axis, rotation origin is the center of the object itself. then offsets the center of this object's z-axis value by 10.
*If there's a path named "origin" in the selection, this script set its center as the rotation center.
*Here is an example Ai file.
*If "fix z-order" option is checked, this script changes the z-order of the objects according to the z-axis value of the center of the each object. It doesn't always work properly, and this process may destruct the groups.
*This script removes the transformed objects that had exceeded
the value which multiplied the virtual sphere radius by predefined value with a message dialog. The default predefined value is 2.0.
Edit "excessive_transform_threshold" value below to change it.
__*modified applying order:
__ self-rotation > height > global-rotation > global-height
__*If the parent of the target is an instance of Art ( unless it is not a Layer), gets options and applys recursively
__*added L,R,T,B,Z option.
__ see "OPTIONS BY THE NAME OF THE TARGETS" section for detail.
__*fixed a bug in "getArtSetRect" function
2009-06-30: *removed "min_radius" option
__*added "fix_z_order" option
2009-?-? official staff modified to work with Sg 2.5. Thanks!
2010-02-21 modified to work with Sg 2.6
2010-?-? official staff modified to work with Sg 2.9. Thanks!
2013-02-14 fixed a bug in Group detection / simplified the code
2013-02-14 fixed a bug in rotation