KFbxTrimNurbsSurface
#include<kfbxtrimnurbssurface.h>

Inheritance diagram for KFbxTrimNurbsSurface:

Inheritance graph
[legend]

List of all members.

Detailed Description

KFbxTrimNurbsSurfaceDescribes a nurbs surface with regions trimmed or cut away with trimming boundaries.

Definition at line153of filekfbxtrimnurbssurface.h.


Public Member Functions

virtualEAttributeType GetAttributeType() const
 Return the type of node attribute.
int GetTrimRegionCount() const
 Returns the number of regions on this trimmed nurbs surface.
void BeginTrimRegion()
 Call this before adding boundaries for a new trim region.
void EndTrimRegion()
 Call this after the last boundary for a given region is added.
bool AddBoundary(KFbxBoundary*pBoundary)
 Appends a trimming boundary to the set of trimming boundaries.
KFbxBoundaryGetBoundary(int pIndex, int pRegionIndex=0)
 Gets the boundary at a given index for a given region.
KFbxBoundaryconst * GetBoundary(int pIndex, int pRegionIndex=0) const
 Gets the boundary at a given index for a given region.
int GetBoundaryCount(int pRegionIndex=0) const
 Gets the number of boundaries on this surface.
void SetNurbsSurface(KFbxNurbsSurfaceconst *pNurbs)
 Set the nurbs surface that will be trimmed by the trimming boundaries.
KFbxNurbsSurfaceGetNurbsSurface()
 Gets the untrimmed surface that is trimmed by the trim boundaries.
KFbxNurbsSurfaceconst * GetNurbsSurface() const
 Gets the untrimmed surface that is trimmed by the trim boundaries.
void SetFlipNormals(bool pFlip)
 The normals of the surface can be reversed to reverse the surface.
bool GetFlipNormals() const
 Check if the normals are flipped.
virtual int GetControlPointsCount() const
 Get the number of control points.
virtualKFbxVector4GetControlPoints() const
 Get a pointer to the array of control points.
Shape Management
virtual int AddShape(KFbxShape*pShape, char const *pShapeName)
 Shapes on trim nurbs are stored on the untrimmed surface.
virtual void ClearShape()
 Shapes on trim nurbs are stored on the untrimmed surface.
virtual int GetShapeCount() const
 Shapes on trim nurbs are stored on the untrimmed surface.
virtualKFbxShapeGetShape(int pIndex)
 Shapes on trim nurbs are stored on the untrimmed surface.
virtualKFbxShapeconst * GetShape(int pIndex) const
 Shapes on trim nurbs are stored on the untrimmed surface.
virtual char const * GetShapeName(int pIndex) const
 Shapes on trim nurbs are stored on the untrimmed surface.
virtualKFCurveGetShapeChannel(int pIndex, bool pCreateAsNeeded=false, char const *pTakeName=NULL)
 Shapes on trim nurbs are stored on the untrimmed surface.

Member Function Documentation

virtualEAttributeTypeGetAttributeType( ) const[inline, virtual]

Return the type of node attribute.

Reimplemented fromKFbxGeometry.

Definition at line158of filekfbxtrimnurbssurface.h.

int GetTrimRegionCount( ) const

Returns the number of regions on this trimmed nurbs surface.

Note there is at always at least one trim region.

Returns:
The number of regions

void BeginTrimRegion( ) 

Call this before adding boundaries for a new trim region.

The number of regions is incremented on this call.

void EndTrimRegion( ) 

Call this after the last boundary for a given region is added.

If no boundaries are added inbetween calls to BeginTrimRegion and EndTrimRegion, the last region is removed.

bool AddBoundary(KFbxBoundarypBoundary ) 

Appends a trimming boundary to the set of trimming boundaries.

The first boundary specified for a given trim region should be the outer boundary. All other boundaries are inner boundaries. This must be called after a call toBeginTrimRegion(). Boundaries cannot be shared among regions. Duplicate the boundary if nessecary. SeeKFbxBoundary

Parameters:
pBoundary The boundary to add.
Returns:
true if the boundary was added, false otherwise

KFbxBoundary* GetBoundary(int pIndex,
int pRegionIndex=0 
)

Gets the boundary at a given index for a given region.

Parameters:
pIndex The index of the boundary to retrieve. No bounds checking is done.
pRegionIndex The index of the region which is bound by the boundary.
Returns:
The trimming boundary at index pIndex, if pIndex is in the range [0,GetBoundaryCount()) otherwise the result is undefined.

KFbxBoundaryconst* GetBoundary(int pIndex,
int pRegionIndex=0 
)const

Gets the boundary at a given index for a given region.

