MantisBT - VTK
View Issue Details
0001836VTK(No Category)public2005-05-09 11:352016-08-12 09:54
Luca Antiga 
Brad King 
urgentmajoralways
closedmoved 
 
 
0001836: vtkImageMarchingCubes streams improperly
The following code snippet produces the error below (VTK CVS version, May 09 2005; gentoo linux 2005.0; python 2.3.4; gcc 3.3.5)

imageSource = vtkImageNoiseSource()
imageSource.SetWholeExtent(0,255,0,255,0,32)
imageSource.Update()

imageCopy = vtkImageData()
imageCopy.DeepCopy(imageSource.GetOutput())
imageCopy.Update()

marchingCubes = vtkImageMarchingCubes()
marchingCubes.SetInput(imageCopy)
marchingCubes.Update()

Error:
ERROR: In /usr/local/src/VTK/Filtering/vtkStreamingDemandDrivenPipeline.cxx, line 620
vtkStreamingDemandDrivenPipeline (0x8172418): The update extent specified in the information for output port 0 on algorithm vtkTrivialProducer(0x8172300) is 0 255 0 255 15 32, which is outside the whole extent 0 255 0 255 0 17.


The error vanishes
1) when using vtkMarchingCubes instead of vtkImageMarchingCubes (the former doesn't support streaming)
2) when imageSource.GetOutput() is used as an input to marchingCubes, instead of imageCopy.

If the error can't be replicated, probably increasing the whole extent in the imageSource will do.

Ciao!

Luca
No tags attached.
Issue History
2011-06-16 13:11Zack GalbreathCategory => (No Category)
2016-08-12 09:54Kitware RobotNote Added: 0036784
2016-08-12 09:54Kitware RobotStatusexpired => closed
2016-08-12 09:54Kitware RobotResolutionsuspended => moved

Notes
(0002403)
   
2005-05-10 14:38   
I've duplicated the problem. Thanks for the small example problem. Unfortunately it cannot be fixed quickly at this time.

The bug is in vtkImageMarchingCubes::RequestData. It attempts to do streaming the "old pipeline" way and was not properly converted to the new pipeline. In order to do streaming the filter must also override RequestUpdateExtent and utilize the CONTINUE_EXECUTING feature of vtkStreamingDemandDrivenPipeline. Several other filters do this already but it will take a non-trival amount of time to fix this class. Since it is a class on which GE owns the patent I've been told not to spend much time fixing it. I'm pretty sure it is going to be completely removed soon anyway.

I'm going to defer this bug for now. If you require a quicker response you can purchase support time from Kitware. I'm also changing the summary to indicate that the problem is in vtkImageMarchingCubes.

(0002404)
Brad King   
2005-05-10 14:39   
I've duplicated the problem. Thanks for the small example problem. Unfortunately it cannot be fixed quickly at this time.

The bug is in vtkImageMarchingCubes::RequestData. It attempts to do streaming the "old pipeline" way and was not properly converted to the new pipeline. In order to do streaming the filter must also override RequestUpdateExtent and utilize the CONTINUE_EXECUTING feature of vtkStreamingDemandDrivenPipeline. Several other filters do this already but it will take a non-trival amount of time to fix this class. Since it is a class on which GE owns the patent I've been told not to spend much time fixing it. I'm pretty sure it is going to be completely removed soon anyway.

I'm going to defer this bug for now. If you require a quicker response you can purchase support time from Kitware. I'm also changing the summary to indicate that the problem is in vtkImageMarchingCubes.

(0002405)
Luca Antiga   
2005-05-11 04:43   
Hi Brad, thanks for the quick response. I changed my code to use vtkMarchingCubes.
Ciao

Luca
(0036784)
Kitware Robot   
2016-08-12 09:54   
Resolving issue as `moved`.

This issue tracker is no longer used. Further discussion of this issue may take place in the current VTK Issues page linked in the banner at the top of this page.