fbxsdk/scene/geometry/fbxblendshapechannel.h Source File

fbxblendshapechannel.h
Go to the documentation of this file.
1 /****************************************************************************************
2 
3  Copyright (C) 2015 Autodesk, Inc.
4  All rights reserved.
5 
6  Use of this software is subject to the terms of the Autodesk license agreement
7  provided at the time of installation or download, or which otherwise accompanies
8  this software in either electronic or hard copy form.
9 
10 ****************************************************************************************/
11 
13 #ifndef _FBXSDK_SCENE_GEOMETRY_BLEND_SHAPE_CHANNEL_H_
14 #define _FBXSDK_SCENE_GEOMETRY_BLEND_SHAPE_CHANNEL_H_
15 
16 #include <fbxsdk/fbxsdk_def.h>
17 
19 
20 #include <fbxsdk/fbxsdk_nsbegin.h>
21 
22 class FbxShape;
23 class FbxBlendShape;
24 
38 {
40 
41 public:
49  FbxPropertyT<FbxDouble> DeformPercent;
50 
55  bool SetBlendShapeDeformer(FbxBlendShape* pBlendShape);
56 
60  FbxBlendShape* GetBlendShapeDeformer();
61 
67  bool AddTargetShape(FbxShape* pShape, double pFullDeformPercent = 100);
68 
73  FbxShape* RemoveTargetShape(FbxShape* pShape);
74 
78  int GetTargetShapeCount() const;
79 
84  FbxShape* GetTargetShape(int pIndex);
85 
90  const FbxShape* GetTargetShape(int pIndex) const;
91 
96  int GetTargetShapeIndex( FbxShape* pShape);
97 
102  double* GetTargetShapeFullWeights();
103 
108  void SetFullWeightsCount(int pCount);
109 
118 
125  void Reset();
126 
127 
128 /*****************************************************************************************************************************
129 ** WARNING! Anything beyond these lines is for internal use, may not be documented and is subject to change without notice! **
130 *****************************************************************************************************************************/
131 #ifndef DOXYGEN_SHOULD_SKIP_THIS
132  virtual FbxObject& Copy(const FbxObject& pObject);
133  virtual FbxObject* Clone(FbxObject::ECloneType pCloneType=eDeepClone, FbxObject* pContainer=NULL, void* pSet = NULL) const;
134 
135 protected:
136  virtual void Construct(const FbxObject* pFrom);
137  virtual void ConstructProperties(bool pForceSet);
138 
139  virtual FbxStringList GetTypeFlags() const;
140 
141  //The full weights array of each shapes on this blend shape channel
142  FbxArray<double> mShapeFullWeightArray;
143 #endif /* !DOXYGEN_SHOULD_SKIP_THIS *****************************************************************************************/
144 };
145 
146 #include <fbxsdk/fbxsdk_nsend.h>
147 
148 #endif /* _FBXSDK_SCENE_GEOMETRY_BLEND_SHAPE_CHANNEL_H_ */
#define FBXSDK_OBJECT_DECLARE(Class, Parent)
Macro used to declare a new class derived from FbxObject.
Definition: fbxobject.h:61
FBX SDK environment definition.
#define NULL
Definition: fbxarch.h:210
virtual FbxObject & Copy(const FbxObject &pObject)
Copy an object content into this object.
Array that stores pairs of FbxString and a pointer.
ECloneType
Types of clones that can be created for FbxObject.
Definition: fbxobject.h:245
Class for blend shape deformer.
Definition: fbxblendshape.h:39
The base class of most FBX objects.
Definition: fbxobject.h:157
virtual void Construct(const FbxObject *pFrom)
Optional constructor override, automatically called by default constructor.
A shape describes the deformation on a set of control points, which is similar to the cluster deforme...
Definition: fbxshape.h:32
EType
Sub-deformer type.
Class for blend shape channels.
virtual FbxObject * Clone(FbxObject::ECloneType pCloneType=eDeepClone, FbxObject *pContainer=((void *) 0), void *pSet=((void *) 0)) const
Creates a clone of this object.
Base class for cluster sub-deformer( FbxCluster) and blend shape channel sub-deformer( FbxBlendShapeC...
#define FBXSDK_DLL
Definition: fbxarch.h:173
EType GetSubDeformerType() const
Get the type of the sub deformer.
Type FbxBlendShapeChannel.
virtual void ConstructProperties(bool pForceSet)
Optional property constructor override, automatically called by default constructor.
Class for array of basic elements such as pointers and basic types.
Definition: fbxarray.h:23