- Main Page
- Classes
- Files
- Directories

- File List
- File Members

# fbxanimlayer.h

Go to the documentation of this file.

    00001 /****************************************************************************************
    00002
    00003    Copyright (C) 2013 Autodesk, Inc.
    00004    All rights reserved.
    00005
    00006    Use of this software is subject to the terms of the Autodesk license agreement
    00007    provided at the time of installation or download, or which otherwise accompanies
    00008    this software in either electronic or hard copy form.
    00009
    00010 ****************************************************************************************/
    00011
    00013 #ifndef _FBXSDK_SCENE_ANIMATION_LAYER_H_
    00014 #define _FBXSDK_SCENE_ANIMATION_LAYER_H_
    00015
    00016 #include <fbxsdk/fbxsdk_def.h>
    00017
    00018 #include <fbxsdk/scene/fbxcollection.h>
    00019
    00020 #include <fbxsdk/fbxsdk_nsbegin.h>
    00021
    00022 class FbxAnimCurveNode;
    00023
    00030 class FBXSDK_DLL FbxAnimLayer : public FbxCollection
    00031 {
    00032     FBXSDK_OBJECT_DECLARE(FbxAnimLayer, FbxCollection);
    00033
    00034 public:
    00036     //
    00037     // Properties
    00038     //
    00040
    00047     FbxPropertyT<FbxDouble>       Weight;
    00048
    00054     FbxPropertyT<FbxBool>         Mute;
    00055
    00062     FbxPropertyT<FbxBool>         Solo;
    00063
    00070     FbxPropertyT<FbxBool>         Lock;
    00071
    00079     FbxPropertyT<FbxDouble3>       Color;
    00080
    00087     FbxPropertyT<FbxEnum>           BlendMode;
    00088
    00096     FbxPropertyT<FbxEnum>           RotationAccumulationMode;
    00097
    00105     FbxPropertyT<FbxEnum>           ScaleAccumulationMode;
    00106
    00108     void Reset();
    00109
    00119
    00125         void SetBlendModeBypass(EFbxType pType, bool pState);
    00126
    00131         bool GetBlendModeBypass(EFbxType pType);
    00132
    00134
    00135
    00138     enum EBlendMode
    00139     {
    00140         eBlendAdditive,
    00141         eBlendOverride,
    00142         eBlendOverridePassthrough
    00149     };
    00150
    00153     enum ERotationAccumulationMode
    00154     {
    00155         eRotationByLayer,
    00156         eRotationByChannel
    00157     };
    00158
    00161     enum EScaleAccumulationMode
    00162     {
    00163         eScaleMultiply,
    00164         eScaleAdditive
    00165     };
    00166
    00179         FbxAnimCurveNode* CreateCurveNode(FbxProperty& pProperty);
    00181
    00182 /*****************************************************************************************************************************
    00183 ** WARNING! Anything beyond these lines is for internal use, may not be documented and is subject to change without notice! **
    00184 *****************************************************************************************************************************/
    00185 #ifndef DOXYGEN_SHOULD_SKIP_THIS
    00186 protected:
    00187     virtual void ConstructProperties(bool pForceSet);
    00188     virtual FbxAnimLayer* GetAnimLayer();
    00189
    00190 private:
    00191     FbxPropertyT<FbxULongLong>  mBlendModeBypass;
    00192 #endif /* !DOXYGEN_SHOULD_SKIP_THIS *****************************************************************************************/
    00193 };
    00194
    00195 #include <fbxsdk/fbxsdk_nsend.h>
    00196
    00197 #endif /* _FBXSDK_SCENE_ANIMATION_LAYER_H_ */