1 /*=========================================================================
2 Program: vv http://www.creatis.insa-lyon.fr/rio/vv
5 - University of LYON http://www.universite-lyon.fr/
6 - Léon Bérard cancer center http://www.centreleonberard.fr
7 - CREATIS CNRS laboratory http://www.creatis.insa-lyon.fr
9 This software is distributed WITHOUT ANY WARRANTY; without even
10 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
11 PURPOSE. See the copyright notices for more information.
13 It is distributed under dual licence
15 - BSD See included LICENSE.txt file
16 - CeCILL-B http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html
17 ===========================================================================**/
24 class vtkPolyDataMapper;
25 class vtkMarchingSquares;
28 /** An actor that takes a vvMesh as input, and displays it
29 ** sliced along the given slice plane */
34 ///Sets slicing orientation
35 void SetSlicingOrientation(unsigned int d);
36 ///Changes the cut plane value in real world coordinates
37 void SetCutSlice(double slice);
38 /**Initialize the actor and set the inputs. If vf is not null, will use
39 **it to propagate the contour on all time frames */
40 void Init(vvMesh::Pointer mesh,int time_slice, vvImage::Pointer vf=NULL);
41 ///Set the time slice (only useful when using a 4D contour)
42 void SetTimeSlice(int time);
43 ///Toggles between normal 4D mode and superposition mode
44 void ToggleSuperposition();
45 vtkActor* GetActor() {return mActor;}
49 ///0 for x, 1 for y, 2 for z
50 unsigned int mCutDimension;
51 vvMesh::Pointer mMesh;
52 vtkMarchingSquares * mMarching;
53 vtkPolyDataMapper* mMapper;
55 double mCutPlaneValue;
56 bool mSuperpostionMode;