Once and for all: Is it impossible to retrieve the angle and scale of a Smart Object?
I've done quite some research on this and I've seen the post from people (like for ex. c.pfaffenbichler ) saying it's impossible to retrieve this data.
It's obviously stored -somewhere- but it doesn't appear that you can retrieve this information in any way.
I've used this code to retrieve information from the transform -tool of a Smart Object:
var idnull = charIDToTypeID("null");
var layerReference = new ActionReference();
layerReference.putEnumerated(charIDToTypeID("Lyr "), charIDToTypeID("Ordn"), charIDToTypeID("Trgt"));
var layerDescriptor = new ActionDescriptor();
layerDescriptor.putReference(idnull, layerReference);
layerDescriptor.putEnumerated(charIDToTypeID("FTcs"), charIDToTypeID("QCSt"), charIDToTypeID("Qcsa")); // freeTransformCenterState, quadCenterState, QCSAverage
var transformDescriptor = app.executeAction(charIDToTypeID("Trnf"), layerDescriptor, DialogModes.ERROR);
alert(transformDescriptor.getKey());
It contains four keys on the format of typeID's. So I converted the typeID's to charID's and this is what I found:
Index 0 contains the key for: null
Index 1 contains the key for: FTcs - freeTransformCenterScale
Index 2 contains the key for: Ofst - offset
Index 3 contains the key for: Intr - interfaceIconFrameDimmed
There is no data in this descriptor that holds information about the scale or rotation. So the question is: where the heck is it?
The transformation widget and the user-interface must get it from somewhere!
EDIT: Also looked at the descriptor for the smart object - no info there either:
var ref = new ActionReference ();
ref.putProperty (stringIDToTypeID ("property"), stringIDToTypeID ("smartObject"));
ref.putEnumerated (stringIDToTypeID ("layer"), stringIDToTypeID ("ordinal"), stringIDToTypeID ("targetEnum"));
var smartObjectDescriptor = executeActionGet(ref).getObjectValue(stringIDToTypeID ("smartObject"));
(Only contains info about it's contents - ie: the linked document - and nothing about transforms)
Also how can you contact Adobe directly? (like the devs or any devrel -person)
