[vtk-developers] UPDATE_EXTENT not updating after change to WHOLE_EXTENT
Bill McGrory
mcgrory at aerosoftinc.com
Wed Dec 30 15:24:20 EST 2015
I am having difficulty porting some code from VTK 5 to 6.
I have a custom algorithm for creating a vtkStructuredGrid as the
source for my pipeline, so my class inherits vtkStructuredGridAlgorithm
my pipeline simply connects the vtkStructuredGridAlgorithm to a
vtkGeometryFilter which is mapped with a vtkPolyDataMapper
I want my source to correctly render a structured grid which changes
dimensions dynamically within my application.
My problem is that if I originally set up the grid with say extents of
0 --99, 0-->99, 0-->99, and then change the extents to 0--49, 0-49,0-49
through a call to Update, then I get a VTK error message from
ERROR: In
VTK-6.2.0/Common/ExecutionModel/vtkStreamingDemandDrivenPipeline.cxx,
line 860
vtkCompositeDataPipeline (0xb4561f0): The update extent specified in the
information for output port 0 on algorithm SurfaceSNodeSource(0xb455750)
is 0 80 0 32 0 0, which is outside the whole extent 0 40 0 16 0 0.
(This is in VerifyOutputInformation) called before the
RequestUpdateExtent for my algorithm.
I don't quite understand the propagation of the UPDATE_EXTENT
information up the pipeline, but if I set the UPDATE_EXTENT to WHOLE_EXTENT
in vtkGeometryFilter::RequestUpdateExtent
then the error goes away.
Also, at the time of calling vtkGeometryFilter::RequestUpdateExtent, the
UPDATE_EXTENT is still set at the old value, while the WHOLE_EXTENT has
been correctly updated/propagated from upstream.
Is this a bug, or do I need to change something in my
vtkStructuredGridAlgorithm to cause the UPDATE_EXTENT to be reset at the
origin downstream?
Thanks
Bill
More information about the vtk-developers
mailing list