- Main Page
- Classes
- Files
- Directories
- Examples

- File List
- File Members

# fbxconstraintaim.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_CONSTRAINT_AIM_H_
    00014 #define _FBXSDK_SCENE_CONSTRAINT_AIM_H_
    00015
    00016 #include <fbxsdk/fbxsdk_def.h>
    00017
    00018 #include <fbxsdk/scene/constraint/fbxconstraint.h>
    00019 #include <fbxsdk/scene/fbxgroupname.h>
    00020 #include <fbxsdk/core/math/fbxvector4.h>
    00021
    00022 #include <fbxsdk/core/base/fbxerror.h>
    00023
    00024 #include <fbxsdk/fbxsdk_nsbegin.h>
    00025
    00026 class FbxManager;
    00027
    00032 class FBXSDK_DLL FbxConstraintAim : public FbxConstraint
    00033 {
    00034     FBXSDK_OBJECT_DECLARE(FbxConstraintAim,FbxConstraint);
    00035
    00036 public:
    00039     enum EWorldUp
    00040     {
    00041         eAimAtSceneUp,
    00042         eAimAtObjectUp,
    00043         eAimAtObjectRotationUp,
    00044         eAimAtVector,
    00045         eAimAtNone,
    00046         eAimAtCount
    00047     };
    00048
    00057         FbxPropertyT<FbxDouble3> RotationOffset;
    00058
    00061         FbxPropertyT<FbxReference> AimAtObjects;
    00062
    00065         FbxPropertyT<FbxReference> ConstrainedObject;
    00066
    00069         FbxPropertyT<FbxEnum> WorldUpType;
    00070
    00073         FbxPropertyT<FbxReference> WorldUpObject;
    00074
    00079         FbxPropertyT<FbxDouble3> WorldUpVector;
    00080
    00085         FbxPropertyT<FbxDouble3> UpVector;
    00086
    00091         FbxPropertyT<FbxDouble3> AimVector;
    00092
    00097         FbxPropertyT<FbxBool> AffectX;
    00098
    00103         FbxPropertyT<FbxBool> AffectY;
    00104
    00109         FbxPropertyT<FbxBool> AffectZ;
    00111
    00116     void AddConstraintSource(FbxObject* pObject, double pWeight = 100);
    00117
    00121     int GetConstraintSourceCount() const;
    00122
    00127     FbxObject* GetConstraintSource(int pIndex) const;
    00128
    00132     void SetConstrainedObject(FbxObject* pObject);
    00133
    00137     FbxObject* GetConstrainedObject() const;
    00138
    00142     void SetWorldUpObject(FbxObject* pObject);
    00143
    00147     FbxObject* GetWorldUpObject() const;
    00148
    00149 #ifndef DOXYGEN_SHOULD_SKIP_THIS
    00150 protected:
    00151     FbxConstraintAim(FbxManager& pManager, char const* pName);
    00152
    00153     virtual bool ConstructProperties(bool pForceSet);
    00154
    00155     virtual EType GetConstraintType() const;
    00156 #endif // #ifndef DOXYGEN_SHOULD_SKIP_THIS
    00157 };
    00158
    00159 inline EFbxType FbxTypeOf(const FbxConstraintAim::EWorldUp&){ return eFbxEnum; }
    00160
    00161 #include <fbxsdk/fbxsdk_nsend.h>
    00162
    00163 #endif /* _FBXSDK_SCENE_CONSTRAINT_AIM_H_ */