X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;ds=sidebyside;f=vv%2FvvBinaryImageOverlayActor.h;h=df9de09e270a4f415b756e42159430951075e2fd;hb=d154a8a2e97771bf6afe027f50294cc643409534;hp=f33014ddd6c8426c1f5e1cfaccc3f554e4859ab2;hpb=fe61abeb6e452e5f54bef60a287aa104e4e02d70;p=clitk.git diff --git a/vv/vvBinaryImageOverlayActor.h b/vv/vvBinaryImageOverlayActor.h index f33014d..df9de09 100644 --- a/vv/vvBinaryImageOverlayActor.h +++ b/vv/vvBinaryImageOverlayActor.h @@ -29,20 +29,23 @@ class vtkImageMapToRGBA; class vtkImageActor; //------------------------------------------------------------------------------ -class vvBinaryImageOverlayActor +class vvBinaryImageOverlayActor : public itk::LightObject { // Q_OBJECT public: - vvBinaryImageOverlayActor(); - ~vvBinaryImageOverlayActor(); + typedef vvBinaryImageOverlayActor Self; + typedef itk::SmartPointer Pointer; + itkNewMacro(Self); - void setSlicer(vvSlicer * slicer); - void update(int slicer, int slice); - void hideActors(); - void showActors(); - void setColor(double r, double g, double b); - void setImage(vvImage::Pointer image, double bg); - void initialize(); + void SetSlicer(vvSlicer * slicer); + void SetColor(double r, double g, double b); + void SetOpacity(double d); + void SetImage(vvImage * image, double bg, bool modeBG=true); + void Initialize(bool IsVisible=true); + void UpdateColor(); + void UpdateSlice(int slicer, int slice); + void HideActors(); + void ShowActors(); protected: vvSlicer * mSlicer; @@ -50,13 +53,16 @@ class vvBinaryImageOverlayActor int mTSlice; int mPreviousTSlice; int mPreviousSlice; - vvImage::Pointer mImage; + vvImage * mImage; std::vector mColor; double mAlpha; double mBackgroundValue; - - std::vector mMapperList; - std::vector mImageActorList; + double mForegroundValue; + bool m_modeBG; + vtkSmartPointer mColorLUT; + + std::vector > mMapperList; + std::vector > mImageActorList; void ComputeExtent(int orientation, int slice, @@ -72,6 +78,10 @@ class vvBinaryImageOverlayActor vtkImageActor * actor, double position); +private: + vvBinaryImageOverlayActor(); + ~vvBinaryImageOverlayActor(); + }; // end class vvBinaryImageOverlayActor //------------------------------------------------------------------------------