00001 /**************************************************************************************** 00002 00003 Copyright (C) 2013 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_GEOMETRY_LINE_H_ 00014 #define _FBXSDK_SCENE_GEOMETRY_LINE_H_ 00015 00016 #include <fbxsdk/fbxsdk_def.h> 00017 00018 #include <fbxsdk/core/base/fbxarray.h> 00019 #include <fbxsdk/scene/geometry/fbxgeometry.h> 00020 00021 #include <fbxsdk/fbxsdk_nsbegin.h> 00022 00034 class FBXSDK_DLL FbxLine : public FbxGeometry 00035 { 00036 FBXSDK_OBJECT_DECLARE(FbxLine, FbxGeometry); 00037 00038 public: 00042 virtual FbxNodeAttribute::EType GetAttributeType() const; 00043 00047 void Reset(); 00048 00052 void SetIndexArraySize(int pCount); 00053 00057 int GetIndexArraySize() const; 00058 00062 inline FbxArray<int>* GetIndexArray() { return &mPointArray;} 00063 00070 bool SetPointIndexAt(int pValue, int pIndex, bool pAsEndPoint = false); 00071 00076 int GetPointIndexAt(int pIndex) const; 00077 00083 bool AddPointIndex(int pValue, bool pAsEndPoint = false); 00084 00088 inline FbxArray<int>* GetEndPointArray() { return &mEndPointArray;} 00089 00108 bool AddEndPoint(int pPointIndex); 00109 00125 int GetEndPointAt(int pEndPointIndex) const; 00126 00130 int GetEndPointCount() const; 00131 00135 FbxPropertyT<FbxBool> Renderable; 00136 00137 /***************************************************************************************************************************** 00138 ** WARNING! Anything beyond these lines is for internal use, may not be documented and is subject to change without notice! ** 00139 *****************************************************************************************************************************/ 00140 #ifndef DOXYGEN_SHOULD_SKIP_THIS 00141 virtual FbxObject& Copy(const FbxObject& pObject); 00142 00143 protected: 00144 virtual void Construct(const FbxLine* pFrom); 00145 virtual void ConstructProperties(bool pForceSet); 00146 virtual void Destruct(bool pRecursive); 00147 00148 private: 00149 FbxArray<int> mPointArray; 00150 FbxArray<int> mEndPointArray; 00151 #endif /* !DOXYGEN_SHOULD_SKIP_THIS *****************************************************************************************/ 00152 }; 00153 00154 #include <fbxsdk/fbxsdk_nsend.h> 00155 00156 #endif /* _FBXSDK_SCENE_GEOMETRY_LINE_H_ */