]> Creatis software - clitk.git/blobdiff - vv/vvMaximumIntensityProjection.cxx
Fixed compiling error by MSVC++
[clitk.git] / vv / vvMaximumIntensityProjection.cxx
index 7c2c3d7c68f132cb93c100de15de5724b965bfc2..c7ffb52d0078e1fda50e8f11a528acb23f6c9167 100644 (file)
 #include "vvFromITK.h"
 #include "vvMaximumIntensityProjection.h"
 #include <QMessageBox>
+#include <QInputDialog>
 
 void vvMaximumIntensityProjection::Compute(vvSlicerManager * slicer_manager)
 {
+  mCurrentSlicerManager = slicer_manager;
+  mDimension = QInputDialog::getInteger(0, "MIP Axis","Choose the axis along which to perform the MIP",0,0,\
+                                     slicer_manager->GetImage()->GetNumberOfDimensions()-1,1);
 #define TRY_TYPE(TYPE)                                                 \
   if (clitk::IsSameType<TYPE>(image->GetScalarTypeAsITKString())) { this->Update_WithPixelType<TYPE>(image); return; }
   std::string list = clitk::CreateListOfTypes<short>();
@@ -69,9 +73,12 @@ void vvMaximumIntensityProjection::Update_WithDimAndPixelType(vvImage::Pointer i
   typedef itk::Image<PixelType,Dim-1> OutputImageType;
   typedef itk::MaximumProjectionImageFilter<ImageType,OutputImageType> FilterType;
   typename FilterType::Pointer filter = FilterType::New();
-  filter->SetProjectionDimension(Dim-1);
+  filter->SetProjectionDimension(mDimension);
   typename ImageType::ConstPointer input = vvImageToITK<ImageType>(image);
   filter->SetInput(input);
   filter->Update();
   mOutputImage=vvImageFromITK<Dim-1,PixelType>(filter->GetOutput());
+  // std::ostringstream osstream;
+  // osstream << "MIP_" << mCurrentSlicerManager->GetSlicer(0)->GetFileName() << ".mhd";  
+  // AddImage(mOutputImage,osstream.str());
 }