Skip to content
Snippets Groups Projects
Commit 933371b3 authored by Will Schroeder's avatar Will Schroeder
Browse files

A new, faster method for vtkPolyData::ComputeBounds()

Added new threaded methods in vtkPolyData and vtkBoundingBox
for computing GetBounds(). Added a comparison test for the
methods vtkPolyData::GetBounds(), vtkPoints::GetBounds(),
and vtkBoundingBox::ComputeBounds(). The speed improvements on
large meshes is approximately 10x.

Also, the new vtkCellArray API, and the vtkArrayDispatch
framework is used. Note, as before, this new vtkPolyData::GetBounds()
only considers points used by cells to determine the bounding box.

Performance considerations required tuning the vtkCellArray and
vtkCellArrayIterator to share memory when possible (i.e., avoid
copying). Also cleaned up documentation and API for these classes.
A test was added to ensure that iterator is functioning properly
(e.g., is faster, sharing storage buffer as appropriate).

Finally discovered an error in vtkParametricKuen which was
generating NaN on some systems, which messed up the GetBounds()
computation.
parent 2485dc5d
No related branches found
No related tags found
No related merge requests found
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment