Public Member Functions | Protected Member Functions | Protected Attributes

FbxPatch Class Reference

This reference page is linked to from the following overview topics: FBX Node Attributes, Geometry, List of Python Fbx classes.


Search for all occurrences

Detailed Description

A patch is a type of node attribute with parametric surface.

A patch object is useful for creating gently curved surfaces, and provides very detailed control for manipulating complex geometry.

Examples:

ExportScene01/main.cxx, and ImportScene/DisplayPatch.cxx.

Definition at line 28 of file fbxpatch.h.

#include <fbxpatch.h>

Inheritance diagram for FbxPatch:
Inheritance graph
[legend]

List of all members.

Public Member Functions

virtual FbxNodeAttribute::EType  GetAttributeType () const
  Returns the FbxNodeAttribute::EType::ePatch node attribute type.
void  Reset ()
  Resets the patch to its default values.
virtual FbxObject Copy (const FbxObject &pObject)
  Copy an object content into this object.

Protected Member Functions

  FbxPatch (FbxManager &pManager, char const *pName)
virtual void  Destruct (bool pRecursive, bool pDependents)

Protected Attributes

EType  mUType
EType  mVType
int  mUCount
int  mVCount
int  mUStep
int  mVStep
bool  mUClosed
bool  mVClosed
bool  mUCappedBottom
bool  mUCappedTop
bool  mVCappedBottom
bool  mVCappedTop
FbxGeometry::ESurfaceMode  mSurfaceMode

Patch Properties

enum   EType {
  eBezier, eBezierQuadric, eCardinal, eBSpline,
  eLinear
}
 

Patch types.

More...
void  SetSurfaceMode (FbxGeometry::ESurfaceMode pMode)
  Sets the surface mode.
FbxGeometry::ESurfaceMode  GetSurfaceMode () const
  Returns the surface mode.
void  InitControlPoints (int pUCount, EType pUType, int pVCount, EType pVType)
  Allocates memory space for the control points array.
int  GetUCount () const
  Returns the number of control points in the U-dimension.
int  GetVCount () const
  Returns the number of control points in the V-dimension.
EType  GetPatchUType () const
  Returns the U-dimension patch type.
EType  GetPatchVType () const
  Returns the V-dimension patch type.
void  SetStep (int pUStep, int pVStep)
  Sets the patch step.
int  GetUStep () const
  Returns the number of divisions between adjacent control points in the U-dimension.
int  GetVStep () const
  Returns the number of divisions between adjacent control points in the V-dimension.
void  SetClosed (bool pU, bool pV)
  Sets closed flags.
bool  GetUClosed () const
  Returns state of the U closed flag.
bool  GetVClosed () const
  Returns state of the V closed flag.
void  SetUCapped (bool pUBottom, bool pUTop)
  Sets U-capped flags.
bool  GetUCappedBottom () const
  Returns state of the bottom U-capped flag.
bool  GetUCappedTop () const
  Returns state of the top U-capped flag.
void  SetVCapped (bool pVBottom, bool pVTop)
  Sets V-capped flags.
bool  GetVCappedBottom () const
  Returns state of the bottom V-capped flag.
bool  GetVCappedTop () const
  Returns state of the top V-capped flag.

Off-loading Serialization section

virtual bool  ContentWriteTo (FbxStream &pStream) const
  Writes the content of the patch to the given stream.
virtual bool  ContentReadFrom (const FbxStream &pStream)
  Reads the content of the patch from the given stream.

Member Enumeration Documentation

enum EType

Patch types.

  • eBezier
  • eBezierQuadric
  • eCardinal
  • eBSpline
  • eLinear
Enumerator:
eBezier 
eBezierQuadric 
eCardinal 
eBSpline 
eLinear 

Reimplemented from FbxNodeAttribute.

Definition at line 61 of file fbxpatch.h.


Constructor & Destructor Documentation

FbxPatch ( FbxManager pManager,
char const *  pName 
) [protected]

Member Function Documentation

virtual FbxNodeAttribute::EType GetAttributeType ( ) const [virtual]

