Examine tessellation performance
Based on feedback about load times for large geometries in the VTK session, it might be necessary to change
For the VTK session, there are 2 copies:
- From the
vtkDataObjectinstances internal to the session to
vtkDataObjectinstances in the multiblock source used for rendering.
Even for other sessions, there is still an issue even though the original tessellation may not be in VTK format. One approach would be to store a functor rather than actual points/triangles. The functor may hold on to point/triangle arrays internally in whatever format is required. Then, SMTK's multiblock source can either zero-copy the result into a VTK dataset or deep-copy it depending on what the functor provides. This also delays tessellation from the time at which the model is read to the time at which the tessellation is needed.
We had thought to eliminate
smtk::model::Tessellation and replace it with
smtk::mesh, but given the performance of MOAB for this kind of thing perhaps that is a longer term goal than SMTK 3.