X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=vv%2FvvROIActor.h;h=799d339288fa52e82e0b9a2178f71d45a833bc58;hb=8f42f40e826ecc4cc45e08ed41cc5596da74991c;hp=bb5c16b740c4e8f2d40e5e8b43da729593973b7d;hpb=5a80d16b4dc2ad2d825c443f39ae6276786e72e4;p=clitk.git diff --git a/vv/vvROIActor.h b/vv/vvROIActor.h index bb5c16b..799d339 100644 --- a/vv/vvROIActor.h +++ b/vv/vvROIActor.h @@ -3,7 +3,7 @@ Authors belong to: - University of LYON http://www.universite-lyon.fr/ - - Léon Bérard cancer center http://oncora1.lyon.fnclcc.fr + - Léon Bérard cancer center http://www.centreleonberard.fr - CREATIS CNRS laboratory http://www.creatis.insa-lyon.fr This software is distributed WITHOUT ANY WARRANTY; without even @@ -14,17 +14,19 @@ - BSD See included LICENSE.txt file - CeCILL-B http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html -======================================================================-====*/ +===========================================================================**/ #ifndef VVROIACTOR_H #define VVROIACTOR_H +#include "vvBinaryImageOverlayActor.h" +#include "vvImageContour.h" #include "clitkDicomRT_ROI.h" + #include +#include class vvSlicerManager; -class vvImageContour; -class vvBinaryImageOverlayActor; class vtkActor; //------------------------------------------------------------------------------ @@ -37,27 +39,46 @@ class vvROIActor: public QObject { void SetROI(clitk::DicomRT_ROI * r); clitk::DicomRT_ROI * GetROI() { return mROI; } void SetSlicerManager(vvSlicerManager * s); - void Update(); - void Initialize(); + void Update(bool force=false); + void Initialize(double d=1.0, bool IsVisible=true); void SetVisible(bool b); + void SetContourVisible(bool b); bool IsVisible(); + bool IsContourVisible(); void SetOpacity(double x); double GetOpacity(); void SetSelected(bool b); + void SetContourWidth(int n); + int GetContourWidth() { return mContourWidth; } + void SetContourColor(double r, double v, double b); + std::vector & GetContourColor(); + void SetOverlayColor(double r, double v, double b); + std::vector & GetOverlayColor(); + void SetBGMode(bool b) { m_modeBG = b; } + void SetDepth(double d); + double GetDepth() { return mDepth; } + void CopyParameters(QSharedPointer roi); + void RemoveActors(); public slots: - void UpdateSlice(int slicer, int slices); + void UpdateSlice(int slicer, int slices, int force=0); void UpdateColor(); + void UpdateImage(); protected: - clitk::DicomRT_ROI * mROI; + clitk::DicomRT_ROI::Pointer mROI; vvSlicerManager * mSlicerManager; - std::vector mImageContour; - std::vector mOverlayActors; - + std::vector mImageContour; + std::vector< vvBinaryImageOverlayActor::Pointer > mOverlayActors; + bool mIsVisible; + bool mIsContourVisible; double mOpacity; bool mIsSelected; + int mContourWidth; + std::vector mContourColor; + bool m_modeBG; + double mDepth; }; // end class vvROIActor //------------------------------------------------------------------------------