fbxsdk/scene/geometry/fbxlodgroup.h Source File

fbxlodgroup.h
Go to the documentation of this file.
1 /****************************************************************************************
2 
3  Copyright (C) 2014 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_LOD_GROUP_H_
14 #define _FBXSDK_SCENE_GEOMETRY_LOD_GROUP_H_
15 
16 #include <fbxsdk/fbxsdk_def.h>
17 
19 
20 #include <fbxsdk/fbxsdk_nsbegin.h>
21 
55 {
57 
58 public:
61 
68  {
71  eHide
72  };
73 
75  //
76  // Properties
77  //
79 
91 
100 
109 
122 
123 
125  //
126  // Methods
127  //
129 
134  int GetNumThresholds() const;
135 
145  bool AddThreshold(FbxDistance pThreshValue);
146 
152  bool SetThreshold(int pEl, FbxDistance pThreshValue);
153 
160  bool GetThreshold(int pEl, FbxDistance& pThreshValue) const;
161 
162 
167  int GetNumDisplayLevels() const;
168 
184  bool AddDisplayLevel(FbxLODGroup::EDisplayLevel pValue);
185 
191  bool SetDisplayLevel(int pEl, FbxLODGroup::EDisplayLevel pValue);
192 
199  bool GetDisplayLevel(int pEl, FbxLODGroup::EDisplayLevel& pValue) const;
200 
201 /*****************************************************************************************************************************
202 ** WARNING! Anything beyond these lines is for internal use, may not be documented and is subject to change without notice! **
203 *****************************************************************************************************************************/
204 #ifndef DOXYGEN_SHOULD_SKIP_THIS
205  virtual FbxObject& Copy(const FbxObject& pObject);
206 
207 protected:
208  virtual void Construct(const FbxObject* pFrom);
209  virtual void ConstructProperties(bool pForceSet);
210 
211 private:
212  int mNbThresholds;
213  FbxProperty mThresholds;
214  bool Threshold(int pEl, FbxDistance pThreshValue, bool pCreateNew);
215 
216  int mNbDisplayLevels;
217  FbxProperty mDisplayLevels;
218  bool DisplayLevel(int pEl, FbxLODGroup::EDisplayLevel pValue, bool pCreateNew);
219 
220 public:
221  virtual FbxStringList GetTypeFlags() const;
222 #endif /* !DOXYGEN_SHOULD_SKIP_THIS *****************************************************************************************/
223 };
224 
226 
227 #include <fbxsdk/fbxsdk_nsend.h>
228 
229 #endif /* _FBXSDK_SCENE_GEOMETRY_LOD_GROUP_H_ */
EFbxType FbxTypeOf(const FbxLODGroup::EDisplayLevel &)
Definition: fbxlodgroup.h:225
#define FBXSDK_OBJECT_DECLARE(Class, Parent)
Macro used to declare a new class derived from FbxObject.
Definition: fbxobject.h:61
FBX SDK environment definition.
FbxPropertyT< FbxBool > MinMaxDistance
This property handles the use of the Min/Max distances.
Definition: fbxlodgroup.h:90
virtual FbxObject & Copy(const FbxObject &pObject)
Copy an object content into this object.
Array that stores pairs of FbxString and a pointer.
EDisplayLevel
types to determine how to display nodes in LODGroup.
Definition: fbxlodgroup.h:67
EType
Node attribute types.
FbxPropertyT< FbxBool > WorldSpace
Work in world space of transform or local space If true, the camera distance to the LOD group will be...
Definition: fbxlodgroup.h:121
FbxPropertyT< FbxDouble > MaxDistance
The maximum distance at which the group is displayed.
Definition: fbxlodgroup.h:108
EFbxType
Type identifier constants.
The base class of most FBX objects.
Definition: fbxobject.h:157
FbxPropertyT< FbxDouble > MinDistance
The minimum distance at which the group is displayed.
Definition: fbxlodgroup.h:99
virtual void Construct(const FbxObject *pFrom)
Optional constructor override, automatically called by default constructor.
Enumeration.
Class to hold user properties.
Definition: fbxproperty.h:37
virtual FbxNodeAttribute::EType GetAttributeType() const
Return the type of node attribute.
#define FBXSDK_DLL
Definition: fbxarch.h:170
Defines a LOD (Level of Detail) group.
Definition: fbxlodgroup.h:54
FBX SDK distance class.
This class is the base class to all types of node attributes.
virtual void ConstructProperties(bool pForceSet)
Optional property constructor override, automatically called by default constructor.