udMeshing.h provides an interface to create meshes from Unlimited Detail models.
Meshes a model using the BPA algorithm.
!NOTE This function begins the meshing process to write to obj, the pObjOutputPath option must not be NULL
| Parameter | Description |
|---|---|
pContext | The UD context to be used to compare the models. |
pOptions | The parameters passed to the BPA algorithm |
pStatus | Pointer to the struct to which write the algorithm progress. May be NULL |
Returns: A udError value based on the result of performing BPA on the input model.
Cancels a BPA meshing job started with pOptions
| Parameter | Description |
|---|---|
pOptions | The parameters passed to the BPA algorithm |
Returns: A udError value based on the result of cancelling the job
Contains the options for the meshing algorithm
| Field | Type | Description |
|---|---|---|
pBaseModelPath | const char \* | |
pObjOutputPath | const char \* | The path to the UDS model to be meshed. |
writeOBJColours | uint32_t | The directory to which intermediate obj meshes generated by the BPA algorithm will be written to. Must not be NULL when running standalone BPA algorithm. |
writeSingleOBJ | uint32_t | If not 0 write objs with vertex colours taken from their source points. |
pSingleObjName | const char \* | If not 0 writes the output as a single obj - this may cause a failure for large inputs due to high memory usage. |
mergeLevels | uint32_t | The name to give a single output obj, if writeSingleOBJ is set (NULL for UUID). |
globalOffset[3] | double | If set grid cubes are merged into larger OBJs when written - increasing this value by 1 will multiply the size of output OBJs by a factor of 8. This setting is overwritten if writeSingleOBJ is set. |
ballRadius | double | apply a global offset to the vertices when writing an OBJ |
gridSize | double | The radius of the ball used in the BPA algorithm. |
maxGridPointCount | uint32_t | The maximum size of each cube to be processed independantly by the BPA algorithm. |
pGeometry | struct [udGeometry](udGeometry.md) \* | The maximum number of grid points in a grid, if exceeded in a grid cube the grid will be subdivided. |
pCallback | udCompareOnWriteMeshCallback \* | |
pData | void \* | callback to be run on each mesh written (one for each grid), may be NULL |
pCleanup | udCompareOnWriteMeshCleanup \* | data to be passed to pCallback, may be NULL |
onWriteMesh | struct udMeshingBPAOptions::[anonymous] | The geometry filter to restrict the BPA algorithm to, NULL to process whole model. |
pReserved | void \* |
Stores the internal state of the meshing process
| Field | Type | Description |
|---|---|---|
nGrids | uint64_t | |
nCompleted | uint64_t | The total number of grids to be processed. |
running | uint64_t | The total number of grids that have been processed. |