#include <kfbxnurbssurface.h>
Inherits KFbxGeometry.
Inheritance diagram for KFbxNurbsSurface:
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 67 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) |
Set order. | |
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) |
Set the flag inducing UV flipping at export time. | |
KFbxNode const * | GetCurveOnSurface (int pIndex) const |
Set the flag inducing UV flipping at export time. | |
int | GetCurveOnSurfaceCount () const |
Set the flag inducing UV flipping at export time. | |
bool | RemoveCurveOnSurface (KFbxNode *pCurve) |
Set the flag inducing UV flipping at export time. | |
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 72 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 90 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 117 of file kfbxnurbssurface.h.
int GetVCount | ( | ) | const [inline] |
Get number of control points in V direction.
Definition at line 122 of file kfbxnurbssurface.h.
ENurbType GetNurbUType | ( | ) | const [inline] |
Get nurb type in U direction.
Definition at line 127 of file kfbxnurbssurface.h.
ENurbType GetNurbVType | ( | ) | const [inline] |
Get nurb type in V direction.
Definition at line 132 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.
Set order.
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 177 of file kfbxnurbssurface.h.
int GetVOrder | ( | ) | const [inline] |
Get nurb order in V direction.
Definition at line 182 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 194 of file kfbxnurbssurface.h.
int GetVStep | ( | ) | const [inline] |
Get the number of divisions between adjacent control points in V direction.
Definition at line 199 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 243 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 | ) |
Set the flag inducing UV flipping at export time.
pFlag | If true UV flipping will occur. |
KFbxNode const* GetCurveOnSurface | ( | int | pIndex | ) | const |
Set the flag inducing UV flipping at export time.
pFlag | If true UV flipping will occur. |
int GetCurveOnSurfaceCount | ( | ) | const |
Set the flag inducing UV flipping at export time.
pFlag | If true UV flipping will occur. |
bool RemoveCurveOnSurface | ( | KFbxNode * | pCurve | ) |
Set the flag inducing UV flipping at export time.
pFlag | If true UV flipping will occur. |
bool IsRational | ( | ) |
Check if the surface has all rational control points.