fbdata.h File Reference

This reference page is linked to from the following overview topics: MotionBuilder 2014.


Animation data types. More...

#include <kaydaradef.h>
#include <fbsdk/fbcomponent.h>

Go to the source code of this file.

Classes

class  FBFCurveKey
 KeyFrame for an FCurve. More...
class  FBPropertyListFCurveKey
 List of FCurveKey. More...
class  FBFCurve
 FCurve class. More...
class  FBPropertyListAnimationNode
 List of animation nodes. More...
class  FBEventAnimationNode
 The transform manipulator has begun doing modifications This event occurs every time a manipulator:
  • receives mouse input
  • begins/ends a transaction
  • manipulates/moves and object.
More...
class  FBPropertyEventAnimationNode
 PropertyEvent: UI idle event. More...
class  FBAnimationNode
class  FBAnimationLayer
 Used to access animation layer properties and modify them. More...
class  FBPropertyListTake
 List: Take More...
class  FBTake
 A take is a container for animation in a scene. More...
class  FBTimeWarpManager
 Time Warp Manager Interface to the Time Warp Manager. More...

Defines

#define FBSDK_DLL   K_DLLIMPORT
 Be sure that FBSDK_DLL is defined only once...
#define ANIMATIONNODE_TYPE_NUMBER   "Number"
 Animation node data types.
#define ANIMATIONNODE_TYPE_TIME   "Time"
#define ANIMATIONNODE_TYPE_TIMECODE   "TimeCode"
#define ANIMATIONNODE_TYPE_VECTOR   "Vector"
#define ANIMATIONNODE_TYPE_VECTOR_4   "Vector4"
#define ANIMATIONNODE_TYPE_OBJECT   "Object"
#define ANIMATIONNODE_TYPE_REFERENCE   "Reference"
#define ANIMATIONNODE_TYPE_EVENT   "Event"
#define ANIMATIONNODE_TYPE_STRING   "String"
#define ANIMATIONNODE_TYPE_ACTION   "Action"
#define ANIMATIONNODE_TYPE_BOOL   "Bool"
#define ANIMATIONNODE_TYPE_ENUM   "Enum"
#define ANIMATIONNODE_TYPE_INTEGER   "Integer"
#define ANIMATIONNODE_TYPE_OCCLUSION   "Occlusion"
#define ANIMATIONNODE_TYPE_FIELDOFVIEWX   "FieldOfViewX"
#define ANIMATIONNODE_TYPE_FIELDOFVIEWY   "FieldOfViewY"
#define ANIMATIONNODE_TYPE_OPTICALCENTERX   "OpticalCenterX"
#define ANIMATIONNODE_TYPE_OPTICALCENTERY   "OpticalCenterY"
#define ANIMATIONNODE_TYPE_IKREACHTRANSLATION   "IK Reach Translation"
#define ANIMATIONNODE_TYPE_IKREACHROTATION   "IK Reach Rotation"
#define ANIMATIONNODE_TYPE_COLOR   "Color"
#define ANIMATIONNODE_TYPE_LOCAL_TRANSLATION   "Lcl Translation"
#define ANIMATIONNODE_TYPE_LOCAL_ROTATION   "Lcl Rotation"
#define ANIMATIONNODE_TYPE_LOCAL_SCALING   "Lcl Scaling"
#define ANIMATIONNODE_TYPE_TRANSLATION   "Translation"
#define ANIMATIONNODE_TYPE_ROTATION   "Rotation"
#define ANIMATIONNODE_TYPE_SCALING   "Scaling"
#define ANIMATIONNODE_TYPE_COLOR_RGBA   "ColorAndAlpha"

Typedefs

typedef bool(* kFBDataHandler )(void *pBuffer, FBEvaluateInfo *pEvaluateInfo, FBAnimationNode *pAnimationNode, void *p1, void *p2)
 kFBDataHandler

Enumerations

