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 ===========================================================================**/
22 #include "vvBinaryImageOverlayActor.h"
23 #include "vvImageContour.h"
24 #include "clitkDicomRT_ROI.h"
27 class vvSlicerManager;
30 //------------------------------------------------------------------------------
31 class vvROIActor: public QObject {
37 void SetROI(clitk::DicomRT_ROI * r);
38 clitk::DicomRT_ROI * GetROI() { return mROI; }
39 void SetSlicerManager(vvSlicerManager * s);
41 void Initialize(bool IsVisible=true);
42 void SetVisible(bool b);
43 void SetContourVisible(bool b);
45 bool IsContourVisible();
46 void SetOpacity(double x);
48 void SetSelected(bool b);
49 void SetContourWidth(int n);
50 int GetContourWidth() { return mContourWidth; }
51 void SetContourColor(double r, double v, double b);
52 std::vector<double> & GetContourColor();
53 void SetBGMode(bool b) { m_modeBG = b; }
56 void UpdateSlice(int slicer, int slices);
61 clitk::DicomRT_ROI::Pointer mROI;
62 vvSlicerManager * mSlicerManager;
63 std::vector<vvImageContour::Pointer> mImageContour;
64 std::vector< vvBinaryImageOverlayActor::Pointer > mOverlayActors;
67 bool mIsContourVisible;
71 std::vector<double> mContourColor;
74 }; // end class vvROIActor
75 //------------------------------------------------------------------------------