]> Creatis software - clitk.git/blobdiff - vv/vvSlicer.cxx
fix overlay problem
[clitk.git] / vv / vvSlicer.cxx
index 64df64cc477c49bce573e86299ea34c08e5ad458..d9f0d137748f35d836b0038ff4187841ca374f4c 100644 (file)
@@ -1,10 +1,7 @@
 /*=========================================================================
 
 Program:   vv
-Module:    $RCSfile: vvSlicer.cxx,v $
 Language:  C++
-Date:      $Date: 2010/01/06 13:31:58 $
-Version:   $Revision: 1.1 $
 Author :   Pierre Seroul (pierre.seroul@gmail.com)
 
 Copyright (C) 2008
@@ -75,7 +72,7 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
 #include <vtkPlane.h>
 #include <vtkAssignAttribute.h>
 
-vtkCxxRevisionMacro(vvSlicer, "$Revision: 1.1 $");
+vtkCxxRevisionMacro(vvSlicer, "DummyRevision");
 vtkStandardNewMacro(vvSlicer);
 
 vvSlicer::vvSlicer()
@@ -241,14 +238,16 @@ void vvSlicer::SetOverlay(vvImage::Pointer overlay)
         mOverlayMapper->SetInput(overlay->GetVTKImages()[0]);
 
         if (!mOverlayActor)
+        {
             mOverlayActor = vtkImageActor::New();
-        mOverlayActor->SetInput(mOverlayMapper->GetOutput());
-        mOverlayActor->SetPickable(0);
-        mOverlayActor->SetVisibility(false);
-        mOverlayActor->SetOpacity(0.5);
-        this->UpdateDisplayExtent();
+            mOverlayActor->SetInput(mOverlayMapper->GetOutput());
+            mOverlayActor->SetPickable(0);
+            mOverlayActor->SetVisibility(false);
+            mOverlayActor->SetOpacity(0.5);
+            this->UpdateDisplayExtent();
+        }
 
-        //stupid but necessary : the Overlay need to be render before fusion
+        //stupid but necessary : the Overlay need to be rendered before fusion
         if (mFusionActor)
         {
             this->GetRenderer()->RemoveActor(mFusionActor);
@@ -274,13 +273,15 @@ void vvSlicer::SetFusion(vvImage::Pointer fusion)
         mFusionMapper->SetInput(fusion->GetVTKImages()[0]);
 
         if (!mFusionActor)
+        {
             mFusionActor = vtkImageActor::New();
-        mFusionActor->SetInput(mFusionMapper->GetOutput());
-        mFusionActor->SetPickable(0);
-        mFusionActor->SetVisibility(false);
-        mFusionActor->SetOpacity(0.7);
-        this->UpdateDisplayExtent();
-        this->GetRenderer()->AddActor(mFusionActor);
+            mFusionActor->SetInput(mFusionMapper->GetOutput());
+            mFusionActor->SetPickable(0);
+            mFusionActor->SetVisibility(false);
+            mFusionActor->SetOpacity(0.7);
+            this->UpdateDisplayExtent();
+            this->GetRenderer()->AddActor(mFusionActor);
+        }
 
         //Synchronize slice
         SetTSlice(mCurrentTSlice);
@@ -480,60 +481,18 @@ void vvSlicer::SetTSlice(int t)
     this->SetInput(mImage->GetVTKImages()[t]);
     if (mVF && mVFActor->GetVisibility())
     {
-        if (mVF->GetVTKImages().size() == 1)
-        {
-            mVOIFilter->SetInput(mVF->GetVTKImages()[0]);
-        }
-        else if (mVF->GetVTKImages().size() <= (unsigned int)mCurrentTSlice)
-        {
-            Renderer->RemoveActor(mVFActor);
-        }
-        else
-        {
-            if (!Renderer->HasViewProp(mVFActor))
-            {
-                Renderer->AddActor(mVFActor);
-            }
+        if (mVF->GetVTKImages().size() > (unsigned int)mCurrentTSlice)
             mVOIFilter->SetInput(mVF->GetVTKImages()[mCurrentTSlice]);
-        }
     }
     if (mOverlay && mOverlayActor->GetVisibility())
     {
-        if (mOverlay->GetVTKImages().size() == 1)
-        {
-            mOverlayMapper->SetInput(mOverlay->GetVTKImages()[0]);
-        }
-        else if (mOverlay->GetVTKImages().size() <= (unsigned int)mCurrentTSlice)
-        {
-            Renderer->RemoveActor(mOverlayActor);
-        }
-        else
-        {
-            if (!Renderer->HasViewProp(mOverlayActor))
-            {
-                Renderer->AddActor(mOverlayActor);
-            }
+        if (mOverlay->GetVTKImages().size() > (unsigned int)mCurrentTSlice)
             mOverlayMapper->SetInput(mOverlay->GetVTKImages()[mCurrentTSlice]);
-        }
     }
     if (mFusion && mFusionActor->GetVisibility())
     {
-        if (mFusion->GetVTKImages().size() == 1)
-        {
-            mFusionMapper->SetInput(mFusion->GetVTKImages()[0]);
-        }
-        else if (mFusion->GetVTKImages().size() <= (unsigned int)mCurrentTSlice)
-        {
-            Renderer->RemoveActor(mFusionActor);
-        }
-        else
-        {
-            if (!Renderer->HasViewProp(mFusionActor))
-            {
-                Renderer->AddActor(mFusionActor);
-            }
+        if (mFusion->GetVTKImages().size() > (unsigned int)mCurrentTSlice)
             mFusionMapper->SetInput(mFusion->GetVTKImages()[mCurrentTSlice]);
-        }
     }
     if (mSurfaceCutActors.size() > 0)
         for (std::vector<vvMeshActor*>::iterator i=mSurfaceCutActors.begin();