func Class Reference

The func JavaScript global object. Retrieve and modify values of function curves. More...

Public Slots

Func Data
int holdStartFrame (String columnName)
 returns the Start value from the Hold Value Editor dialog box, for Bezier, Ease and Velo-based Function Editors. More...
 
int holdStopFrame (String columnName)
 returns the Stop value from the Hold Value Editor dialog box, for Bezier, Ease and Velo-based Function Editors More...
 
int holdStep (String columnName)
 returns the Step value from the Hold Value Editor dialog box, for Bezier, Ease and Velo-based Function Editors More...
 
Functions common to Bezier, Ease and VeloBased
int numberOfPoints (String columnName)
 returns the number of keyframes and control points on a curve More...
 
double pointX (String columnName, int point)
 returns the X value (frame number) of a point on a function curve More...
 
double pointY (String columnName, int point)
 returns the Y value of a point on a function curve More...
 
bool pointConstSeg (String columnName, int point)
 returns a 1 (one) to indicate that the point is on a constant segment, or a 0 (zero) to indicate that the point is not on a constant segment More...
 
String pointContinuity (String columnName, int point)
 returns the continuity of the curve that follows the point. One of the following values will be returned, in upper-case: SMOOTH, CORNER or STRAIGHT More...
 
Bezier Func
double pointHandleLeftX (String columnName, int point)
 returns the X value of the left handle of a point on a curve More...
 
double pointHandleLeftY (String columnName, int point)
 returns the Y value of the left handle of a point on a curve. More...
 
double pointHandleRightX (String columnName, int point)
 returns the X value of the right handle of a point on a curve. More...
 
double pointHandleRightY (String columnName, int point)
 returns the Y value of the right handle of a point on a curve More...
 
Ease Func
double pointEaseIn (String columnName, int point)
 returns the number of frames in the ease-in More...
 
double angleEaseIn (String columnName, int point)
 returns the angle of the ease-in handle More...
 
double pointEaseOut (String columnName, int point)
 returns the number of frames in the ease-out More...
 
double angleEaseOut (String columnName, int point)
 returns the angle of the ease-out handle More...
 
Catmull (Path3d)
int numberOfPointsPath3d (String columnName)
 returns the number of keyframes and control points on the 3D Path More...
 
double pointXPath3d (String columnName, int point)
 returns the value of the specified point on the X path More...
 
double pointYPath3d (String columnName, int point)
 returns the value of the specified point on the Y path More...
 
double pointZPath3d (String columnName, int point)
 returns the value of the specified point on the Z path More...
 
double pointTensionPath3d (String columnName, int point)
 returns the tension value for the specified point on the 3D Path More...
 
double pointContinuityPath3d (String columnName, int point)
 returns the continuity value (STRAIGHT, SMOOTH or CORNER) for the specified point on the 3D Path. More...
 
double pointBiasPath3d (String columnName, int point)
 returns the bias value for the specified point on the 3D Path More...
 
double pointLockedAtFrame (String columnName, int point)
 returns the frame at which it's locked, or returns 0 if the point is not locked. More...
 
Func Edition
bool setHoldStartFrame (String columnName, int start)
 sets the Start value in the Hold Value Editor dialog box, for Bezier, Ease and Velo-based Function Editors More...
 
bool setHoldStopFrame (String columnName, int stop)
 sets the Stop value in the Hold Value Editor dialog box, for Bezier, Ease and Velo-based Function Editors More...
 
bool setHoldStep (String columnName, int step)
 sets the Hold value in the Hold Value Editor dialog box, for Bezier, Ease and Velo-based Function Editors. More...
 
bool setBezierPoint (String columnName, int frame, double y, double handleLeftX, double handleLeftY, double handleRightX, double handleRightY, bool constSeg, String continuity)
 sets the values of a point on a Bezier function curve More...
 
bool setEasePoint (String columnName, int frame, double y, double easeIn, double angleEaseIn, double easeOut, double angleEaseOut, bool constSeg, String continuity)
 sets the values of a point on an Ease function curve More...
 
