X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=vv%2FvvSlicer.h;h=5027d16e6fd0256b3bc3f32b75c8a307c9cfc511;hb=098a47bfa8add3c5a63c7e58ae0f33e73896b5b2;hp=5b317b40c74b4df4c312e7d3bcd691a95388c03a;hpb=6543794d0c4718aaa344b28acc77ca18d423f1f3;p=clitk.git diff --git a/vv/vvSlicer.h b/vv/vvSlicer.h index 5b317b4..5027d16 100644 --- a/vv/vvSlicer.h +++ b/vv/vvSlicer.h @@ -20,6 +20,7 @@ #include #include +#include #include //TODO delete #include @@ -34,6 +35,7 @@ #include #include #include +#include class vtkActor; class vtkActor2D; @@ -58,8 +60,10 @@ class vtkScalarBarActor; class vtkTransform; class vtkImageReslice; -class vvSlicer: public vtkImageViewer2 -{ +class vvSlicer: public QObject, public vtkImageViewer2 { + +Q_OBJECT + public: static vvSlicer *New(); vtkTypeMacro(vvSlicer,vtkImageViewer2); @@ -167,7 +171,8 @@ public: void GetExtremasAroundMousePointer(double & min, double & max, vtkImageData *image, vtkTransform *transform); - void UpdateLandmarks(); + void RemoveLandmarks(); + void DisplayLandmarks(); void ForceUpdateDisplayExtent(); int* GetDisplayExtent(); @@ -210,6 +215,13 @@ public: void SetRegisterExtent(int [6]); void GetRegisterExtent(int [6]); + void SetSlicerNumber(const int nbSlicer) {mSlicerNumber = nbSlicer;} + int GetSlicerNumber() const {return mSlicerNumber;} + +signals: + void UpdateDisplayExtentBegin(int); + void UpdateDisplayExtentEnd(int); + protected: vvSlicer(); ~vvSlicer(); @@ -235,6 +247,7 @@ protected: // ___|__|___ VTK world coordinates (mm) (never displayed) mCurrent vtkSmartPointer mSlicingTransform; + vtkSmartPointer mLandmarkTransform; vtkSmartPointer mImageReslice; vtkSmartPointer mConcatenatedTransform; vtkSmartPointer mOverlayReslice; @@ -266,6 +279,7 @@ protected: vtkSmartPointer legend; std::vector mSurfaceCutActors; + int mSlicerNumber; int mCurrentTSlice; int mCurrentFusionTSlice; int mCurrentOverlayTSlice;