]> Creatis software - clitk.git/blobdiff - vv/vvBinaryImageOverlayActor.cxx
invert VF on given image grid
[clitk.git] / vv / vvBinaryImageOverlayActor.cxx
index 907bcb6bb18b4292e35e9c0102d3c1cc13c2e19a..d4b961751715db51fecd01becc776cbcb4c1fc16 100644 (file)
@@ -3,7 +3,7 @@
 
   Authors belong to:
   - University of LYON              http://www.universite-lyon.fr/
-  - Léon Bérard cancer center       http://oncora1.lyon.fnclcc.fr
+  - Léon Bérard cancer center       http://www.centreleonberard.fr
   - CREATIS CNRS laboratory         http://www.creatis.insa-lyon.fr
 
   This software is distributed WITHOUT ANY WARRANTY; without even
@@ -14,7 +14,7 @@
 
   - BSD        See included LICENSE.txt file
   - CeCILL-B   http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html
-  ======================================================================-====*/
+  ===========================================================================**/
 
 #include "vvBinaryImageOverlayActor.h"
 #include "vvImage.h"
@@ -38,7 +38,7 @@ vvBinaryImageOverlayActor::vvBinaryImageOverlayActor()
   mAlpha = 0.6;
   mImage = 0;
   mSlicer = 0;
-  mColorLUT = vtkLookupTable::New();
+  mColorLUT = vtkSmartPointer<vtkLookupTable>::New();
   mForegroundValue = 1;
   mBackgroundValue = 0;
   m_modeBG = true;
@@ -49,11 +49,9 @@ vvBinaryImageOverlayActor::vvBinaryImageOverlayActor()
 //------------------------------------------------------------------------------
 vvBinaryImageOverlayActor::~vvBinaryImageOverlayActor()
 {
-  for (unsigned int i = 0; i < mSlicer->GetImage()->GetVTKImages().size(); i++) {
+  for (unsigned int i = 0; i < mImageActorList.size(); i++) {
     mSlicer->GetRenderer()->RemoveActor(mImageActorList[i]);
   }
-  mImageActorList.clear();
-  mMapperList.clear();
 }
 //------------------------------------------------------------------------------
 
@@ -91,7 +89,7 @@ void vvBinaryImageOverlayActor::Initialize(bool IsVisible)
   // Create an actor for each time slice
   for (unsigned int numImage = 0; numImage < mSlicer->GetImage()->GetVTKImages().size(); numImage++) {
     // how many intensity ?
-    vtkImageMapToRGBA * mOverlayMapper = vtkImageMapToRGBA::New();
+    vtkSmartPointer<vtkImageMapToRGBA> mOverlayMapper = vtkSmartPointer<vtkImageMapToRGBA>::New();
     mOverlayMapper->SetInput(mImage->GetVTKImages()[0]); // DS TODO : to change if it is 4D !!!
 
     double range[2];
@@ -117,7 +115,7 @@ void vvBinaryImageOverlayActor::Initialize(bool IsVisible)
 
     mOverlayMapper->SetLookupTable(mColorLUT);
 
-    vtkImageActor * mOverlayActor = vtkImageActor::New();
+    vtkSmartPointer<vtkImageActor> mOverlayActor = vtkSmartPointer<vtkImageActor>::New();
     mOverlayActor->SetInput(mOverlayMapper->GetOutput());
     mOverlayActor->SetPickable(0);
     mOverlayActor->SetVisibility(IsVisible);
@@ -174,7 +172,7 @@ void vvBinaryImageOverlayActor::SetOpacity(double d)
 
 
 //------------------------------------------------------------------------------
-void vvBinaryImageOverlayActor::SetImage(vvImage::Pointer image, double bg, bool modeBG)
+void vvBinaryImageOverlayActor::SetImage(vvImage * image, double bg, bool modeBG)
 {
   mImage = image;
   if (modeBG) {