fbxblendshape.h

Go to the documentation of this file.
00001 /****************************************************************************************
00002  
00003    Copyright (C) 2012 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_GEOMETRY_BLEND_SHAPE_H_
00014 #define _FBXSDK_SCENE_GEOMETRY_BLEND_SHAPE_H_
00015 
00016 #include <fbxsdk/fbxsdk_def.h>
00017 
00018 #include <fbxsdk/core/base/fbxerror.h>
00019 #include <fbxsdk/core/math/fbxmatrix.h>
00020 #include <fbxsdk/scene/geometry/fbxdeformer.h>
00021 #include <fbxsdk/scene/fbxgroupname.h>
00022 
00023 #include <fbxsdk/fbxsdk_nsbegin.h>
00024 
00025 class FbxManager;
00026 class FbxGeometry;
00027 class FbxBlendShapeChannel;
00028 class FbxNode;
00029 
00044 class FBXSDK_DLL FbxBlendShape : public FbxDeformer
00045 {
00046     FBXSDK_OBJECT_DECLARE(FbxBlendShape,FbxDeformer);
00047 
00048 public:
00056     bool SetGeometry(FbxGeometry* pGeometry);
00057 
00061     FbxGeometry* GetGeometry();
00062 
00067     bool AddBlendShapeChannel(FbxBlendShapeChannel* pBlendShapeChannel);
00068 
00073     FbxBlendShapeChannel* RemoveBlendShapeChannel(FbxBlendShapeChannel* pBlendShapeChannel);
00074 
00078     int GetBlendShapeChannelCount() const;
00079 
00084     FbxBlendShapeChannel* GetBlendShapeChannel(int pIndex);
00085 
00090     FbxBlendShapeChannel const* GetBlendShapeChannel(int pIndex) const;
00091 
00095     EDeformerType GetDeformerType()  const {return eBlendShape; };
00096 
00102     void Reset();
00103 
00105 //
00106 //  WARNING!
00107 //
00108 //  Anything beyond these lines may not be documented accurately and is
00109 //  subject to change without notice.
00110 //
00112 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00113 
00114     virtual FbxObject& Copy(const FbxObject& pObject);
00115 
00116 protected:
00117     FbxBlendShape(FbxManager& pManager, char const* pName);
00118 
00119     virtual FbxStringList GetTypeFlags() const;
00120 
00121     friend class FbxScene;
00122 
00123 #endif // #ifndef DOXYGEN_SHOULD_SKIP_THIS
00124 };
00125 
00126 #include <fbxsdk/fbxsdk_nsend.h>
00127 
00128 #endif /* _FBXSDK_SCENE_GEOMETRY_BLEND_SHAPE_H_ */