X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=vv%2FvvImageContour.cxx;h=88924c1895d5c27cd247a603419508e77f398d8f;hb=942f4fcf5d6d3d813e9da546331f599f61dee0ac;hp=85a9f2bb05767de4d46f7931dfcc4460a2d873bd;hpb=0a85e47a06c7d046d06a4645b724c4e81b19998d;p=clitk.git diff --git a/vv/vvImageContour.cxx b/vv/vvImageContour.cxx index 85a9f2b..88924c1 100644 --- a/vv/vvImageContour.cxx +++ b/vv/vvImageContour.cxx @@ -3,8 +3,8 @@ Program: vv Module: $RCSfile: vvImageContour.cxx,v $ Language: C++ - Date: $Date: 2010/02/24 11:42:42 $ - Version: $Revision: 1.3 $ + Date: $Date: 2010/03/01 07:37:25 $ + Version: $Revision: 1.4 $ Author : David Sarrut (david.sarrut@creatis.insa-lyon.fr) Copyright (C) 2010 @@ -28,9 +28,12 @@ #include "vvImageContour.h" #include #include +#include #include #include #include +#include +#include //------------------------------------------------------------------------------ vvImageContour::vvImageContour() { @@ -57,7 +60,6 @@ void vvImageContour::setSlicer(vvSlicer * slicer) { mSlicer = slicer; for (unsigned int numImage = 0; numImage < mSlicer->GetImage()->GetVTKImages().size(); numImage++) { - // DD(numImage); vtkImageClip * mClipper = vtkImageClip::New(); vtkMarchingSquares * mSquares = vtkMarchingSquares::New(); vtkPolyDataMapper * mSquaresMapper = vtkPolyDataMapper::New(); @@ -77,31 +79,42 @@ void vvImageContour::setSlicer(vvSlicer * slicer) { mSquaresList.push_back(mSquares); mClipperList.push_back(mClipper); } - //mSquares->Update(); } //------------------------------------------------------------------------------ //------------------------------------------------------------------------------ -void vvImageContour::removeActors() { - // DD("removeActors"); +void vvImageContour::hideActors() { if (!mSlicer) return; mSlice = mSlicer->GetSlice(); - // DD(mSlice); for(unsigned int i=0; iVisibilityOff(); - //mSquaresActorList[i]->Update(); } } //------------------------------------------------------------------------------ //------------------------------------------------------------------------------ -void vvImageContour::update(int value) { - // DD(value); +void vvImageContour::showActors() { if (!mSlicer) return; mSlice = mSlicer->GetSlice(); + mTSlice = mSlicer->GetTSlice(); + // for(unsigned int i=0; iVisibilityOn(); + update(mValue); + //} +} +//------------------------------------------------------------------------------ + + +//------------------------------------------------------------------------------ +void vvImageContour::update(int value) { + mValue= value; + if (!mSlicer) return; + // how to not update if not visible ? + + mSlice = mSlicer->GetSlice(); // Only change actor visibility if tslice change if (mTSlice != mSlicer->GetTSlice()) { if (mTSlice != -1) @@ -133,36 +146,30 @@ void vvImageContour::update(int value) { if (mSlicer->GetRenderer()->GetActiveCamera()->GetPosition()[0] > mSlice) { mSquaresActor->SetPosition(1,0,0); - // mSquaresActor2->SetPosition(1,0,0); } else { mSquaresActor->SetPosition(-1,0,0); - // mSquaresActor2->SetPosition(-1,0,0); } break; case 2: if (mSlicer->GetRenderer()->GetActiveCamera()->GetPosition()[1] > mSlice) { mSquaresActor->SetPosition(0,1,0); - // mSquaresActor2->SetPosition(0,1,0); } else { mSquaresActor->SetPosition(0,-1,0); - // mSquaresActor2->SetPosition(0,-1,0); } break; case 4: if (mSlicer->GetRenderer()->GetActiveCamera()->GetPosition()[2] > mSlice) { mSquaresActor->SetPosition(0,0,1); - // mSquaresActor2->SetPosition(0,0,1); } else { mSquaresActor->SetPosition(0,0,-1); - // mSquaresActor2->SetPosition(0,0,-1); } break; }