From 131ef09107f53536b7320fdd1ee4840065433a2a Mon Sep 17 00:00:00 2001 From: schaerer Date: Tue, 26 Jan 2010 16:59:14 +0000 Subject: [PATCH] reloading the overlay works! --- vv/vvSlicer.cxx | 28 ++++++++++++++++------------ 1 file changed, 16 insertions(+), 12 deletions(-) diff --git a/vv/vvSlicer.cxx b/vv/vvSlicer.cxx index 0c45f5e..d9f0d13 100644 --- a/vv/vvSlicer.cxx +++ b/vv/vvSlicer.cxx @@ -238,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); @@ -271,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); -- 2.45.2