X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=vv%2FvvROIActor.h;h=799d339288fa52e82e0b9a2178f71d45a833bc58;hb=HEAD;hp=016a1031b370cfcc488fc2ae8231497cb23dd048;hpb=e94da8e1a76e3c9bf5301ce46e72074ba01cd1c1;p=clitk.git diff --git a/vv/vvROIActor.h b/vv/vvROIActor.h index 016a103..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; //------------------------------------------------------------------------------ @@ -34,19 +36,49 @@ class vvROIActor: public QObject { vvROIActor(); ~vvROIActor(); - void SetROI(const clitk::DicomRT_ROI * r); + 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: - const 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 //------------------------------------------------------------------------------