bool setVeloBasedPoint (String columnName, int frame, double y)
 sets the values of a point on a Velocity-Based function curve More...
 
bool addKeyFramePath3d (String columnName, int frame, double x, double y, double z, double tension, double continuity, double bias)
 adds a keyframe to a 3D Path and sets the X, Y and Z value, as well as the tension, continuity and bias. More...
 
bool addCtrlPointAfterPath3d (String columnName, int point, double x, double y, double z, double tension, double continuity, double bias)
 adds a keyframe after a point on a 3D Path and sets the X, Y and Z values, as well as the tension, continuity and bias More...
 
bool removePointPath3d (String columnName, int point)
 removePointPath3d may be used to remove either a key frame, or a control point More...
 
bool setPointPath3d (String columnName, int point, double x, double y, double z, double tension, double continuity, double bias)
 setPointPath3d may be used to set values in either a key frame, or a control point, but cannot change a key frame into a control point or a control point into a key frame. To change a key frame into a control point or a control point into a key frame, you must remove the point and add a new point. More...
 
bool setPath3dPointConstantSegment (String columnName, int point, bool constant)
 sets the constant segment flag of point i of path p to b. More...
 
bool setPath3dPointConstantSegmentForFrame (String columnName, double point, bool constant)
 sets the constant segment flag of point found at frame f of path p to b. More...
 

Detailed Description

The func JavaScript global object. Retrieve and modify values of function curves.

