#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 theKFbxNurbsCurve. The same concepts for Nurbs curves apply to Nurbs surfaces. Nurbs surfaces simply have two dimensions (U and V).
Definition at line66of filekfbxnurbssurface.h.
Nurb Properties | |
enum | ENurbType |
Nurb types.More... | |
void | SetSurfaceMode(KFbxGeometry::ESurfaceModepMode) |
Set surface mode. | |
ESurfaceMode | GetSurfaceMode() const |
Get surface mode. | |
void | InitControlPoints(int pUCount,ENurbTypepUType, int pVCount,ENurbTypepVType) |
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) |
Set the flag inducing UV flipping at export time. | |
KFbxNodeconst * | 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. |
enumENurbType |
virtual EAttributeType GetAttributeType | ( | ) | const[inline, virtual] |
Return the type of node attribute which is EAttributeType::eNURBS_SURFACE.
Reimplemented fromKFbxGeometry.
Definition at line71of filekfbxnurbssurface.h.
void Reset | ( | ) |
Reset the nurb to default values.
void SetSurfaceMode | ( | KFbxGeometry::ESurfaceMode | pMode | ) |
Set surface mode.
pMode | Surface mode identifier (see class KfbxGeometry) |
ESurfaceModeGetSurfaceMode | ( | ) | const[inline] |
Get surface mode.
Definition at line89of filekfbxnurbssurface.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 line116of filekfbxnurbssurface.h.
int GetVCount | ( | ) | const[inline] |
Get number of control points in V direction.
Definition at line121of filekfbxnurbssurface.h.
ENurbTypeGetNurbUType | ( | ) | const[inline] |
Get nurb type in U direction.
Definition at line126of filekfbxnurbssurface.h.
ENurbTypeGetNurbVType | ( | ) | const[inline] |
Get nurb type in V direction.
Definition at line131of filekfbxnurbssurface.h.
int GetUKnotCount | ( | ) | const |
Get the number of elements in the knot vector in U direction.
SeeKFbxNurbsCurvefor 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.
SeeKFbxNurbsCurvefor 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] |
int GetVOrder | ( | ) | const[inline] |
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 line193of filekfbxnurbssurface.h.
int GetVStep | ( | ) | const[inline] |
Get the number of divisions between adjacent control points in V direction.
Definition at line198of filekfbxnurbssurface.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 | Iftrue 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 | Iftrue 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 line242of filekfbxnurbssurface.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 | Iftrue UV flipping will occur. |
KFbxNodeconst* GetCurveOnSurface | ( | int | pIndex | ) | const |
Set the flag inducing UV flipping at export time.
pFlag | Iftrue UV flipping will occur. |
int GetCurveOnSurfaceCount | ( | ) | const |
Set the flag inducing UV flipping at export time.
pFlag | Iftrue UV flipping will occur. |
bool RemoveCurveOnSurface | ( | KFbxNode* | pCurve | ) |
Set the flag inducing UV flipping at export time.
pFlag | Iftrue UV flipping will occur. |
bool IsRational | ( | ) |
Check if the surface has all rational control points.