enum  FBInterpolation {
  kFBInterpolationInvalid = -1, kFBInterpolationConstant = 0, kFBInterpolationLinear, kFBInterpolationCubic,
  kFBInterpolationCount
}
 

Types of interpolation for an FCurve.

More...
enum  FBInterpolatorCurveType {
  kFBInterpolatorCurveLinearIn, kFBInterpolatorCurveLinearOut, kFBInterpolatorCurveSmoothIn, kFBInterpolatorCurveSmoothOut,
  kFBInterpolatorCurveSlowIn, kFBInterpolatorCurveSlowOut, kFBInterpolatorCurveFastIn, kFBInterpolatorCurveFastOut,
  kFBInterpolatorCurveLast
}
 

Types of interpolator for an FCurve.

More...
enum  FBTangentMode {
  kFBTangentModeAuto, kFBTangentModeTCB, kFBTangentModeUser, kFBTangentModeBreak,
  kFBTangentModeTimeIndependent, kFBTangentModeClampProgressive
}
 

Methods of tangent calculation.

More...
enum  FBTangentClampMode { kFBTangentClampModeNone, kFBTangentClampModeClamped }
 

Different clamping modes for the tangents.

More...
enum  FBTangentConstantMode { kFBTangentConstantModeNormal, kFBTangentConstantModeNext }
 

Different constant modes for the tangents.

More...
enum  FBEventAnimationNodeType { kFBEventAnimationNodeDataChange, kFBEventAnimationNodeConstraintChange, kFBEventAnimationNodeNone }
 

Event based on animation node.

More...
enum  FBLayerMode { kFBLayerModeInvalidIndex = -1, kFBLayerModeAdditive = 0, kFBLayerModeOverride, kFBLayerModeOverridePassthrough }
 

Layer mode.

More...
enum  FBLayerRotationMode { kFBLayerRotationModeInvalidIndex = -1, kFBLayerRotationModeEulerRotation = 0, kFBLayerRotationModeQuaternionRotation }
 

Rotation mode for layer.

More...
enum  FBAnimationLayerMergeOptions {
  kFBAnimLayerMerge_SelectedLayers_SelectedProperties, kFBAnimLayerMerge_AllLayers_SelectedProperties, kFBAnimLayerMerge_SelectedLayers_AllProperties, kFBAnimLayerMerge_AllLayers_AllProperties,
  kFBAnimLayerMerge_SelectedLayers_CompleteScene, kFBAnimLayerMerge_AllLayers_CompleteScene
}
 

Merge option for animation layers.

More...
enum  FBMergeLayerMode { kFBMergeLayerModeAutomatic, kFBMergeLayerModeAdditive, kFBMergeLayerModeOverride }
 

Merge layer mode for animation layers. This will specify the mode of the resulting merged layer, if applicable (To BaseAnimation layer mode cannot be modified).

More...

Functions

 FB_FORWARD (FBEvaluateInfo)
 FB_FORWARD (FBPlotOptions)
 FB_DEFINE_ENUM (FBSDK_DLL, Interpolation)
 FB_DEFINE_ENUM (FBSDK_DLL, TangentMode)
 FB_DEFINE_ENUM (FBSDK_DLL, TangentClampMode)
 FB_DEFINE_ENUM (FBSDK_DLL, TangentConstantMode)
 FB_FORWARD (FBFCurve)
 __FB_FORWARD (FBFCurveKey)
 FB_FORWARD (FBPropertyListFCurveKey)
 FB_FORWARD (FBFCurveKey)
 __FB_FORWARD (FBFCurve)
 FB_DEFINE_COMPONENT (FBSDK_DLL, FCurve)
 __FB_FORWARD (FBAnimationNode)
 __FB_FORWARD (FBPropertyListAnimationNode)
 FB_DEFINE_LIST (FBSDK_DLL, AnimationNode)
 FB_DEFINE_ENUM (FBSDK_DLL, EventAnimationNodeType)
 __FB_FORWARD (FBEventAnimationNode)
 FB_DEFINE_COMPONENT (FBSDK_DLL, AnimationNode)
 Animation node class.
 FB_DEFINE_ENUM (FBSDK_DLL, LayerMode)
 FB_DEFINE_ENUM (FBSDK_DLL, LayerRotationMode)
 __FB_FORWARD (FBAnimationLayer)
 __FB_FORWARD (FBTake)
 FB_DEFINE_COMPONENT (FBSDK_DLL, Take)
 __FB_FORWARD (FBTimeWarpManager)

