[vtk-developers] Patch for VTK bug #3941
Dominique Belhachemi
domibel at cs.tu-berlin.de
Wed Mar 17 14:16:26 EDT 2010
Dear VTK developers,
Please consider the attached patch to close bug #3941.
I applied this patch to Debian's vtk package in May 2009. It works very
well.
Cheers
Dominique
-------------- next part --------------
Index: Filtering/vtkTrivialProducer.cxx
===================================================================
RCS file: /cvsroot/VTK/VTK/Filtering/vtkTrivialProducer.cxx,v
retrieving revision 1.13
diff -u -r1.13 vtkTrivialProducer.cxx
--- Filtering/vtkTrivialProducer.cxx 18 Dec 2008 16:55:39 -0000 1.13
+++ Filtering/vtkTrivialProducer.cxx 17 Mar 2010 15:36:21 -0000
@@ -20,6 +20,7 @@
#include "vtkInformation.h"
#include "vtkInformationVector.h"
#include "vtkObjectFactory.h"
+#include "vtkDataObject.h"
vtkCxxRevisionMacro(vtkTrivialProducer, "$Revision: 1.13 $");
vtkStandardNewMacro(vtkTrivialProducer);
@@ -115,6 +116,27 @@
vtkInformationVector** inputVector,
vtkInformationVector* outputVector)
{
+ if (this->Output->IsA("vtkImageData"))
+ {
+ vtkImageData* img=(vtkImageData*)(this->Output);
+
+ vtkInformation* info = img->GetInformation();
+ vtkInformation* pinfo = img->GetPipelineInformation();
+ double Spacing[3]; img->GetSpacing(Spacing);
+ double Origin[3]; img->GetOrigin(Origin);
+
+ if (info->Has(vtkDataObject::SPACING()))
+ info->Set(vtkDataObject::SPACING(),Spacing[0],Spacing[1],Spacing[2]);
+
+ if (pinfo->Has(vtkDataObject::SPACING()))
+ pinfo->Set(vtkDataObject::SPACING(),Spacing[0],Spacing[1],Spacing[2]);
+
+ if (info->Has(vtkDataObject::ORIGIN()))
+ info->Set(vtkDataObject::ORIGIN(),Origin[0],Origin[1],Origin[2]);
+
+ if (pinfo->Has(vtkDataObject::ORIGIN()))
+ pinfo->Set(vtkDataObject::ORIGIN(),Origin[0],Origin[1],Origin[2]);
+ }
if(request->Has(vtkDemandDrivenPipeline::REQUEST_INFORMATION()) &&
this->Output)
{
More information about the vtk-developers
mailing list