| ||||||||||
Function | LtStatus
| |||||||||
Synopsis |
Repeatedly call LiPrimitiveTriangulate, with the same primitive, attaching a different meshing refinement for each call.
| |||||||||
Location | ligeops | |||||||||
Parameters |
| |||||||||
Return Value |
An indication of success, failure or error.
| |||||||||
Description |
Consider the following scenario: An advanced user calls LiPrimitiveTriangulate
to achieve a "maximum edge length" triangulation, and then calls it again, straight away,
to achieve a "polygon count" triangulation. The problem here is that
LiPrimitiveTriangulate will create edge adjacency information at the
beginning of the first call, maintain the data through the first triangulation, and
destroy it when done. At the start of the second call, this data will have to be
re-created; a somewhat expensive process for complex meshes.
For users that wish to make multiple consecutive calls to LiPrimitiveTriangulate, for each primitive, this destroy/re-create overhead will surely become expensive, for large scenes. LiPrimitiveHierarchicalTriangulate is provided to avoid the high cost of such calls. LiPrimitiveHierarchicalTriangulate takes a single primitive, and a linked list of meshing refinements ( LtMeshingRefinement). Its behaviour is outlined in the following enumerated list:
|