Geometry class. More...
#include <pyfbsdk.h>

Public Member Functions | |
| bool | GeometryBegin () |
| Begin geometry editing. | |
| bool | GeometryEnd () |
| End geometry editing. | |
| FBNormal | GetBinormalsDirectArray (int pOutArrayCount) |
| Get a pointer to the direct array of binormals. | |
| int | GetBinormalsIndexArray (int pOutArrayCount) |
| Get a pointer to the index array of binormals. | |
| int | GetMaterialIndexArray (int pOutArrayCount) |
| Get a pointer to the index array of Material. | |
| FBNormal | GetNormalsDirectArray (int pOutArrayCount) |
| Get a pointer to the direct array of normals. | |
| int | GetNormalsIndexArray (int pOutArrayCount) |
| Get a pointer to the index array of normals. | |
| FBVertex | GetPositionsArray (int pOutArrayCount) |
| Get a pointer to the position array. | |
| FBNormal | GetTangentsDirectArray (int pOutArrayCount) |
| Get a pointer to the direct array of tangents. | |
| int | GetTangentsIndexArray (int pOutArrayCount) |
| Get a pointer to the index array of tangents. | |
| FBUV | GetUVSetDirectArray (int pOutArrayCount, str pUVSetName=None) |
| Get a pointer to the direct array of UVset Modify array value will be only effective when geometry editing is enabled. | |
| int | GetUVSetIndexArray (int pOutArrayCount, str pUVSetName=None) |
| Get a pointer to the index array of UVset. | |
| FBGeometryMappingMode | GetUVSetMappingMode (str pUVSetName=None) |
| Get UVSet mapping mode. | |
| FBGeometryReferenceMode | GetUVSetReferenceMode (str pUVSetName=None) |
| Get UVSet reference mode. | |
| FBStringList | GetUVSets () |
| Get available UVSet name. | |
| FBColorF | GetVertexColorsDirectArray (int pOutArrayCount) |
| Get a pointer to the direct array of vertex color. | |
| int | GetVertexColorsIndexArray (int pOutArrayCount) |
| Get a pointer to the index array of vertex color. | |
| int | ShapeAdd (str pName) |
| Add new shape. | |
| ShapeClearAll () | |
| Clears all the shapes. | |
| int | ShapeGetCount () |
| Get Shape Count. | |
| str | ShapeGetName (int pShapeIdx) |
| Return the shape Name. | |
| ShapeInit (int pShapeIdx, int pDiffSize, bool pWithNormal=False) | |
| Init the shape. | |
| bool | ShapeSetDiffPoint (int pShapeIdx, int pDiffIndex, int pOriIndex, FBVertex pPosDiff) |
| Set the differentiate point. | |
| bool | ShapeSetDiffPoint (int pShapeIdx, int pDiffIndex, int pOriIndex, FBVertex pPosDiff, FBNormal pNormalDiff) |
| Set the differentiate point. | |
| int | VertexAdd (FBVertex pVertex) |
| Add a vertex. | |
| int | VertexAdd (FBVertex pVertex, FBNormal pNormal) |
| Add a vertex. | |
| int | VertexAdd (FBVertex pVertex, FBNormal pNormal, FBUV pUV) |
| Add a vertex. | |
| int | VertexAdd (FBVertex pVertex, FBNormal pNormal, FBUV pUV, FBColorF pVertexColor) |
| Add a vertex. | |
| int | VertexAdd (float px, float py, float pz) |
| Add a vertex. | |
| int | VertexAdd (float px, float py, float pz, float nx, float ny, float nz) |
| Begin geometry editing. | |
| int | VertexAdd (float px, float py, float pz, float nx, float ny, float nz, float UVu, float UVv) |
| Begin geometry editing. | |
| int | VertexAdd (float px, float py, float pz, float nx, float ny, float nz, float UVu, float UVv, float pRed, float pGreen, float pBlue, float pAlpha) |
| Begin geometry editing. | |
| bool | VertexArrayClear () |
| Clear all geometry vertex arrays. | |
| bool | VertexArrayInit (int pVertexcount, bool pUniqueMaterial, unsigned int pFBGeometryArrayIDs=0) |
| Init geometry vertex arrays. | |
| bool | VertexClear () |
| Clear all Vertex arrays. | |
| FBColorF | VertexColorGet (int pIndex=-1) |
| Get a Vertex Color. | |
| bool | VertexColorSet (FBColorF pColor, int pIndex=-1) |
| Set a Vertex Color. | |
| bool | VertexColorSet (float pRed, float pGreen, float pBlue, float pAlpha, int pIndex=-1) |
| Set a UV coordinate. | |
| int | VertexCount () |
| Get the number of vertices in the geometry. | |
| FBVertex | VertexGet (int pIndex) |
| Get a vertex. | |
| bool | VertexGetSelected (int pIndex) |
| Get the selected state of a vertex. | |
| bool | VertexGetTransformable (int pIndex) |
| Get the Transformable state of a vertex. | |
| bool | VertexGetVisible (int pIndex) |
| Get the visible state of a vertex. | |
| VertexInit (int pSize, bool pResize, bool pInitUV=True, bool pInitVertexColor=False) | |
| Resize or Reserve vertex, normal and UV array for performance. | |
| FBNormal | VertexNormalGet (int pIndex=-1) |
| Get a normal at a vertex. | |
| bool | VertexNormalSet (FBNormal pVertex, int pIndex=-1) |
| Set a normal at a vertex. | |
| bool | VertexNormalSet (float px, float py, float pz, int pIndex=-1) |
| Set a normal at a vertex. | |
| bool | VertexSet (FBVertex pVertex, int pIndex=-1) |
| Set a vertex. | |
| bool | VertexSet (float px, float py, float pz, int pIndex=-1) |
| Set a vertex. | |
| bool | VertexSetSelected (int pIndex, bool pState) |
| Set the selected state of a vertex. | |
| bool | VertexSetVisible (int pIndex, bool pState) |
| Set the visible state of a vertex. | |
| FBUV | VertexUVGet (int pIndex=-1) |
| Get a UV coordinate. | |
| bool | VertexUVSet (FBUV pUV, int pIndex=-1) |
| Set a UV coordinate. | |
| bool | VertexUVSet (float pU, float pV, int pIndex=-1) |
| Set a UV coordinate. | |
Public Member Functions inherited from FBComponent | |
| FBComponent () | |
| Constructor. | |
| str | ClassName () |
| Get the class name. | |
| DisableObjectFlags (FBObjectFlag pFlags) | |
| Disable a specific Object Flags. | |
| EnableObjectFlags (FBObjectFlag pFlags) | |
| Enable a specific Object Flags. | |
| bool | FBCreate () |
| Open Reality Creation function. | |
| FBDelete () | |
| Open Reality deletion function. | |
| FBDestroy () | |
| Open Reality destruction function. | |
| FBObjectFlag | GetObjectFlags () |
| Get all Object Flags (concatenated). | |
| bool | GetObjectStatus (FBObjectStatus pStatus) |
| Check to see if an object status is enabled. | |
| FBFileReference | GetOwnerFileReference (p0) |
| Get the owner FileReference object. | |
| HardSelect () | |
| HardSelect. | |
| bool | HasObjectFlags (FBObjectFlag pFlags) |
| Check whether a specific object flag is enabled. | |
| bool | Is (int pTypeId) |
| Returns true if object is of type TypeId. | |
| bool | ProcessNamespaceHierarchy (FBNamespaceAction pNamespaceAction, str pNamespaceName, str pReplaceTo=None, bool pAddRight=True) |
| ProcessNamespaceHierarchy. | |
| bool | ProcessObjectNamespace (FBNamespaceAction pNamespaceAction, str pNamespaceName, str pReplaceTo=None, bool pAddRight=True) |
| ProcessObjectNamespace. | |
| int | PropertyAdd (FBProperty pProperty) |
| Add a property to the component's property manager. | |
| bool | PropertyAddReferenceProperty (FBProperty pReferenceProperty) |
| Add a reference property to the component's property manager. | |
| FBProperty | PropertyCreate (str pName, FBType pType, str pDataType, bool pAnimatable, bool pIsUser=False, FBProperty pReferenceSource=None) |
| Create user or dynamic property. | |
| PropertyGetModifiedList (FBArrayTemplate< FB > pPropList, FBPlugModificationFlag pModificationFlags) | |
| Get list of properties which have been modified since last loading. | |
| PropertyRemove (FBProperty pProperty) | |
| Remove a Property from the component's Property manager. | |
| SetObjectFlags (FBObjectFlag pFlags) | |
| SetObjectFlags. | |
| SetObjectStatus (FBObjectStatus pStatus, bool pValue) | |
| Enable/Disable a specific Object Status. | |
Public Attributes | |
| FBGeometryMappingMode | BinormalMappingMode |
| Read Only Property: Binormal mapping mode. | |
| FBGeometryReferenceMode | BinormalReferenceMode |
| Read Only Property: Binormal reference mode. | |
| FBGeometryMappingMode | MaterialMappingMode |
| Read Property: Material mapping mode. | |
| FBGeometryMappingMode | NormalMappingMode |
| Read Only Property: Normal mapping mode. | |
| FBGeometryReferenceMode | NormalReferenceMode |
| Read Only Property: Normal reference mode. | |
| FBGeometryMappingMode | TangentMappingMode |
| Read Only Property: Tangent mapping mode. | |
| FBGeometryReferenceMode | TangentReferenceMode |
| Read Only Property: Tangent reference mode. | |
| FBGeometryMappingMode | VertexColorMappingMode |
| Read Only Property: Vertex Color mapping mode. | |
| FBGeometryReferenceMode | VertexColorReferenceMode |
| Read Only Property: Vertex Color reference mode. | |
Public Attributes inherited from FBComponent | |
| FBListComponent | Components |
| List: List of components. | |
| str | LongName |
| Read Write Property: Name and namespace for object. | |
| str | Name |
| Read Write Property: Unique name of object. See sample: RemoveSuffixFromNameOfSceneElements.py. | |
| FBListComponent | Parents |
| List: Parents. | |
| FBManager | PropertyList |
| Read Only Property: Manages all of the properties for the component. | |
| bool | Selected |
| Read Write Property: Selected property. | |
| int | TypeInfo |
| Contains the Type information of the object. | |
Public Attributes inherited from FBPlug | |
| str | ClassGroupName |
| ClassGroupName of the object. | |
| int | TypeInfo |
| TypeInfo. | |
Geometry class.
This class groups all geometry related elements which are shared across the different subclasses (FBMesh, FBSurface, FBNurbs and FBPatch). Geometry Material always use kFBGeometryReference_INDEX mode. While Normal, UV could have different combination of mapping and reference modes.Geometries created with SDK can support FBGeometryMapping_ALL_SAME or kFBGeometryMapping_BY_POLYGON for material, and kFBGeometryMapping_BY_CONTROL_POINT for Normal, Tangent, Binormal, Color and UV. Only one set of UV could be supported.Geometries passed from FBXSDK pipeline could have various complex mapping/reference mode combination for material, normal and UV. And could potentially contains multiple set of UVs.
| bool GeometryBegin | ( | ) |
Begin geometry editing.
| bool GeometryEnd | ( | ) |
End geometry editing.
| FBNormal GetBinormalsDirectArray | ( | int | pOutArrayCount | ) |
Get a pointer to the direct array of binormals.
Modify array value will be only effective when geometry editing is enabled.
| pOutArrayCount | To return the length the array. |
Get a pointer to the index array of binormals.
Modify array value will be only effective when geometry editing is enabled.
| pOutArrayCount | To return the length the array. |
Get a pointer to the index array of Material.
Modify array value will be only effective when geometry editing is enabled.
| pOutArrayCount | To return the length the array. |
| FBNormal GetNormalsDirectArray | ( | int | pOutArrayCount | ) |
Get a pointer to the direct array of normals.
Modify array value will be only effective when geometry editing is enabled.
| pOutArrayCount | To return the length the array. |
Get a pointer to the index array of normals.
Modify array value will be only effective when geometry editing is enabled.
| pOutArrayCount | To return the length the array. |
Get a pointer to the position array.
Modify array value will be only effective when geometry editing is enabled.
| pOutArrayCount | To return the length the array. |
| FBNormal GetTangentsDirectArray | ( | int | pOutArrayCount | ) |
Get a pointer to the direct array of tangents.
Modify array value will be only effective when geometry editing is enabled.
| pOutArrayCount | To return the length the array. |
Get a pointer to the index array of tangents.
Modify array value will be only effective when geometry editing is enabled.
| pOutArrayCount | To return the length the array. |
Get a pointer to the direct array of UVset Modify array value will be only effective when geometry editing is enabled.
| pOutArrayCount | To return the length the array. |
| pUVSetName | The name of UVset, NULL for the first UVset. |
Get a pointer to the index array of UVset.
Modify array value will be only effective when geometry editing is enabled.
| pOutArrayCount | To return the length the array. |
| pUVSetName | The name of UVset, NULL for the first UVset. |
| FBGeometryMappingMode GetUVSetMappingMode | ( | str | pUVSetName = None | ) |
Get UVSet mapping mode.
| pUVSetName | The name of UVset, NULL for the first UVset. |
| FBGeometryReferenceMode GetUVSetReferenceMode | ( | str | pUVSetName = None | ) |
Get UVSet reference mode.
| pUVSetName | The name of UVset, NULL for the first UVset. |
| FBStringList GetUVSets | ( | ) |
Get available UVSet name.
| FBColorF GetVertexColorsDirectArray | ( | int | pOutArrayCount | ) |
Get a pointer to the direct array of vertex color.
Modify array value will be only effective when geometry editing is enabled.
| pOutArrayCount | To return the length the array. |
Get a pointer to the index array of vertex color.
Modify array value will be only effective when geometry editing is enabled.
| pOutArrayCount | To return the length the array. |
Add new shape.
| pName | the shape name |
| ShapeClearAll | ( | ) |
Clears all the shapes.
| int ShapeGetCount | ( | ) |
Get Shape Count.
Init the shape.
| pShapeIdx | The index of the shape to be initialized |
| pDiffSize | Total number of different point (pos or normal) compared to base geometry. |
| pWithNormal | Currently normal won't be considered during shape blending. |
Set the differentiate point.
| pShapeIdx | The index of the shape |
| pDiffIndex | The index of the diff point in this shape. |
| pOriIndex | The index of the diff point in the original geometry. |
| pPosDiff | The position differentiation. |
| bool ShapeSetDiffPoint | ( | int | pShapeIdx, |
| int | pDiffIndex, | ||
| int | pOriIndex, | ||
| FBVertex | pPosDiff, | ||
| FBNormal | pNormalDiff | ||
| ) |
Set the differentiate point.
| pShapeIdx | The index of the shape |
| pDiffIndex | The index of the diff point in this shape. |
| pOriIndex | The index of the diff point in the original geometry. |
| pPosDiff | The position differentiation. |
| pNormalDiff | The normal differentiation. |
Add a vertex.
| pVertex | Vertex values used to add vertex. |
Add a vertex.
| pVertex | Vertex values used to add vertex. |
| pNormal | Normal values used to add vertex. |
Add a vertex.
| pVertex | Vertex values used to add vertex. |
| pNormal | Normal values used to add vertex. |
| pUV | UV values used to add vertex. |
Add a vertex.
| pVertex | Vertex values used to add vertex. |
| pNormal | Normal values used to add vertex. |
| pUV | UV values used to add vertex. |
| pVertexColor | Color values used to add vertex. |
Add a vertex.
| px | X coordinate of vertex to add. |
| py | Y coordinate of vertex to add. |
| pz | Z coordinate of vertex to add. |
Begin geometry editing.
Begin geometry editing.
| int VertexAdd | ( | float | px, |
| float | py, | ||
| float | pz, | ||
| float | nx, | ||
| float | ny, | ||
| float | nz, | ||
| float | UVu, | ||
| float | UVv, | ||
| float | pRed, | ||
| float | pGreen, | ||
| float | pBlue, | ||
| float | pAlpha | ||
| ) |
Begin geometry editing.
| bool VertexArrayClear | ( | ) |
Clear all geometry vertex arrays.
Call this function to clear Position, Normal, UV, Color and etc vertex arrays, and it won't affect geometry's topology (polygon, Surface and etc.,).
| bool VertexArrayInit | ( | int | pVertexcount, |
| bool | pUniqueMaterial, | ||
| unsigned int | pFBGeometryArrayIDs = 0 |
||
| ) |
Init geometry vertex arrays.
Init position, normal and UV arrays (tangent, bi-normal and color on demand) with kFBGeometryMapping_BY_CONTROL_POINT / kFBGeometryReference_DIRECT mode. Will call VertexArrayClear() internally. User should then call GetXXXDirectyArray() to edit the vertex attributes directly.
| pVertexcount | number of control points (vertex) |
| pUniqueMaterial | User could specify per polygon mapping mode for mesh |
| pFBGeometryArrayIDs | Request to init other attribute arrays, bitwise combined value of FBGeometryArrayID enum items, currently support Tangent, Binormal and VertexColor. Only useful for mesh. |
| bool VertexClear | ( | ) |
Clear all Vertex arrays.
Call this function to clear Position, Normal, UV, Color and etc vertex arrays, and it won't affect geometry's topology (polygon, Surface and etc.,).
| FBColorF VertexColorGet | ( | int | pIndex = -1 | ) |
Get a Vertex Color.
| pIndex | Index of Vertex to get Color for(default=-1). |
Set a Vertex Color.
| pColor | Vertex Color to set. |
| pIndex | Index of Vertex to affect with pColor(default=-1). |
Set a UV coordinate.
| pRed | Red Color Channel to set, range [0, 1]. |
| pGreen | Green Color Channel to set, range [0, 1]. |
| pBlue | Blue Color Channel to set, range [0, 1]. |
| pAlpha | Alpha Color Channel to set, range [0, 1]. |
| pIndex | Index of Vertex to affect with Red, Green, Blue and Alpha (default=-1). |
| int VertexCount | ( | ) |
Get the number of vertices in the geometry.
Get a vertex.
| pIndex | Index of vertex to get. |
Get the selected state of a vertex.
| pIndex | The index of the vertex |
Get the Transformable state of a vertex.
| pIndex | The index of the vertex |
Get the visible state of a vertex.
| pIndex | The index of the vertex |
Resize or Reserve vertex, normal and UV array for performance.
| pSize | Number of vertices to resize or reserve. |
| pResize | True, for the geometry with known vertex count, we should resize the arrays to fixed size, and call VertexSet() afterwards; False, While for dynamic size geometry, we should only reserve the arrays with the estimated optimal size, then call VertexAdd() to dynamically increase the vertex count. |
| pInitUV | init Vertex UV array if true |
| pInitVertexColor | Init Vertex Color Array if true. |
| FBNormal VertexNormalGet | ( | int | pIndex = -1 | ) |
Get a normal at a vertex.
| pIndex | Vertex to get normal at(default=-1). |
Set a normal at a vertex.
| pVertex | Normal to set. |
| pIndex | Index of vertex to set Normal at(default=-1). |
Set a normal at a vertex.
| px | X coordinate of normal. |
| py | Y coordinate of normal. |
| pz | Z coordinate of normal. |
| pIndex | Index of vertex to set Normal at(default=-1). |
Set a vertex.
| pVertex | Vertex values used to set vertex. |
| pIndex | Index of vertex to affect (default=-1). |
Set a vertex.
| px | X coordinate to set. |
| py | Y coordinate to set. |
| pz | Z coordinate to set. |
| pIndex | Index of vertex to set(default=-1). |
Set the selected state of a vertex.
| pIndex | The index of the vertex |
| pState | The true to selected, false to deselect |
Set the visible state of a vertex.
| pIndex | The index of the vertex |
| pState | true to be visible |
| FBUV VertexUVGet | ( | int | pIndex = -1 | ) |
Get a UV coordinate.
| pIndex | Index of Vertex to get UV coordinate for(default=-1). |
Set a UV coordinate.
| pUV | UV coordinate to set. |
| pIndex | Index of Vertex to affect with UV coordinate(default=-1). |
Set a UV coordinate.
| pU | U coordinate to set. |
| pV | V coordinate to set. |
| pIndex | Index of Vertex to affect with UV coordinate(default=-1). |
| FBGeometryMappingMode BinormalMappingMode |
Read Only Property: Binormal mapping mode.
| FBGeometryReferenceMode BinormalReferenceMode |
Read Only Property: Binormal reference mode.
| FBGeometryMappingMode MaterialMappingMode |
Read Property: Material mapping mode.
| FBGeometryMappingMode NormalMappingMode |
Read Only Property: Normal mapping mode.
| FBGeometryReferenceMode NormalReferenceMode |
Read Only Property: Normal reference mode.
| FBGeometryMappingMode TangentMappingMode |
Read Only Property: Tangent mapping mode.
| FBGeometryReferenceMode TangentReferenceMode |
Read Only Property: Tangent reference mode.
| FBGeometryMappingMode VertexColorMappingMode |
Read Only Property: Vertex Color mapping mode.
| FBGeometryReferenceMode VertexColorReferenceMode |
Read Only Property: Vertex Color reference mode.