Returns the FbxNodeAttribute::EType::ePatch node attribute type.

Reimplemented from FbxGeometry.

void Reset ( )

Resets the patch to its default values.

void SetSurfaceMode ( FbxGeometry::ESurfaceMode  pMode )

Sets the surface mode.

Parameters:
pMode Surface mode identifier (see Class FbxGeometry).
FbxGeometry::ESurfaceMode GetSurfaceMode ( ) const [inline]

Returns the surface mode.

Returns:
The current surface mode identifier.
Examples:
ImportScene/DisplayPatch.cxx.

Definition at line 52 of file fbxpatch.h.

{return mSurfaceMode;}
void InitControlPoints ( int  pUCount,
EType  pUType,
int  pVCount,
EType  pVType 
)

Allocates memory space for the control points array.

Parameters:
pUCount Number of U-dimension control points.
pUType U-dimension patch type.
pVCount Number of V-dimension control points.
pVType V-dimension patch type.
Examples:
ExportScene01/main.cxx.
int GetUCount ( ) const [inline]

Returns the number of control points in the U-dimension.

Returns:
The number of control points in the U-dimension.
Examples:
ImportScene/DisplayPatch.cxx.

Definition at line 81 of file fbxpatch.h.

{return mUCount;}
int GetVCount ( ) const [inline]

Returns the number of control points in the V-dimension.

Returns:
The number of control points in the V-dimension.
Examples:
ImportScene/DisplayPatch.cxx.

Definition at line 86 of file fbxpatch.h.

{return mVCount;}
EType GetPatchUType ( ) const [inline]

Returns the U-dimension patch type.

Returns:
Patch type identifier in the U-dimension.
Examples:
ImportScene/DisplayPatch.cxx.

Definition at line 91 of file fbxpatch.h.

{return mUType;}
EType GetPatchVType ( ) const [inline]

Returns the V-dimension patch type.

Returns:
Patch type identifier in the V-dimension.
Examples:
ImportScene/DisplayPatch.cxx.

Definition at line 96 of file fbxpatch.h.

{return mVType;}
void SetStep ( int  pUStep,
int  pVStep 
)

Sets the patch step.

The step is the number of divisions between adjacent control points.

Parameters:
pUStep Steps in U-dimension.
pVStep Steps in V-dimension.
Examples:
ExportScene01/main.cxx.
int GetUStep ( ) const [inline]

Returns the number of divisions between adjacent control points in the U-dimension.

Returns:
Step value in the U-dimension.
Examples:
ImportScene/DisplayPatch.cxx.

Definition at line 108 of file fbxpatch.h.

{return mUStep;}
int GetVStep ( ) const [inline]

Returns the number of divisions between adjacent control points in the V-dimension.

Returns:
Step value in the V-dimension.
Examples:
ImportScene/DisplayPatch.cxx.

Definition at line 113 of file fbxpatch.h.

{return mVStep;}
void SetClosed ( bool  pU,
bool  pV 
)

Sets closed flags.

Parameters:
pU Set to true if the patch is closed in U dimension.
pV Set to true if the patch is closed in V dimension.
Examples:
ExportScene01/main.cxx.
bool GetUClosed ( ) const [inline]

Returns state of the U closed flag.

Returns:
True if the patch is closed in U dimension.
Examples:
ImportScene/DisplayPatch.cxx.

Definition at line 124 of file fbxpatch.h.

{return mUClosed;}
bool GetVClosed ( ) const [inline]

Returns state of the V closed flag.

Returns:
True if the patch is closed in V dimension.
Examples:
ImportScene/DisplayPatch.cxx.

Definition at line 129 of file fbxpatch.h.

{return mVClosed;}
void SetUCapped ( bool  pUBottom,
bool  pUTop 
)

Sets U-capped flags.

Parameters:
pUBottom Set to true if the patch is capped at the bottom in the U-dimension.
pUTop Set to true if the patch is capped on the top in the U-dimension.
Remarks:
Capping options are saved but not loaded by Motionbuilder because they are computed from the patch topography.
bool GetUCappedBottom ( ) const [inline]

