double spac[3];
first->GetDimensions(dim);
first->GetSpacing(spac);
- out->SetSpacing(spac);
+ if (spac[0]==spac[1])
+ {
+ spac[2]=spac[0];
+ }
+ out->SetSpacing(spac);
out->SetDimensions(dim[0], dim[1], dlg.getImagesSelected().size() );
out->AllocateScalars();
out->Update();
unsigned long imsize = dim[0] * dim[1];
- imsize = imsize * dim[2] ; // deal with multiframes here
+ imsize = imsize * dim[2]; // deal with multiframes here
// differents formats char , short, etc...
// differents components 1..3 ex. jpg ->RGB 3
imsize = imsize * first->GetScalarSize() * first->GetNumberOfScalarComponents();
- int slice = 0;
- std::vector<vtkImageData*>::iterator it;
- for (it=dlg.getImagesSelected().begin(); it!=dlg.getImagesSelected().end(); ++it)
- {
- memcpy(out->GetScalarPointer(0,0,slice), (*it)->GetScalarPointer(0,0,0), imsize);
- slice++;
- }
- //for (it=dlg.getImagesSelected().begin(); it!=dlg.getImagesSelected().end(); ++it)
- //{
- // (*it)->Delete();
- //}
- bbSetOutputOut(out);
+
+ int slice,sizeImageVector=dlg.getImagesSelected().size();
+ for (slice=0 ; slice<sizeImageVector ; slice++)
+ {
+ vtkImageData *img = dlg.getImagesSelected()[slice];
+ memcpy(out->GetScalarPointer(0,0,slice), img->GetScalarPointer(0,0,0), imsize);
+ //img->Delete();
+ }
+
+//EED Notworking the iteration over the pointer vtkImageData
+// int slice=0;
+// std::vector<vtkImageData*>::iterator it;
+// for (it=dlg.getImagesSelected().begin(); it!=dlg.getImagesSelected().end(); ++it)
+// {
+// memcpy(out->GetScalarPointer(0,0,slice), (*it)->GetScalarPointer(0,0,0), imsize);
+// slice++;
+// }
+// //for (it=dlg.getImagesSelected().begin(); it!=dlg.getImagesSelected().end(); ++it)
+// // {
+// // (*it)->Delete();
+// // }
+
+
+ bbSetOutputOut(out);
}
} else {
bbSetOutputOut( NULL );
Register( boost::shared_ptr<AbstractImageReader>(new VtkImageReader(vtkPNGReader::New() , "PNG", ".png")));
- Register(boost::shared_ptr<AbstractImageReader>(new VtkImageReader(vtkTIFFReader::New(), "JPEG", ".jpeg")));
- Register(boost::shared_ptr<AbstractImageReader>(new VtkImageReader(vtkJPEGReader::New())));
- Register(boost::shared_ptr<AbstractImageReader>(new VtkImageReader(vtkBMPReader::New())));
+ Register(boost::shared_ptr<AbstractImageReader>(new VtkImageReader(vtkTIFFReader::New(), "TIFF", ".tiff")));
+ Register(boost::shared_ptr<AbstractImageReader>(new VtkImageReader(vtkJPEGReader::New(), "JPEG", ".jpeg")));
+ Register(boost::shared_ptr<AbstractImageReader>(new VtkImageReader(vtkBMPReader::New(), "BMP", ".bmp")));
Register(boost::shared_ptr<AbstractImageReader>(new VtkImageReader(vtkSLCReader::New())));
Register(boost::shared_ptr<AbstractImageReader>(new VtkImageReader(vtkMetaImageReader::New(),"MHD",".mhd")));
// Register(new VtkImageReader(vtkGESignalReader::New()));