#include
<kfbxgeometryconverter.h>
Definition at line 72 of file kfbxgeometryconverter.h.
Triangulation |
|
KFbxMesh * | TriangulateMesh (KFbxMesh const *pMesh) |
Triangulate a mesh. |
|
KFbxMesh * | TriangulatePatch (KFbxPatch const *pPatch) |
Triangulate a patch. |
|
KFbxMesh * | TriangulateNurb (KFbxNurb const *pNurb) |
Triangulate a nurb. |
|
bool | TriangulateInPlace (KFbxNode *pNode) |
Triangulate a mesh, patch or nurb contained
in a node and preserve the skins and shapes animation channels.
|
|
bool | AddAlternateGeometry (KFbxNode *pNode, KFbxGeometry *pSrcGeom, KFbxGeometry *pAltGeom, KFbxWeightedMapping *pSrcToAltWeightedMapping, bool pConvertDeformations) |
Add an "alternate" geometry to the node.
|
|
bool | ConvertGeometryAnimation (KFbxNode *pNode, KFbxGeometry *pSrcGeom, KFbxGeometry *pDstGeom) |
Convert skins and shapes from source to
destination geometry. |
|
bool | ComputeGeometryControlPointsWeightedMapping (KFbxGeometry *pSrcGeom, KFbxGeometry *pDstGeom, KFbxWeightedMapping *pSrcToDstWeightedMapping, bool pSwapUV=false) |
Compute a "vertex-correspondence" table that
helps passing from source to destination geometry. |
|
Geometry Conversion |
|
KFbxNurb * | ConvertPatchToNurb (KFbxPatch *pPatch) |
Convert from patch to nurb. |
|
bool | ConvertPatchToNurbInPlace (KFbxNode *pNode) |
Convert a patch contained in a node to a
nurb. |
|
KFbxNurbsSurface * | ConvertPatchToNurbsSurface (KFbxPatch *pPatch) |
Convert a patch to nurb surface. |
|
bool | ConvertPatchToNurbsSurfaceInPlace (KFbxNode *pNode) |
Convert a patch contained in a node to a
nurb surface. |
|
KFbxNurbsSurface * | ConvertNurbToNurbsSurface (KFbxNurb *pNurb) |
Convert a KFbxNurb to
a KFbxNurbsSurface.
|
|
KFbxNurb * | ConvertNurbsSurfaceToNurb (KFbxNurbsSurface *pNurb) |
Convert a KFbxNurbsSurface
to a KFbxNurb.
|
|
bool | ConvertNurbToNurbsSurfaceInPlace (KFbxNode *pNode) |
Convert a nurb, contained in a node, to a
nurbs surface. |
|
bool | ConvertNurbsSurfaceToNurbInPlace (KFbxNode *pNode) |
Convert a nurb contained in a node to a
nurbs surface. |
|
Nurb UV and Links Swapping |
|
KFbxNurb * | FlipNurb (KFbxNurb *pNurb, bool pSwapUV, bool pSwapClusters) |
Flip UV and/or skin clusters of a nurb.
|
|
KFbxNurbsSurface * | FlipNurbsSurface (KFbxNurbsSurface *pNurb, bool pSwapUV, bool pSwapClusters) |
Flip UV and/or skin clusters of a nurb
surface. |
|
Normals By Polygon Vertex Emulation |
|
bool | EmulateNormalsByPolygonVertex (KFbxMesh *pMesh) |
Emulate normals by polygon vertex mode for a
mesh. |
|
bool | ComputeEdgeSmoothingFromNormals (KFbxMesh *pMesh) const |
Create edge smoothing information from
polygon-vertex mapped normals. |
|
bool | ComputePolygonSmoothingFromEdgeSmoothing (KFbxMesh *pMesh, int pIndex=0) const |
Convert edge smoothing to polygon smoothing
group. |
|
bool | ComputeEdgeSmoothingFromPolygonSmoothing (KFbxMesh *pMesh, int pIndex=0) const |
Convert polygon smoothing group to edge
smoothing. |
|
Public Member Functions |
|
KFbxGeometryConverter (KFbxSdkManager *pManager) | |
~KFbxGeometryConverter () |
KFbxGeometryConverter | ( | KFbxSdkManager * | pManager | ) |
Triangulate a mesh.
pMesh | Pointer to the mesh to triangulate. |
Triangulate a patch.
pPatch | Pointer to the patch to triangulate. |
Triangulate a nurb.
pNurb | Pointer to the nurb to triangulate. |
bool TriangulateInPlace | ( | KFbxNode * | pNode | ) |
Triangulate a mesh, patch or nurb contained in a node and preserve the skins and shapes animation channels.
pNode | Pointer to the node containing the geometry to triangulate. |
true
on success, or false
if the node
attribute is not a mesh, a patch or a nurb.bool AddAlternateGeometry | ( | KFbxNode * | pNode, | |
KFbxGeometry * | pSrcGeom, | |||
KFbxGeometry * | pAltGeom, | |||
KFbxWeightedMapping * | pSrcToAltWeightedMapping, | |||
bool | pConvertDeformations | |||
) |
Add an "alternate" geometry to the node.
pNode | Pointer to the node containing the geometry. | |
pSrcGeom | Pointer to the source geometry. | |
pAltGeom | Pointer to the alternate geometry. | |
pSrcToAltWeightedMapping | Pointer to the weighted mapping table (optional). | |
pConvertDeformations | Flag used only if parameter pSrcToAltWeightedMapping is a valid
pointer to a weighted mapping table. Set to true to
convert deformations using the weighted mapping table. |
true
on success, or false
if the node
attribute is not a mesh, a patch or a nurb.bool ConvertGeometryAnimation | ( | KFbxNode * | pNode, | |
KFbxGeometry * | pSrcGeom, | |||
KFbxGeometry * | pDstGeom | |||
) |
Convert skins and shapes from source to destination geometry.
pNode | Pointer to the node containing the geometry. | |
pSrcGeom | Pointer to the source geometry. | |
pDstGeom | Pointer to the destination geometry. |
true
on success, false
otherwise.Altought this method is publicly available, its only use in the FBX SDK is internal to some of the conversion routines declared in this class.
bool ComputeGeometryControlPointsWeightedMapping | ( | KFbxGeometry * | pSrcGeom, | |
KFbxGeometry * | pDstGeom, | |||
KFbxWeightedMapping * | pSrcToDstWeightedMapping, | |||
bool | pSwapUV = false |
|||
) |
Compute a "vertex-correspondence" table that helps passing from source to destination geometry.
pSrcGeom | Pointer to the source geometry. | |
pDstGeom | Pointer to the destination geometry. | |
pSrcToDstWeightedMapping | Pointer to the weighted mapping table. | |
pSwapUV | Set to true to swap UVs. |
true
on success, false
if the
function fails to compute the correspondence.Convert from patch to nurb.
pPatch | Pointer to the patch to convert. |
NULL
if the conversion fails.bool ConvertPatchToNurbInPlace | ( | KFbxNode * | pNode | ) |
Convert a patch contained in a node to a nurb.
Use this function to preserve the patch's skins and shapes animation channels.
pNode | Pointer to the node containing the patch. |
true
on success, false
if the node
attribute is not a patch.KFbxNurbsSurface* ConvertPatchToNurbsSurface | ( | KFbxPatch * | pPatch | ) |
Convert a patch to nurb surface.
pPatch | Pointer to the patch to convert. |
NULL
if conversion
fails.bool ConvertPatchToNurbsSurfaceInPlace | ( | KFbxNode * | pNode | ) |
Convert a patch contained in a node to a nurb surface.
Use this function to preserve the patch's skins and shapes animation channels.
pNode | Pointer to the node containing the patch. |
true
on success, false
if the node
attribute is not a patch.KFbxNurbsSurface* ConvertNurbToNurbsSurface | ( | KFbxNurb * | pNurb | ) |
Convert a KFbxNurb to a KFbxNurbsSurface.
pNurb | Pointer to the original nurb |
KFbxNurb* ConvertNurbsSurfaceToNurb | ( | KFbxNurbsSurface * | pNurb | ) |
Convert a KFbxNurbsSurface to a KFbxNurb.
pNurb | Pointer to the original nurbs surface |
bool ConvertNurbToNurbsSurfaceInPlace | ( | KFbxNode * | pNode | ) |
Convert a nurb, contained in a node, to a nurbs surface.
Use this function to preserve the nurb's skins and shapes animation channels.
pNode | Pointer to the node containing the nurb. |
true
on success, false
otherwisebool ConvertNurbsSurfaceToNurbInPlace | ( | KFbxNode * | pNode | ) |
Convert a nurb contained in a node to a nurbs surface.
Use this function to preserve the nurb's skins and shapes animation channels.
pNode | Pointer to the node containing the nurbs surface. |
true
on success, false
otherwiseFlip UV and/or skin clusters of a nurb.
pNurb | Pointer to the Source nurb. | |
pSwapUV | Set to true to swap the UVs. |
|
pSwapClusters | Set to true to swap the control point indices of
clusters. |
NULL
if the function
fails.KFbxNurbsSurface* FlipNurbsSurface | ( | KFbxNurbsSurface * | pNurb, | |
bool | pSwapUV, | |||
bool | pSwapClusters | |||
) |
Flip UV and/or skin clusters of a nurb surface.
pNurb | Pointer to the Source nurb surface. | |
pSwapUV | Set to true to swap the UVs. |
|
pSwapClusters | Set to true to swap the control point indices of
clusters. |
NULL
if the function
fails.bool EmulateNormalsByPolygonVertex | ( | KFbxMesh * | pMesh | ) |
Emulate normals by polygon vertex mode for a mesh.
pMesh | Pointer to the mesh object. |
true
on success, false
if the number
of normals in the mesh and in its associated shapes don't match the
number of polygon vertices.bool ComputeEdgeSmoothingFromNormals | ( | KFbxMesh * | pMesh | ) | const |
Create edge smoothing information from polygon-vertex mapped normals.
Existing smoothing information is removed and edge data is created if none exists on the mesh.
pMesh | The mesh used to generate edge smoothing. |
true
on success, false
otherwise.Convert edge smoothing to polygon smoothing group.
Existing smoothing information is replaced.
pMesh | The mesh that contains the smoothing to be converted. | |
pIndex | The index of the layer smoothing to be converted. |
true
on success, false
otherwise.Convert polygon smoothing group to edge smoothing.
Existing smoothing information is replaced.
pMesh | The mesh that contains the smoothing to be converted. | |
pIndex | The index of the layer smoothing to be converted |
true
on success, false
otherwise.