This reference page is linked to from the following overview topics: FBX SDK 2012, Geometry, Meshes.
A line is a geometry made of points.
To be different from curves(nurbs, etc), line is linear. The class can define a line with as many points as needed. The line can also represent line segments, which means there will be gaps among points. To denote line segments and these gaps, certain points could be marked as end points. That's why we supply an index array(mPointArray) and an end point array(mEndPointArray). To mark a point as end point, we add its index(of mPointArray) to mEndPointArray.
Methods to initialize, set and access control points are provided in the KFbxGeometryBase class. To initialize control point count, please use KFbxLine::InitControlPoints(int pCount). To set a control point, please use KFbxLine::SetControlPointAt(const KFbxVector4 &pCtrlPoint , int pIndex). To get control point count, please use KFbxLine::GetControlPointsCount(). To get a control point, please use KFbxLine::GetControlPointAt(int pIndex). The pIndex could be returned by GetPointIndexAt(i).
Definition at line 66 of file kfbxline.h.
#include <kfbxline.h>
Public Member Functions |
|
virtual EAttributeType | GetAttributeType () const |
Return the type of node attribute. |
|
void | Reset () |
Reset the line to default values. |
|
void | SetIndexArraySize (int pCount) |
Sets the size of index array(mPointArray).
|
|
int | GetIndexArraySize () const |
Return the size of index array(mPointArray).
|
|
KArrayTemplate< int > * | GetIndexArray () |
Get the pointer to the index array. |
|
bool | SetPointIndexAt (int pValue, int pIndex, bool pAsEndPoint=false) |
Sets index array(mPointArray) at a specified
index. |
|
int | GetPointIndexAt (int pIndex) const |
Gets the point index(i.e: an index to a
control point) at the specified index. |
|
bool | AddPointIndex (int pValue, bool pAsEndPoint=false) |
Adds a point to the index array
(mPointArray). |
|
KArrayTemplate< int > * | GetEndPointArray () |
Get the pointer to the end point array.
|
|
bool | AddEndPoint (int pPointIndex) |
Adds a point index to the end point array
(mEndPointArray). |
|
int | GetEndPointAt (int pEndPointIndex) const |
Gets the point index(an index to the point
index array) at the specified index. |
|
int | GetEndPointCount () const |
Query the number of end points. |
|
virtual KFbxObject & | Copy (const KFbxObject &pObject) |
Copy an object content into this object.
|
|
Public Attributes |
|
KFbxTypedProperty< fbxBool1 > | Renderable |
This property decide whether this line is
renderable in 3DSMax. |
|
Protected Member Functions |
|
KFbxLine (KFbxSdkManager &pManager, char const *pName) | |
virtual bool | ConstructProperties (bool pForceSet) |
virtual void | Destruct (bool pRecursive, bool pDependents) |
KFbxLine | ( | KFbxSdkManager & | pManager, |
char const * | pName | ||
) | [protected] |
virtual EAttributeType GetAttributeType | ( | ) | const [virtual] |
Return the type of node attribute.
Reimplemented from KFbxGeometry.
void Reset | ( | ) |
Reset the line to default values.
Frees and set to NULL
all layers and clear the
control point array, the index array and end points array.
void SetIndexArraySize | ( | int | pCount | ) |
Sets the size of index array(mPointArray).
pCount | Specify the size of mPointArray. |
int GetIndexArraySize | ( | ) | const |
Return the size of index array(mPointArray).
KArrayTemplate<int>* GetIndexArray | ( | ) | [inline] |
Get the pointer to the index array.
Definition at line 94 of file kfbxline.h.
{ return &mPointArray;}
bool SetPointIndexAt | ( | int | pValue, |
int | pIndex, | ||
bool | pAsEndPoint =
false |
||
) |
Sets index array(mPointArray) at a specified index.
pValue | An index to a control point. Its range is from 0 to count of control point. |
pIndex | The specified index to mPointArray. Its range is from 0 to size of mPointArray. |
pAsEndPoint | Mark current point as end point or not. If pAsEndPoint is true, pIndex will be automatically added to mEndPointArray. |
int GetPointIndexAt | ( | int | pIndex | ) | const |
Gets the point index(i.e: an index to a control point) at the specified index.
pIndex | The specified index to the point index array(mPointArray). Its range is from 0 to size of mPointArray. |
bool AddPointIndex | ( | int | pValue, |
bool | pAsEndPoint =
false |
||
) |
Adds a point to the index array (mPointArray).
pValue | The index to a control point. Its range is from 0 to count of control point. |
pAsEndPoint | Mark current point as end point or not. If pAsEndPoint is true, current point index will be automatically added to mEndPointArray. |
KArrayTemplate<int>* GetEndPointArray | ( | ) | [inline] |
Get the pointer to the end point array.
Definition at line 120 of file kfbxline.h.
{ return &mEndPointArray;}
bool AddEndPoint | ( | int | pPointIndex | ) |
Adds a point index to the end point array (mEndPointArray).
To mark it as end point, its index to mPointArray will be added to mEndPointArray.
pPointIndex | The specified index to the point index array(mPointArray). Its range is from 0 to size of mPointArray. |
int lIndexCount = lLine->GetIndexArraySize(); for(int i = 0; i < lIndexCount; i++) { if(i%2 == 1) { lLine->AddEndPoint(i); } }
int GetEndPointAt | ( | int | pEndPointIndex | ) | const |
Gets the point index(an index to the point index array) at the specified index.
pIndex | The specified index to the end points array(mEndPointArray). Its range is from 0 to size of mEndPointArray. |
int lEndPointsCount = lLine->GetEndPointCount(); for (int j = 0; j < lEndPointsCount; j++) { //Get the index to the index array. int lEndIndex = lLine->GetEndPointAt(j); // to get the control point index of the end point int lControlPointIndex = lLine->GetPointIndexAt(lEndIndex); }
int GetEndPointCount | ( | ) | const |
Query the number of end points.
virtual KFbxObject& Copy | ( | const KFbxObject & | pObject | ) | [virtual] |
Copy an object content into this object.
pObject | The source object to copy data from. |
Reimplemented from KFbxGeometry.
virtual bool ConstructProperties | ( | bool | pForceSet | ) | [protected, virtual] |
Reimplemented from KFbxGeometryBase.
virtual void Destruct | ( | bool | pRecursive, |
bool | pDependents | ||
) | [protected, virtual] |
Reimplemented from KFbxGeometry.
This property decide whether this line is renderable in 3DSMax.
Lines from Maya are not renderable by default.
Definition at line 167 of file kfbxline.h.