#include
<kfbxnurbssurface.h>
A Nurbs surface is defined by the degree, form, knot vector and control points in the U and V directions.
For more information on the meaning of the form, knot vector and control points, see the documentation for the KFbxNurbsCurve. The same concepts for Nurbs curves apply to Nurbs surfaces. Nurbs surfaces simply have two dimensions (U and V).
Definition at line 62 of file kfbxnurbssurface.h.
Nurb Properties |
|
enum | ENurbType |
Nurb types. More... |
|
void | SetSurfaceMode (KFbxGeometry::ESurfaceMode pMode) |
Set surface mode. |
|
ESurfaceMode | GetSurfaceMode () const |
Get surface mode. |
|
void | InitControlPoints (int pUCount, ENurbType pUType, int pVCount, ENurbType pVType) |
Allocate memory space for the array of
control points as well as the knot and multiplicity vectors.
|
|
int | GetUCount () const |
Get number of control points in U direction.
|
|
int | GetVCount () const |
Get number of control points in V direction.
|
|
ENurbType | GetNurbUType () const |
Get nurb type in U direction. |
|
ENurbType | GetNurbVType () const |
Get nurb type in V direction. |
|
int | GetUKnotCount () const |
Get the number of elements in the knot
vector in U direction. |
|
double * | GetUKnotVector () const |
Get knot vector in U direction. |
|
int | GetVKnotCount () const |
Get the number of elements in the knot
vector in V direction. |
|
double * | GetVKnotVector () const |
Get knot vector in V direction. |
|
void | SetOrder (kUInt pUOrder, kUInt pVOrder) |
Get multiplicity control points in U
direction. |
|
int | GetUOrder () const |
Get nurb order in U direction. |
|
int | GetVOrder () const |
Get nurb order in V direction. |
|
void | SetStep (int pUStep, int pVStep) |
Set step. |
|
int | GetUStep () const |
Get the number of divisions between adjacent
control points in U direction. |
|
int | GetVStep () const |
Get the number of divisions between adjacent
control points in V direction. |
|
int | GetUSpanCount () const |
Nurb types. |
|
int | GetVSpanCount () const |
Nurb types. |
|
Nurb Export Flags |
|
void | SetApplyFlipUV (bool pFlag) |
Set the flag inducing UV flipping at export
time. |
|
bool | GetApplyFlipUV () const |
Get the flag inducing UV flipping at export
time. |
|
void | SetApplyFlipLinks (bool pFlag) |
Set the flag inducing link flipping at
export time. |
|
bool | GetApplyFlipLinks () const |
Get the flag inducing link flipping at
export time. |
|
bool | GetApplyFlip () const |
Get flip flags state. |
|
void | AddCurveOnSurface (KFbxNode *pCurve) |
Add curve on surface Adds a 2d, parameter
space curve to this surface. |
|
KFbxNode * | GetCurveOnSurface (int pIndex) |
Retrieves a curve on this surface. |
|
KFbxNode const * | GetCurveOnSurface (int pIndex) const |
Retrieves a curve on this surface. |
|
int | GetCurveOnSurfaceCount () const |
bool | RemoveCurveOnSurface (KFbxNode *pCurve) |
Removes a curve from this surface. |
|
Public Member Functions |
|
virtual EAttributeType | GetAttributeType () const |
Return the type of node attribute which is
EAttributeType::eNURBS_SURFACE. |
|
void | Reset () |
Reset the nurb to default values. |
|
bool | IsRational () |
Check if the surface has all rational
control points. |
enum ENurbType |
virtual EAttributeType GetAttributeType | ( | ) | const [inline, virtual] |
Return the type of node attribute which is EAttributeType::eNURBS_SURFACE.
Reimplemented from KFbxGeometry.
Definition at line 67 of file kfbxnurbssurface.h.
void Reset | ( | ) |
Reset the nurb to default values.
void SetSurfaceMode | ( | KFbxGeometry::ESurfaceMode | pMode | ) |
Set surface mode.
pMode | Surface mode identifier (see class KfbxGeometry) |
ESurfaceMode GetSurfaceMode | ( | ) | const [inline] |
Get surface mode.
Definition at line 85 of file kfbxnurbssurface.h.
Allocate memory space for the array of control points as well as the knot and multiplicity vectors.
pUCount | Number of control points in U direction. | |
pUType | Nurb type in U direction. | |
pVCount | Number of control points in V direction. | |
pVType | Nurb type in V direction. |
int GetUCount | ( | ) | const [inline] |
Get number of control points in U direction.
Definition at line 112 of file kfbxnurbssurface.h.
int GetVCount | ( | ) | const [inline] |
Get number of control points in V direction.
Definition at line 117 of file kfbxnurbssurface.h.
ENurbType GetNurbUType | ( | ) | const [inline] |
Get nurb type in U direction.
Definition at line 122 of file kfbxnurbssurface.h.
ENurbType GetNurbVType | ( | ) | const [inline] |
Get nurb type in V direction.
Definition at line 127 of file kfbxnurbssurface.h.
int GetUKnotCount | ( | ) | const |
Get the number of elements in the knot vector in U direction.
See KFbxNurbsCurve for more information.
double* GetUKnotVector | ( | ) | const |
Get knot vector in U direction.
int GetVKnotCount | ( | ) | const |
Get the number of elements in the knot vector in V direction.
See KFbxNurbsCurve for more information.
double* GetVKnotVector | ( | ) | const |
Get knot vector in V direction.
void SetOrder | ( | kUInt | pUOrder, | |
kUInt | pVOrder | |||
) |
Get multiplicity control points in U direction.
pUOrder | Nurb order in U direction. | |
pVOrder | Nurb order in V direction. |
int GetUOrder | ( | ) | const [inline] |
Get nurb order in U direction.
Definition at line 172 of file kfbxnurbssurface.h.
int GetVOrder | ( | ) | const [inline] |
Get nurb order in V direction.
Definition at line 177 of file kfbxnurbssurface.h.
void SetStep | ( | int | pUStep, | |
int | pVStep | |||
) |
Set step.
The step is the number of divisions between adjacent control points.
pUStep | Steps in U direction. | |
pVStep | Steps in V direction. |
int GetUStep | ( | ) | const [inline] |
Get the number of divisions between adjacent control points in U direction.
Definition at line 189 of file kfbxnurbssurface.h.
int GetVStep | ( | ) | const [inline] |
Get the number of divisions between adjacent control points in V direction.
Definition at line 194 of file kfbxnurbssurface.h.
int GetUSpanCount | ( | ) | const |
Nurb types.
int GetVSpanCount | ( | ) | const |
Nurb types.
void SetApplyFlipUV | ( | bool | pFlag | ) |
Set the flag inducing UV flipping at export time.
pFlag | If true UV flipping will occur. |
bool GetApplyFlipUV | ( | ) | const |
Get the flag inducing UV flipping at export time.
void SetApplyFlipLinks | ( | bool | pFlag | ) |
Set the flag inducing link flipping at export time.
pFlag | If true the links control points indices will be
flipped. |
bool GetApplyFlipLinks | ( | ) | const |
Get the flag inducing link flipping at export time.
bool GetApplyFlip | ( | ) | const [inline] |
Get flip flags state.
true
if we need to flip either the UV or the
links.Definition at line 238 of file kfbxnurbssurface.h.
void AddCurveOnSurface | ( | KFbxNode * | pCurve | ) |
Add curve on surface Adds a 2d, parameter space curve to this surface.
pCurve | The curve to add to the surface |
KFbxNode* GetCurveOnSurface | ( | int | pIndex | ) |
Retrieves a curve on this surface.
pIndex | Index of the curve to retrieve. Valid range is 0 to GetCurveOnSurfaceCount() - 1 |
KFbxNode const* GetCurveOnSurface | ( | int | pIndex | ) | const |
Retrieves a curve on this surface.
pIndex | Index of the curve to retrieve. Valid range is 0 to GetCurveOnSurfaceCount() - 1 |
int GetCurveOnSurfaceCount | ( | ) | const |
bool RemoveCurveOnSurface | ( | KFbxNode * | pCurve | ) |
Removes a curve from this surface.
pCurve | The curve to remove |
bool IsRational | ( | ) |
Check if the surface has all rational control points.