Returns state of the bottom U-capped flag.

Returns:
True if the patch is capped at the bottom in the U-dimension.
Examples:
ImportScene/DisplayPatch.cxx.

Definition at line 142 of file fbxpatch.h.

{return mUCappedBottom;}
bool GetUCappedTop ( ) const [inline]

Returns state of the top U-capped flag.

Returns:
True if the patch is capped on the top in the U-dimension.
Examples:
ImportScene/DisplayPatch.cxx.

Definition at line 147 of file fbxpatch.h.

{return mUCappedTop;}
void SetVCapped ( bool  pVBottom,
bool  pVTop 
)

Sets V-capped flags.

Parameters:
pVBottom Sets to true if the patch is capped at the bottom in the V-dimension.
pVTop Sets to true if the patch is capped on the top in the V-dimension.
Remarks:
Capping options are saved but not loaded by Motionbuilder because they are computed from the patch topography.
bool GetVCappedBottom ( ) const [inline]

Returns state of the bottom V-capped flag.

Returns:
True if the patch is capped at the bottom.
Examples:
ImportScene/DisplayPatch.cxx.

Definition at line 160 of file fbxpatch.h.

{return mVCappedBottom;}
bool GetVCappedTop ( ) const [inline]

Returns state of the top V-capped flag.

Returns:
True if the patch is capped on the top.
Examples:
ImportScene/DisplayPatch.cxx.

Definition at line 165 of file fbxpatch.h.

{return mVCappedTop;}
virtual bool ContentWriteTo ( FbxStream pStream ) const [virtual]

Writes the content of the patch to the given stream.

Parameters:
pStream The destination stream.
Returns:
True if the content is successfully processed by the receiving stream. If it is not successful, returns false.

Reimplemented from FbxGeometryBase.

virtual bool ContentReadFrom ( const FbxStream pStream ) [virtual]

Reads the content of the patch from the given stream.

Parameters:
pStream The source stream.
Returns:
True if the patch completes with the data received from the stream successfully. If it is not successful, returns false.

Reimplemented from FbxGeometryBase.

virtual FbxObject& Copy ( const FbxObject pObject ) [virtual]

Copy an object content into this object.

Parameters:
pObject The source object to copy data from.
Returns:
Returns the destination object being modified by the source.
Remarks:
This function replace the assignment operator (operator=). It will copy all property values and the name. Connections are NOT copied.

Reimplemented from FbxGeometry.

virtual void Destruct ( bool  pRecursive,
bool  pDependents 
) [protected, virtual]

Member Data Documentation

EType mUType [protected]

Definition at line 209 of file fbxpatch.h.

EType mVType [protected]

Definition at line 209 of file fbxpatch.h.

int mUCount [protected]

Definition at line 210 of file fbxpatch.h.

int mVCount [protected]

Definition at line 210 of file fbxpatch.h.

int mUStep [protected]

Definition at line 211 of file fbxpatch.h.

int mVStep [protected]

Definition at line 211 of file fbxpatch.h.

bool mUClosed [protected]

Definition at line 212 of file fbxpatch.h.

bool mVClosed [protected]

Definition at line 212 of file fbxpatch.h.

bool mUCappedBottom [protected]

Definition at line 213 of file fbxpatch.h.

bool mUCappedTop [protected]

Definition at line 213 of file fbxpatch.h.

bool mVCappedBottom [protected]

Definition at line 214 of file fbxpatch.h.

bool mVCappedTop [protected]

Definition at line 214 of file fbxpatch.h.

Definition at line 216 of file fbxpatch.h.


The documentation for this class was generated from the following file:

FbxPatch FbxPatch FbxPatch FbxPatch FbxPatch FbxPatch FbxPatch FbxPatch FbxPatch FbxPatch
FbxPatch FbxPatch FbxPatch FbxPatch FbxPatch FbxPatch FbxPatch FbxPatch FbxPatch FbxPatch