Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- app.beginUndoGroup("Invert Shape Path");
- var curComp = app.project.activeItem;
- if(curComp != null && curComp instanceof CompItem){
- var selectedProps = curComp.selectedProperties;
- var propsNum = selectedProps.length;
- if(propsNum > 0){
- var targetShapeObj, verticesArray, inTangentsArray, outTangentsArray, shapeObj, curKeyIndex;
- for(var i = 0; i < propsNum; i++){
- if(selectedProps[i].matchName == "ADBE Vector Shape"){
- verticesArray = selectedProps[i].value.vertices.reverse();
- inTangentsArray = selectedProps[i].value.inTangents.reverse();
- outTangentsArray = selectedProps[i].value.outTangents.reverse();
- shapeObj = new Shape();
- shapeObj.vertices = verticesArray;
- shapeObj.inTangents = outTangentsArray;
- shapeObj.outTangents = inTangentsArray;
- if(selectedProps[i].numKeys > 0){
- curKeyIndex = selectedProps[i].nearestKeyIndex(curComp.time);
- selectedProps[i].setValueAtKey(curKeyIndex, shapeObj);
- } else {
- selectedProps[i].setValue(shapeObj);
- }
- }
- }
- } else {
- alert("You need to select a shape path at least.", "Invert Shape Path");
- }
- } else {
- alert("Select a composition first.", "Invert Shape Path");
- }
- app.endUndoGroup();
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement