I'm noticing some very odd behaviour when using the OpenFOAM
library-based reader (the one that is part of OpenFOAM, not the one
shipped with VTK).

The reader uses SetNumberOfOutputPorts(2), with port 0 corresponding to
normal cell-based volume/point data and port 1 corresponding to any
Lagrangian data such as sprays or particles, etc.

In the initialization, both ports are set with identical values for
vtkStreamingDemandDrivenPipeline::TIME_STEPS() and
vtkStreamingDemandDrivenPipeline::TIME_RANGE().

>From debug information, I can verify that the reader's RequestData()
method does indeed get sent identical values for
vtkStreamingDemandDrivenPipeline::UPDATE_TIME_STEPS() for both ports.
The reader according takes the values from port 0 when setting its
internal time step.

The situation gets rather "complicated" (ie, buggy) when any filters are
applied to the reader. As the simplest case, a clip-plane can be added,
which attaches itself automatically to port 0, since port 1 is empty (no
lagrangian data) in my test case. With this constellation, the reader's
RequestData() method now gets sent conflicting values for
UPDATE_TIME_STEPS. Port 0 (invisible since a clip-plane is attached),
always gets sent an UPDATE_TIME_STEPS == PREVIOUS_UPDATE_TIME_STEPS,
while port 1 gets sent an UPDATE_TIME_STEPS that corresponds to what has
been selected in AnimationView or the time-selector spinbox.
If I make port 1 invisible, the behaviour changes and port 0 gets the
correct values for UPDATE_TIME_STEPS and port 1 get an out-of-date value
for UPDATE_TIME_STEPS!

It would be possible to add in some sort of kludge to guess which
UPDATE_TIME_STEPS on which port is likely to be correct, but there must
be a better way.  I realize that there are not terribly many multi-port
readers in the VTK sources, but surely this behaviour cannot be
desirable.  Is there a better way to avoid it?

Thanks,

/mark
This e-mail message and any attachments may contain 
legally privileged, confidential or proprietary Information, 
or information otherwise protected by law of EMCON 
Technologies, its affiliates, or third parties. This notice 
serves as marking of its "Confidential" status as defined 
in any confidentiality agreements concerning the sender 
and recipient. If you are not the intended recipient(s), 
or the employee or agent responsible for delivery of this 
message to the intended recipient(s), you are hereby 
notified that any dissemination, distribution or copying 
of this e-mail message is strictly prohibited. 
If you have received this message in error, please 
immediately notify the sender and delete this e-mail 
message from your computer.

_______________________________________________
Powered by www.kitware.com

Visit other Kitware open-source projects at 
http://www.kitware.com/opensource/opensource.html

Please keep messages on-topic and check the ParaView Wiki at: 
http://paraview.org/Wiki/ParaView

Follow this link to subscribe/unsubscribe:
http://www.paraview.org/mailman/listinfo/paraview

Reply via email to