Parameters:
pIndex The index of the boundary to retrieve. No bounds checking is done.
pRegionIndex The index of the region which is bound by the boundary.
Returns:
The trimming boundary at index pIndex, if pIndex is in the range [0,GetBoundaryCount()) otherwise the result is undefined.

int GetBoundaryCount(int pRegionIndex=0 ) const

Gets the number of boundaries on this surface.

Parameters:
pRegionIndex The index of the region
Returns:
The number of trim boundaries

void SetNurbsSurface(KFbxNurbsSurfaceconst * pNurbs ) 

Set the nurbs surface that will be trimmed by the trimming boundaries.

Parameters:
pNurbs Nurbs

KFbxNurbsSurface* GetNurbsSurface( ) 

Gets the untrimmed surface that is trimmed by the trim boundaries.

Returns:
Pointer to the (untrimmed) nurbs surface.

KFbxNurbsSurfaceconst* GetNurbsSurface( ) const

Gets the untrimmed surface that is trimmed by the trim boundaries.

Returns:
Pointer to the (untrimmed) nurbs surface.

void SetFlipNormals(bool pFlip ) [inline]

The normals of the surface can be reversed to reverse the surface.

Parameters:
pFlip If true, the surface is reversed, else the surface is not reversed.

Definition at line232of filekfbxtrimnurbssurface.h.

bool GetFlipNormals( ) const[inline]

Check if the normals are flipped.

Returns:
True if normals are flipped, false otherwise

Definition at line237of filekfbxtrimnurbssurface.h.

virtual int AddShape(KFbxShapepShape,
char const * pShapeName 
)[virtual]

Shapes on trim nurbs are stored on the untrimmed surface.

Thus, this is equivalent to callingGetNurbsSurface()->AddShape()SeeKFbxGeometry::AddShape()for method description.

Parameters:
pShape Pointer to the shape object.
pShapeName Name given to the shape.
Returns:
-1

Reimplemented fromKFbxGeometry.

virtual void ClearShape( ) [virtual]

Shapes on trim nurbs are stored on the untrimmed surface.

Thus, this is equivalent to callingGetNurbsSurface()->ClearShape()SeeKFbxGeometry::ClearShape()for method description.

Reimplemented fromKFbxGeometry.

virtual int GetShapeCount( ) const[virtual]

Shapes on trim nurbs are stored on the untrimmed surface.

Thus, this is equivalent to callingGetNurbsSurface()->GetShapeCount()SeeKFbxGeometry::GetShapeCount()for method description.

Reimplemented fromKFbxGeometry.

virtualKFbxShape* GetShape(int pIndex ) [virtual]

Shapes on trim nurbs are stored on the untrimmed surface.

Thus, this is equivalent to callingGetNurbsSurface()->GetShape()SeeKFbxGeometry::GetShape()for method description.

Parameters:
pIndex Index of shape.

Reimplemented fromKFbxGeometry.

virtualKFbxShapeconst* GetShape(int pIndex ) const[virtual]

Shapes on trim nurbs are stored on the untrimmed surface.

Thus, this is equivalent to callingGetNurbsSurface()->GetShape()SeeKFbxGeometry::GetShape()for method description.

Parameters:
pIndex Index of shape.

Reimplemented fromKFbxGeometry.

virtual char const* GetShapeName(int pIndex ) const[virtual]

Shapes on trim nurbs are stored on the untrimmed surface.

Thus, this is equivalent to callingGetNurbsSurface()->GetShapeName()SeeKFbxGeometry::GetShapeName()for method description.

Parameters:
pIndex Index of shape.

Reimplemented fromKFbxGeometry.

virtualKFCurve* GetShapeChannel(int pIndex,
bool pCreateAsNeeded=false,
char const * pTakeName=NULL 
)[virtual]

Shapes on trim nurbs are stored on the untrimmed surface.

Thus, this is equivalent to callingGetNurbsSurface()->GetShapeChannel()SeeKFbxGeometry::GetShapeChannel()for method description.

Parameters:
pIndex Shape index.
pCreateAsNeeded If true, the fcurve is created if not already present.
pTakeName Take from which we want the FCurve (if NULL, use the current take).

Reimplemented fromKFbxGeometry.

virtual int GetControlPointsCount( ) const[virtual]

Get the number of control points.

Returns:
The number of control points allocated in the geometry.

Reimplemented fromKFbxGeometryBase.

virtualKFbxVector4* GetControlPoints( ) const[virtual]

Get a pointer to the array of control points.

Returns:
Pointer to the array of control points, orNULLif the array has not been allocated.
Remarks:
Use the functionKFbxGeometryBase::InitControlPoints()to allocate the array.

Reimplemented fromKFbxGeometryBase.