Go to the
documentation of this file.
00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00015 #ifndef FBXFILESDK_KFBXPLUGINS_KFBXMARKER_H
00016 #define FBXFILESDK_KFBXPLUGINS_KFBXMARKER_H
00017
00018
00019 #include <fbxfilesdk/fbxfilesdk_def.h>
00020
00021 #include <fbxfilesdk/kfbxplugins/kfbxnodeattribute.h>
00022 #include <fbxfilesdk/kfbxplugins/kfbxcolor.h>
00023 #include <fbxfilesdk/kfbxmath/kfbxvector4.h>
00024
00025 #include <fbxfilesdk/fbxfilesdk_nsbegin.h>
00026
00027 class KFbxSdkManager;
00028
00033 class KFBX_DLL KFbxMarker : public KFbxNodeAttribute
00034 {
00035 KFBXOBJECT_DECLARE(KFbxMarker,KFbxNodeAttribute);
00036
00037 public:
00039 virtual EAttributeType GetAttributeType() const;
00040
00042 void Reset();
00043
00050 typedef enum {
00051 eSTANDARD,
00052 eOPTICAL,
00053 eFK_EFFECTOR,
00054 eIK_EFFECTOR
00055 } EType;
00056
00060 void SetType(EType pType);
00061
00065 EType GetType() const;
00066
00080 typedef enum {
00081 eCUBE,
00082 eHARD_CROSS,
00083 eLIGHT_CROSS,
00084 eSPHERE,
00085 eCAPSULE,
00086 eBOX,
00087 eBONE,
00088 eCIRCLE,
00089 eSQUARE,
00090 eSTICK,
00091 eNONE
00092 } ELook;
00093
00103
00108 double GetDefaultOcclusion() const;
00109
00114 void SetDefaultOcclusion(double pOcclusion);
00115
00120 double GetDefaultIKReachTranslation() const;
00121
00126 void SetDefaultIKReachTranslation(double pIKReachTranslation);
00127
00132 double GetDefaultIKReachRotation() const;
00133
00138 void SetDefaultIKReachRotation(double pIKReachRotation);
00139
00141
00146
00152 KFbxColor& GetDefaultColor(KFbxColor& pColor) const;
00153
00158 void SetDefaultColor(KFbxColor& pColor);
00159
00161
00165 static const char* sLook;
00166 static const char* sDrawLink;
00167 static const char* sSize;
00168 static const char* sShowLabel;
00169 static const char* sIKPivot;
00170
00174 static const ELook sDefaultLook;
00175 static const fbxBool1 sDefaultDrawLink;
00176 static const fbxDouble1 sDefaultSize;
00177 static const fbxBool1 sDefaultShowLabel;
00178 static const fbxDouble3 sDefaultIKPivot;
00179
00181
00182
00183
00185
00193 KFbxTypedProperty<ELook> Look;
00194
00202 KFbxTypedProperty<fbxBool1> DrawLink;
00203
00211 KFbxTypedProperty<fbxDouble1> Size;
00212
00220 KFbxTypedProperty<fbxBool1> ShowLabel;
00221
00229 KFbxTypedProperty<fbxDouble3> IKPivot;
00230
00231
00232
00237 KFbxProperty* GetOcclusion();
00238
00243 KFbxProperty* GetIKReachTranslation();
00248 KFbxProperty* GetIKReachRotation();
00249
00251
00252
00253
00254
00255
00256
00258 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00259
00260 virtual KFbxObject& Copy(const KFbxObject& pObject);
00261
00262 protected:
00263 KFbxMarker(KFbxSdkManager& pManager, char const* pName);
00264
00265 virtual void Construct(const KFbxMarker* pFrom);
00266 virtual bool ConstructProperties(bool pForceSet);
00267
00268 void Reset( bool pResetProperties );
00269
00274 virtual const char* GetTypeName() const;
00275 virtual KStringList GetTypeFlags() const;
00276
00277 EType mType;
00278
00279 KFbxProperty dynProp;
00280
00281
00282
00283
00284 #endif // #ifndef DOXYGEN_SHOULD_SKIP_THIS
00285 };
00286
00287 typedef KFbxMarker* HKFbxMarker;
00288
00289 inline EFbxType FbxTypeOf( KFbxMarker::ELook const &pItem ) { return eENUM; }
00290
00291 #include <fbxfilesdk/fbxfilesdk_nsend.h>
00292
00293 #endif // FBXFILESDK_KFBXPLUGINS_KFBXMARKER_H
00294