Reputation: 7674
After I use Free Transform
tool to rotate layer by 90 degrees...
How do I find this value using jsx script?
Upvotes: 6
Views: 3423
Reputation: 7674
Oh my good, it took me 4 hours to find this out :(
function angleFromMatrix(yy, xy)
{
var toDegs = 180/Math.PI;
return Math.atan2(yy, xy) * toDegs - 90;
}
function getActiveLayerRotation()
{
var ref = new ActionReference();
ref.putEnumerated( charIDToTypeID("Lyr "), charIDToTypeID("Ordn"), charIDToTypeID("Trgt") );
var desc = executeActionGet(ref).getObjectValue(stringIDToTypeID('textKey'))
if (desc.hasKey(stringIDToTypeID('transform')))
{
desc = desc.getObjectValue(stringIDToTypeID('transform'))
var yy = desc.getDouble(stringIDToTypeID('yy'));
var xy = desc.getDouble(stringIDToTypeID('xy'));
return angleFromMatrix(yy, xy);
}
return 0;
}
Upvotes: 16