Go to the
documentation of this file.
00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00013 #ifndef _FBXSDK_SCENE_GEOMETRY_MARKER_H_
00014 #define _FBXSDK_SCENE_GEOMETRY_MARKER_H_
00015
00016 #include <fbxsdk/fbxsdk_def.h>
00017
00018 #include <fbxsdk/scene/geometry/fbxnodeattribute.h>
00019 #include <fbxsdk/core/math/fbxvector4.h>
00020
00021 #include <fbxsdk/fbxsdk_nsbegin.h>
00022
00023 class FbxManager;
00024
00029 class FBXSDK_DLL FbxMarker : public FbxNodeAttribute
00030 {
00031 FBXSDK_OBJECT_DECLARE(FbxMarker,FbxNodeAttribute);
00032
00033 public:
00035 virtual FbxNodeAttribute::EType GetAttributeType() const;
00036
00038 void Reset();
00039
00046 enum EType
00047 {
00048 eStandard,
00049 eOptical,
00050 eEffectorFK,
00051 eEffectorIK
00052 };
00053
00057 void SetType(EType pType);
00058
00062 EType GetType() const;
00063
00077 enum ELook
00078 {
00079 eCube,
00080 eHardCross,
00081 eLightCross,
00082 eSphere,
00083 eCapsule,
00084 eBox,
00085 eBone,
00086 eCircle,
00087 eSquare,
00088 eStick,
00089 eNone
00090 };
00091
00101
00106 double GetDefaultOcclusion() const;
00107
00112 void SetDefaultOcclusion(double pOcclusion);
00113
00118 double GetDefaultIKReachTranslation() const;
00119
00124 void SetDefaultIKReachTranslation(double pIKReachTranslation);
00125
00130 double GetDefaultIKReachRotation() const;
00131
00136 void SetDefaultIKReachRotation(double pIKReachRotation);
00137
00139
00144
00150 FbxColor& GetDefaultColor(FbxColor& pColor) const;
00151
00156 void SetDefaultColor(FbxColor& pColor);
00157
00159
00163 static const char* sLook;
00164 static const char* sDrawLink;
00165 static const char* sSize;
00166 static const char* sShowLabel;
00167 static const char* sIKPivot;
00168
00172 static const ELook sDefaultLook;
00173 static const FbxBool sDefaultDrawLink;
00174 static const FbxDouble sDefaultSize;
00175 static const FbxBool sDefaultShowLabel;
00176 static const FbxDouble3 sDefaultIKPivot;
00177
00179
00180
00181
00183
00191 FbxPropertyT<ELook> Look;
00192
00200 FbxPropertyT<FbxBool> DrawLink;
00201
00209 FbxPropertyT<FbxDouble> Size;
00210
00218 FbxPropertyT<FbxBool> ShowLabel;
00219
00227 FbxPropertyT<FbxDouble3> IKPivot;
00228
00229
00230
00235 FbxProperty* GetOcclusion();
00236
00241 FbxProperty* GetIKReachTranslation();
00246 FbxProperty* GetIKReachRotation();
00247
00249
00250
00251
00252
00253
00254
00256 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00257
00258 virtual FbxObject& Copy(const FbxObject& pObject);
00259
00260 protected:
00261 FbxMarker(FbxManager& pManager, char const* pName);
00262
00263 virtual void Construct(const FbxMarker* pFrom);
00264 virtual bool ConstructProperties(bool pForceSet);
00265
00266 void Reset( bool pResetProperties );
00267
00272 virtual const char* GetTypeName() const;
00273 virtual FbxStringList GetTypeFlags() const;
00274
00275 EType mType;
00276
00277 FbxProperty dynProp;
00278
00279
00280
00281
00282 #endif // #ifndef DOXYGEN_SHOULD_SKIP_THIS
00283 };
00284
00285 inline EFbxType FbxTypeOf(const FbxMarker::ELook&){ return eFbxEnum; }
00286
00287 #include <fbxsdk/fbxsdk_nsend.h>
00288
00289 #endif