Variables

static K_DEPRECATED_2014 const
FBAnimationLayerMergeOptions 
kFBAnimLayerMerge_SelectedLayer_CompleteScene = kFBAnimLayerMerge_SelectedLayers_CompleteScene

Detailed Description

Animation data types.

This file contains the definitions for various animation data types in the Open Reality SDK.

Definition in file fbdata.h.


Define Documentation

#define FBSDK_DLL   K_DLLIMPORT

Be sure that FBSDK_DLL is defined only once...

Definition at line 50 of file fbdata.h.

#define ANIMATIONNODE_TYPE_NUMBER   "Number"

Animation node data types.

Definition at line 58 of file fbdata.h.

#define ANIMATIONNODE_TYPE_TIME   "Time"

Definition at line 59 of file fbdata.h.

#define ANIMATIONNODE_TYPE_TIMECODE   "TimeCode"

Definition at line 60 of file fbdata.h.

#define ANIMATIONNODE_TYPE_VECTOR   "Vector"

Definition at line 61 of file fbdata.h.

#define ANIMATIONNODE_TYPE_VECTOR_4   "Vector4"

Definition at line 62 of file fbdata.h.

#define ANIMATIONNODE_TYPE_OBJECT   "Object"

Definition at line 63 of file fbdata.h.

#define ANIMATIONNODE_TYPE_REFERENCE   "Reference"

Definition at line 64 of file fbdata.h.

#define ANIMATIONNODE_TYPE_EVENT   "Event"

Definition at line 65 of file fbdata.h.

#define ANIMATIONNODE_TYPE_STRING   "String"

Definition at line 66 of file fbdata.h.

#define ANIMATIONNODE_TYPE_ACTION   "Action"

Definition at line 69 of file fbdata.h.

#define ANIMATIONNODE_TYPE_BOOL   "Bool"

Definition at line 70 of file fbdata.h.

#define ANIMATIONNODE_TYPE_ENUM   "Enum"

Definition at line 71 of file fbdata.h.

#define ANIMATIONNODE_TYPE_INTEGER   "Integer"

Definition at line 72 of file fbdata.h.

#define ANIMATIONNODE_TYPE_OCCLUSION   "Occlusion"

Definition at line 73 of file fbdata.h.

#define ANIMATIONNODE_TYPE_FIELDOFVIEWX   "FieldOfViewX"

Definition at line 74 of file fbdata.h.

#define ANIMATIONNODE_TYPE_FIELDOFVIEWY   "FieldOfViewY"

Definition at line 75 of file fbdata.h.

#define ANIMATIONNODE_TYPE_OPTICALCENTERX   "OpticalCenterX"

Definition at line 76 of file fbdata.h.

#define ANIMATIONNODE_TYPE_OPTICALCENTERY   "OpticalCenterY"

Definition at line 77 of file fbdata.h.

#define ANIMATIONNODE_TYPE_IKREACHTRANSLATION   "IK Reach Translation"

Definition at line 78 of file fbdata.h.

#define ANIMATIONNODE_TYPE_IKREACHROTATION   "IK Reach Rotation"

Definition at line 79 of file fbdata.h.

#define ANIMATIONNODE_TYPE_COLOR   "Color"

Definition at line 82 of file fbdata.h.

#define ANIMATIONNODE_TYPE_LOCAL_TRANSLATION   "Lcl Translation"

Definition at line 83 of file fbdata.h.