function addSetFunctions()
{
//creates the function columns if needed
if ( !column.add("3DPATH_FUNC", "3DPATH") )
System.println( "Error creating 3dpath column" );
if ( !column.add("BEZIER_FUNC", "BEZIER") )
System.println( "Error creating bezier column" );
if ( !column.add("EASE_FUNC", "EASE") )
System.println( "Error creating ease column" );
// adds 2 keyframes on a 3DPATH at frame 6 and 12
// with values x=2, y=2, z=1, tension=3, continuity=-1, bias=1
func.addKeyFrame3DPath( "3DPATH_FUNC", 6, 2, 2, 1, 3, -1, 1 );
func.addKeyFrame3DPath( "3DPATH_FUNC", 12, 2, 2, 1, 3, -1, 1);
// removes a keyframe on 3DPATH at frame 12
func.removePoint3DPath( "3DPATH_FUNC", 12 );
// prints the number of points on a 3DPath column
var pathPoints = func.numberOfPoints3DPath("3DPATH_FUNC");
System.println( "3DPATH_FUNC column has " + pathPoints + "points" );
// adds a keyframe on a BEZIER at frame 10 with values y=5,
// handle_leftx=9, handle_lefty=5, handle_rightx=12,
// handle_righty=-0.5, constant seg=false, continuity=smooth
if ( ! func.setBezierPoint( "BEZIER_FUNC", 10, 5, 9, 5, 12, - 0.5, false, "SMOOTH" ) )
System.println( "Error creating point on bezier" );
// sets the step value for a function column starting at frame 1 upto frame 15 hold 2
func.setHoldStartFrame("BEZIER_FUNC", 1);
func.setHoldStopFrame("BEZIER_FUNC", 15);
func.setHoldStep("BEZIER_FUNC", 2);
// prints the number of points on a function column
var bezPoints = func.numberOfPoints("BEZIER_FUNC");
System.println( "BEZIER_FUNC column has " + bezPoints + " points" );
// adds a keyframe on an EASE at frame 10 with values y=5,
// ease_inx=0, ease_iny=0, ease_outx=0, ease_outy=180
// constant seg=true, continuity=straight
if ( ! func.setEasePoint( "EASE_FUNC", 10, 6, 0, 0, 0, 180, true, "STRAIGHT" ) )
System.println( "Error creating point on ease" );

Member Function Documentation

◆ addCtrlPointAfterPath3d

bool func::addCtrlPointAfterPath3d ( String  columnName,
int  point,
double  x,
double  y,
double  z,
double  tension,
double  continuity,
double  bias 
)
slot

adds a keyframe after a point on a 3D Path and sets the X, Y and Z values, as well as the tension, continuity and bias

Parameters
columnNameThe name of the column
point: The number of the point on the curve, from 0 to n, where n is the total number of points. The last point on the curve is n-1.
xx value for the point
yY value for the point
zz value for the point
tensiontension value of the keyframe
continuitycontinuity value of the keyframe
biasbias value of the keyframe

◆ addKeyFramePath3d

bool func::addKeyFramePath3d ( String  columnName,
int  frame,
double  x,
double  y,
double  z,
double  tension,
double  continuity,
double  bias 
)
slot

adds a keyframe to a 3D Path and sets the X, Y and Z value, as well as the tension, continuity and bias.

Parameters
columnNameThe name of the column
frameFrame number for the point
xx value for the point
yY value for the point
zz value for the point
tensiontension value of the keyframe
continuitycontinuity value of the keyframe
biasbias value of the keyframe

◆ angleEaseIn

double func::angleEaseIn ( String  columnName,
int  point 
)
slot

returns the angle of the ease-in handle

Parameters
columnNameThe name of the column
point: The number of the point on the curve, from 0 to n, where n is the total number of points. The last point on the curve is n-1.

◆ angleEaseOut

double func::angleEaseOut ( String  columnName,
int  point 
)
slot

returns the angle of the ease-out handle

Parameters
columnNameThe name of the column
point: The number of the point on the curve, from 0 to n, where n is the total number of points. The last point on the curve is n-1.

◆ holdStartFrame

int func::holdStartFrame ( String  columnName)
slot

returns the Start value from the Hold Value Editor dialog box, for Bezier, Ease and Velo-based Function Editors.

Parameters
columnNameThe name of the column

◆ holdStep

int func::holdStep ( String  columnName)
slot

returns the Step value from the Hold Value Editor dialog box, for Bezier, Ease and Velo-based Function Editors

Parameters
columnNameThe name of the column

◆ holdStopFrame

int func::holdStopFrame ( String  columnName)
slot

returns the Stop value from the Hold Value Editor dialog box, for Bezier, Ease and Velo-based Function Editors

Parameters
columnNameThe name of the column

◆ numberOfPoints

int func::numberOfPoints ( String  columnName)
slot

returns the number of keyframes and control points on a curve

Parameters
columnNameThe name of the column

◆ numberOfPointsPath3d

int func::numberOfPointsPath3d ( String  columnName)
slot

returns the number of keyframes and control points on the 3D Path

Parameters
columnNameThe name of the column

◆ pointBiasPath3d

double func::pointBiasPath3d ( String  columnName,
int  point 
)
slot

returns the bias value for the specified point on the 3D Path

Parameters
columnNameThe name of the column
point: The number of the point on the curve, from 0 to n, where n is the total number of points. The last point on the curve is n-1.

◆ pointConstSeg

bool func::pointConstSeg ( String  columnName,
int  point 
)
slot

returns a 1 (one) to indicate that the point is on a constant segment, or a 0 (zero) to indicate that the point is not on a constant segment

Parameters
columnNameThe name of the column
point: The number of the point on the curve, from 0 to n, where n is the total number of points. The last point on the curve is n-1.

◆ pointContinuity

String func::pointContinuity ( String  columnName,
int  point 
)
slot

returns the continuity of the curve that follows the point. One of the following values will be returned, in upper-case: SMOOTH, CORNER or STRAIGHT

Parameters
columnNameThe name of the column
point: The number of the point on the curve, from 0 to n, where n is the total number of points. The last point on the curve is n-1.

◆ pointContinuityPath3d

double func::pointContinuityPath3d ( String  columnName,
int  point 
)
slot

returns the continuity value (STRAIGHT, SMOOTH or CORNER) for the specified point on the 3D Path.

Parameters
columnNameThe name of the column
point: The number of the point on the curve, from 0 to n, where n is the total number of points. The last point on the curve is n-1.

◆ pointEaseIn

double func::pointEaseIn ( String  columnName,
int  point 
)
slot

returns the number of frames in the ease-in

Parameters
columnNameThe name of the column
point: The number of the point on the curve, from 0 to n, where n is the total number of points. The last point on the curve is n-1.

◆ pointEaseOut

double func::pointEaseOut ( String  columnName,
int  point 
)
slot

returns the number of frames in the ease-out

Parameters
columnNameThe name of the column
point: The number of the point on the curve, from 0 to n, where n is the total number of points. The last point on the curve is n-1.

◆ pointHandleLeftX

double func::pointHandleLeftX ( String  columnName,
int  point 
)
slot

returns the X value of the left handle of a point on a curve

Parameters
columnNameThe name of the column
point: The number of the point on the curve, from 0 to n, where n is the total number of points. The last point on the curve is n-1.

◆ pointHandleLeftY

double func::pointHandleLeftY ( String  columnName,
int  point 
)
slot

returns the Y value of the left handle of a point on a curve.

Parameters
columnNameThe name of the column
point: The number of the point on the curve, from 0 to n, where n is the total number of points. The last point on the curve is n-1.

◆ pointHandleRightX

double func::pointHandleRightX ( String  columnName,
int  point 
)
slot

returns the X value of the right handle of a point on a curve.

Parameters
columnNameThe name of the column
point: The number of the point on the curve, from 0 to n, where n is the total number of points. The last point on the curve is n-1.

◆ pointHandleRightY

double func::pointHandleRightY ( String  columnName,
int  point 
)
slot

returns the Y value of the right handle of a point on a curve

Parameters
columnNameThe name of the column
point: The number of the point on the curve, from 0 to n, where n is the total number of points. The last point on the curve is n-1.

◆ pointLockedAtFrame

double func::pointLockedAtFrame ( String  columnName,
int  point 
)
slot

returns the frame at which it's locked, or returns 0 if the point is not locked.

Parameters
columnNameThe name of the column
point: The number of the point on the curve, from 0 to n, where n is the total number of points. The last point on the curve is n-1.

◆ pointTensionPath3d

double func::pointTensionPath3d ( String  columnName,
int  point 
)
slot

returns the tension value for the specified point on the 3D Path

Parameters
columnNameThe name of the column
point: The number of the point on the curve, from 0 to n, where n is the total number of points. The last point on the curve is n-1.

◆ pointX

double func::pointX ( String  columnName,
int  point 
)
slot

returns the X value (frame number) of a point on a function curve

Parameters
columnNameThe name of the column
point: The number of the point on the curve, from 0 to n, where n is the total number of points. The last point on the curve is n-1.

◆ pointXPath3d

double func::pointXPath3d ( String  columnName,
int  point 
)
slot

returns the value of the specified point on the X path

Parameters
columnNameThe name of the column
point: The number of the point on the curve, from 0 to n, where n is the total number of points. The last point on the curve is n-1.

◆ pointY

double func::pointY ( String  columnName,
int  point 
)
slot

returns the Y value of a point on a function curve

Parameters
columnNameThe name of the column
point: The number of the point on the curve, from 0 to n, where n is the total number of points. The last point on the curve is n-1.

◆ pointYPath3d

double func::pointYPath3d ( String  columnName,
int  point 
)
slot

returns the value of the specified point on the Y path

Parameters
columnNameThe name of the column
point: The number of the point on the curve, from 0 to n, where n is the total number of points. The last point on the curve is n-1.

◆ pointZPath3d

double func::pointZPath3d ( String  columnName,
int  point 
)
slot

returns the value of the specified point on the Z path

Parameters
columnNameThe name of the column
point: The number of the point on the curve, from 0 to n, where n is the total number of points. The last point on the curve is n-1.

◆ removePointPath3d

bool func::removePointPath3d ( String  columnName,
int  point 
)
slot

removePointPath3d may be used to remove either a key frame, or a control point

Parameters
columnNameThe name of the column
point: The number of the point on the curve, from 0 to n, where n is the total number of points. The last point on the curve is n-1.

◆ setBezierPoint

bool func::setBezierPoint ( String  columnName,
int  frame,
double  y,
double  handleLeftX,
double  handleLeftY,
double  handleRightX,
double  handleRightY,
bool  constSeg,
String  continuity 
)
slot

sets the values of a point on a Bezier function curve

Parameters
columnNameThe name of the column
frameFrame number for the point
yY value for the poin
handleLeftXX value for the left handle of the point
handleLeftYY value for the left handle
handleRightXX value for the right handle
handleRightYY value for the right handle
constSegBoolean expression (with a true or false value) to indicate whether the segment is constant or interpolated
continuityString value for the continuity of the point. The string must be in all upper-case. The following are the acceptable values: STRAIGHT, SMOOTH and CORNER

◆ setEasePoint

bool func::setEasePoint ( String  columnName,
int  frame,
double  y,
double  easeIn,
double  angleEaseIn,
double  easeOut,
double  angleEaseOut,
bool  constSeg,
String  continuity 
)
slot

sets the values of a point on an Ease function curve

Parameters
columnNameThe name of the column
frameFrame number for the point
yY value for the point
easeInThe number of frames in the ease-in
angleEaseInThe angle of the ease-in handle
easeOutThe number of frames in the ease-out
angleEaseOutThe angle of the ease-out handle
constSegBoolean expression (with a true or false value) to indicate whether the segment is constant or interpolated
continuityString value for the continuity of the point. The string must be in all upper-case. The following are the acceptable values: STRAIGHT, SMOOTH and CORNER

◆ setHoldStartFrame

bool func::setHoldStartFrame ( String  columnName,
int  start 
)
slot

sets the Start value in the Hold Value Editor dialog box, for Bezier, Ease and Velo-based Function Editors

Parameters
columnNameThe name of the column
startstart frame of the hold

◆ setHoldStep

bool func::setHoldStep ( String  columnName,
int  step 
)
slot

sets the Hold value in the Hold Value Editor dialog box, for Bezier, Ease and Velo-based Function Editors.

Parameters
columnNameThe name of the column
stepvalue of the steps in the hold.

◆ setHoldStopFrame

bool func::setHoldStopFrame ( String  columnName,
int  stop 
)
slot

sets the Stop value in the Hold Value Editor dialog box, for Bezier, Ease and Velo-based Function Editors

Parameters
columnNameThe name of the column
stopstop frame of the hold

◆ setPath3dPointConstantSegment

bool func::setPath3dPointConstantSegment ( String  columnName,
int  point,
bool  constant 
)
slot

sets the constant segment flag of point i of path p to b.

Parameters
columnNameThe name of the column
point: The number of the point on the curve, from 0 to n, where n is the total number of points. The last point on the curve is n-1.
constant: bool flag

◆ setPath3dPointConstantSegmentForFrame

bool func::setPath3dPointConstantSegmentForFrame ( String  columnName,
double  point,
bool  constant 
)
slot

sets the constant segment flag of point found at frame f of path p to b.

Parameters
columnNameThe name of the column
point: The number of the point on the curve, from 0 to n, where n is the total number of points. The last point on the curve is n-1.
constant: bool flag

◆ setPointPath3d

bool func::setPointPath3d ( String  columnName,
int  point,
double  x,
double  y,
double  z,
double  tension,
double  continuity,
double  bias 
)
slot

setPointPath3d may be used to set values in either a key frame, or a control point, but cannot change a key frame into a control point or a control point into a key frame. To change a key frame into a control point or a control point into a key frame, you must remove the point and add a new point.

Parameters
columnNameThe name of the column
point: The number of the point on the curve, from 0 to n, where n is the total number of points. The last point on the curve is n-1.
xx value for the point
yY value for the point
zz value for the point
tensiontension value of the keyframe
continuitycontinuity value of the keyframe
biasbias value of the keyframe

◆ setVeloBasedPoint

bool func::setVeloBasedPoint ( String  columnName,
int  frame,
double  y 
)
slot

sets the values of a point on a Velocity-Based function curve

Parameters
columnNameThe name of the column
frameFrame number for the point
yY value for the point