[vtkusers] New pipeline architecture

John Platt jcplatt at lineone.net
Tue Apr 27 15:30:54 EDT 2004


Hi users,

 

In a recent thread, Berk Geveci referred to a new pipeline architecture
which is currently under design/development. Not wanting to miss an
opportunity. I was wondering whether the new design would make modifying
the behaviour of visualization pipelines easier.

 

As an example, consider the following filter sequence

 

vtkUnstructuredGrid -> vtkThreshold -> vtkShrinkFilter-> vtkWarpVector

 

to select cells from an unstructured grid, shrink cells and deform
cells. The selection, shrink and deform are all optional. To enable any
arbitrary combination of the filters, I keep the pipeline topology fixed
and override the Execute() method of each filter with an option to
simply shallow copy the input to the output effectively bypassing the
filtering. An alternative approach would have been to reconstruct the
pipeline but each filter's state information must be persisted to return
to a previous selection. Keeping the filter objects and providing a
method to bypass the actual filtering process makes this kind of
interaction very simple to code. I appreciate that there may only be a
limited number of filters where FilterOn()/FilterOff() would be possible
or appropriate, but it would improve pipeline flexibility.

 

Another problem I have is integrating the "reading" of attribute data
into the pipeline execution. In Finite Element applications, there is
typically too much field data to permanently associate with the grid. I
use lean grids containing only cell scalars (element numbers) and point
scalars (node numbers) which is sufficient to reference any future data
to display. The actual data is merged later using
vtkMergeDataObjectFilter. This all works fine until the cell selection
is changed. This requires the attribute data to be re-read to match
exactly the new cell/point selection. I have modified
vtkMergeDataObjectFilter to call a user supplied method to read the
attribute data as part of Execute(). The attribute data update now
becomes automatic. Does the new design help with this requirement?

 

Thanks for your time.

 

John.

 

 

 

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.vtk.org/pipermail/vtkusers/attachments/20040427/18d8f090/attachment.htm>


More information about the vtkusers mailing list