#define ANIMATIONNODE_TYPE_LOCAL_ROTATION   "Lcl Rotation"

Definition at line 84 of file fbdata.h.

#define ANIMATIONNODE_TYPE_LOCAL_SCALING   "Lcl Scaling"

Definition at line 85 of file fbdata.h.

#define ANIMATIONNODE_TYPE_TRANSLATION   "Translation"

Definition at line 86 of file fbdata.h.

#define ANIMATIONNODE_TYPE_ROTATION   "Rotation"

Definition at line 87 of file fbdata.h.

#define ANIMATIONNODE_TYPE_SCALING   "Scaling"

Definition at line 88 of file fbdata.h.

#define ANIMATIONNODE_TYPE_COLOR_RGBA   "ColorAndAlpha"

Definition at line 91 of file fbdata.h.


Typedef Documentation

typedef bool(* kFBDataHandler)(void *pBuffer, FBEvaluateInfo *pEvaluateInfo, FBAnimationNode *pAnimationNode, void *p1, void *p2)

kFBDataHandler

Parameters:
pBuffer
pEvaluateInfo
pAnimationNode
p1
p2

Definition at line 487 of file fbdata.h.


Enumeration Type Documentation

Types of interpolation for an FCurve.

Enumerator:
kFBInterpolationInvalid 

Invalid interpolation.

kFBInterpolationConstant 

Constant interpolation.

kFBInterpolationLinear 

Linear interpolation.

kFBInterpolationCubic 

Cubic interpolation.

kFBInterpolationCount 

Number of interpolation types.

Definition at line 105 of file fbdata.h.

Types of interpolator for an FCurve.

Enumerator:
kFBInterpolatorCurveLinearIn 
kFBInterpolatorCurveLinearOut 
kFBInterpolatorCurveSmoothIn 
kFBInterpolatorCurveSmoothOut 
kFBInterpolatorCurveSlowIn 
kFBInterpolatorCurveSlowOut 
kFBInterpolatorCurveFastIn 
kFBInterpolatorCurveFastOut 
kFBInterpolatorCurveLast 

Definition at line 115 of file fbdata.h.

Methods of tangent calculation.

This is only relevant when interpolation is CUBIC.

Enumerator:
kFBTangentModeAuto 

This is the equivalent to a cardinal spline with no parametrization.

In the UI, it is identified as Smooth.

kFBTangentModeTCB 

TCB spline (3 parameters: TENSION, CONTINUITY, BIAS)

kFBTangentModeUser 

Used to represent all splines with no lost data (HERMITE, BEZIER, CATMUL, etc.)

kFBTangentModeBreak 

Like USER but left slope may differ from right.

kFBTangentModeTimeIndependent 

Time independent, is calculated based upon the slope between the previous and next key values.

In the UI, it is identified as Spline.

kFBTangentModeClampProgressive 

Time independent, will flatten the tangent handles when the key value goes over or under the previous and next key values.

In the UI, it is identified as Auto.

Definition at line 130 of file fbdata.h.

Different clamping modes for the tangents.

Enumerator:
kFBTangentClampModeNone 

The tangent will act normally.

kFBTangentClampModeClamped 

The tangent will be flattened when the key is placed at the same value as an adjacent key.

Definition at line 143 of file fbdata.h.

                        {
    kFBTangentClampModeNone,    
    kFBTangentClampModeClamped  
    //Add other clamping methods here...
};

Different constant modes for the tangents.

Enumerator:
kFBTangentConstantModeNormal 

The tangent will contain the value of the current keyframe until the next keyframe.

kFBTangentConstantModeNext 

The tangent will contain the value of the next keyframe.

Definition at line 153 of file fbdata.h.

Event based on animation node.

Types of transformation.

Enumerator:
kFBEventAnimationNodeDataChange 
kFBEventAnimationNodeConstraintChange 
kFBEventAnimationNodeNone 

Definition at line 439 of file fbdata.h.

