]> Creatis software - clitk.git/blobdiff - vv/vvSlicerManager.cxx
Modified overlay image actor to use a blending which takes the maximum per color...
[clitk.git] / vv / vvSlicerManager.cxx
index b14bfde693bcf18a05756413f3c8e98d5f10e1e5..4ba327b91c745444d1a80746033adbb90d286e47 100644 (file)
@@ -1,4 +1,4 @@
-/*=========================================================================
+  /*=========================================================================
   Program:   vv                     http://www.creatis.insa-lyon.fr/rio/vv
 
   Authors belong to: 
@@ -26,6 +26,7 @@
 #include "vvImageReader.h"
 #include "vvMesh.h"
 #include "vvImageMapToWLColors.h"
+#include "vvBlendImageActor.h"
 
 #include <vtkImageActor.h>
 #include <vtkImageData.h>
@@ -582,6 +583,10 @@ void vvSlicerManager::SetOpacity(int i, double factor)
 //----------------------------------------------------------------------------
 void vvSlicerManager::UpdateViews(int current,int slicer)
 {
+  // DD("UpdateViews");
+//   DD(current);
+//   DD(slicer);
+
   double x = (mSlicers[slicer]->GetCurrentPosition()[0] - mSlicers[slicer]->GetInput()->GetOrigin()[0])
     /mSlicers[slicer]->GetInput()->GetSpacing()[0];
   double y = (mSlicers[slicer]->GetCurrentPosition()[1] - mSlicers[slicer]->GetInput()->GetOrigin()[1])
@@ -729,8 +734,10 @@ double vvSlicerManager::GetColorLevel()
 //----------------------------------------------------------------------------
 void vvSlicerManager::Render()
 {
+  // DD("vvSlicerManager::Render");
   for ( unsigned int i = 0; i < mSlicers.size(); i++)
     {
+     //  DD(i);
       mSlicers[i]->Render();
     }
 }
@@ -974,6 +981,7 @@ void vvSlicerManager::UpdateSlice(int slicer)
     return;
   }
   emit UpdateSlice(slicer, mSlicers[slicer]->GetSlice());
+  mSlicers[slicer]->Render(); // DS <-- I add this, this could/must be the only Render ...
   mPreviousSlice[slicer] = mSlicers[slicer]->GetSlice();
 }
 //----------------------------------------------------------------------------
@@ -1265,4 +1273,5 @@ void vvSlicerManager::NextImage(int slicer)
 void vvSlicerManager::VerticalSliderHasChanged(int slicer, int slice) {
   emit AVerticalSliderHasChanged(slicer, slice);
 }
+    
 //----------------------------------------------------------------------------