ShapeLayer path rotoBezier

What type of scripts do you need?

Moderator: byronnash

Post Reply
micpen
Posts: 7
Joined: May 15th, 2012, 1:54 am

Hi everyone,

Does anyone know how to get the rotoBezier value (true or false) of a shape layer path ?

For a mask it's simply maskpath.rotoBezier, but this does not work with a shape layer.

Cheers,

Michel
dfred
Posts: 29
Joined: July 23rd, 2010, 11:49 pm

It doesn't appear to be accessible.

ShapeGroup properties and methods:

Code: Select all

,==,active,addProperty,canAddProperty,canSetEnabled,duplicate,elided,enabled,
isEffect,isMask,isModified,matchName,moveTo,name,numProperties,parentProperty,
property,propertyDepth,propertyGroup,propertyIndex,propertyType,remove,selected
ShapePath properties and methods:

Code: Select all

==,active,addKey,canSetEnabled,canSetExpression,canVaryOverTime,dimensionsSeparated,
duplicate,elided,enabled,expression,expressionEnabled,expressionError,getSeparationFollower,
hasMax,hasMin,isEffect,isInterpolationTypeValid,isMask,isModified,isSeparationFollower,
isSeparationLeader,isSpatial,isTimeVarying,keyInInterpolationType,keyInSpatialTangent,
keyInTemporalEase,keyOutInterpolationType,keyOutSpatialTangent,keyOutTemporalEase,
keyRoving,keySelected,keySpatialAutoBezier,keySpatialContinuous,keyTemporalAutoBezier,
keyTemporalContinuous,keyTime,keyValue,matchName,maxValue,minValue,moveTo,name,
nearestKeyIndex,numKeys,parentProperty,propertyDepth,propertyGroup,propertyIndex,
propertyType,propertyValueType,remove,removeKey,selected,selectedKeys,separationDimension,
separationLeader,setInterpolationTypeAtKey,setRovingAtKey,setSelectedAtKey,
setSpatialAutoBezierAtKey,setSpatialContinuousAtKey,setSpatialTangentsAtKey,
setTemporalAutoBezierAtKey,setTemporalContinuousAtKey,setTemporalEaseAtKey,setValue,
setValueAtKey,setValueAtTime,setValuesAtTimes,unitsText,value,valueAtTime
ShapePath.value properties:

Code: Select all

closed,inTangents,outTangents,vertices
(Properties and Methods above are from CS5.5)

You might have to create a mask and set it to rotoBezier then copy the path to a shapeLayer with hardcoded inTangents and outTangents. It still won't be set to rotoBezier in the shapeLayer, but the inTangents and outTangents will be correct as long as the vertices don't move. If the vertices move then you'll have to set it to rotoBezier manually before running a script to move the vertices.

(ShapeGroup and ShapePath properties and methods haven't changed in CS6)
ShapePath.value properties from CS6:

Code: Select all

closed,featherInterps,featherRadii,featherRelCornerAngles,featherRelSegLocs,featherSegLocs,
featherTensions,featherTypes,inTangents,outTangents,vertices
dfred
Posts: 29
Joined: July 23rd, 2010, 11:49 pm

Another fix would be to create a rotoBezier mask on the shapeLayer then just link the shapePath to the maskPath via expressions.
micpen
Posts: 7
Joined: May 15th, 2012, 1:54 am

Hi dfred,

Thank you for taking the time to answer. But the goal isn't to create a mask with the property of rotoBezier but to get the real value of the rotoBezier checkbox for a shape layer path.

But thank you for your suggestions which are very interesting.

Cheers,

Michel
Post Reply