Layer mode.

Enumerator:
kFBLayerModeInvalidIndex 

Invalid value.

kFBLayerModeAdditive 

Layer value will be added to the other layers to computed the final value.

kFBLayerModeOverride 

Layer value will override the value of the other precedent layers.

kFBLayerModeOverridePassthrough 

If the layer has a weigth of 75%, the precedent layers will have a combined effect of 25% on the final value.

Setting the weigth to 100% is similar to setting the layer in override.

Definition at line 664 of file fbdata.h.

Rotation mode for layer.

Enumerator:
kFBLayerRotationModeInvalidIndex 

Invalid value.

kFBLayerRotationModeEulerRotation 

The rotation will be computed component by component.

kFBLayerRotationModeQuaternionRotation 

The rotation will be computed using quaternion.

Definition at line 675 of file fbdata.h.

Merge option for animation layers.

Enumerator:
kFBAnimLayerMerge_SelectedLayers_SelectedProperties 

Merge the animation of the selected properties of the selected models from the selected layers to the selected layer with the lowest index.

kFBAnimLayerMerge_AllLayers_SelectedProperties 

Merge the animation of the selected properties of the selected models from all the layers to the BaseAnimation layer.

kFBAnimLayerMerge_SelectedLayers_AllProperties 

Merge the animation of all properties of the selected models from the selected layers to the selected layer with the lowest index.

kFBAnimLayerMerge_AllLayers_AllProperties 

Merge the animation of all properties of the selected models from all the layers to the BaseAnimation layer.

kFBAnimLayerMerge_SelectedLayers_CompleteScene 

Merge the animation of all properties from the selected layers to the selected layer with the lowest index.

kFBAnimLayerMerge_AllLayers_CompleteScene 

Merge the animation of all properties from all the layers to the BaseAnimation layer.

Definition at line 798 of file fbdata.h.

Merge layer mode for animation layers. This will specify the mode of the resulting merged layer, if applicable (To BaseAnimation layer mode cannot be modified).

Enumerator:
kFBMergeLayerModeAutomatic 

The resulting layer will be in override mode if one of the source layer is in override, otherwise, it will be in additive mode.

kFBMergeLayerModeAdditive 

The resulting layer will be in additive mode, if possible.

kFBMergeLayerModeOverride 

The resulting layer will be in override mode, if possible.

Definition at line 811 of file fbdata.h.


Function Documentation

FB_DEFINE_ENUM ( FBSDK_DLL  ,
Interpolation   
)
FB_DEFINE_ENUM ( FBSDK_DLL  ,
TangentMode   
)
FB_DEFINE_ENUM ( FBSDK_DLL  ,
TangentClampMode   
)
FB_DEFINE_ENUM ( FBSDK_DLL  ,
TangentConstantMode   
)
FB_DEFINE_COMPONENT ( FBSDK_DLL  ,
FCurve   
)
FB_DEFINE_LIST ( FBSDK_DLL  ,
AnimationNode   
)
FB_DEFINE_ENUM ( FBSDK_DLL  ,
EventAnimationNodeType   
)
FB_DEFINE_COMPONENT ( FBSDK_DLL  ,
AnimationNode   
)

Animation node class.

FB_DEFINE_ENUM ( FBSDK_DLL  ,
LayerMode   
)
FB_DEFINE_ENUM ( FBSDK_DLL  ,
LayerRotationMode   
)
__FB_FORWARD ( FBTake  )
FB_DEFINE_COMPONENT ( FBSDK_DLL  ,
Take   
)

Variable Documentation

K_DEPRECATED_2014 const FBAnimationLayerMergeOptions kFBAnimLayerMerge_SelectedLayer_CompleteScene = kFBAnimLayerMerge_SelectedLayers_CompleteScene [static]
Deprecated:
Use kFBAnimLayerMerge_SelectedLayers_CompleteScene instead.

Definition at line 808 of file fbdata.h.