X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=vv%2FvvSlicer.h;h=ff0d2698e0d8a6700a6b8ca5b7ad0f28108580b6;hb=5a80d16b4dc2ad2d825c443f39ae6276786e72e4;hp=feb5f2dbfe55f1d65f7c06d579f6d52f510f41e0;hpb=0083c3fb2c66812489631c7551709d121de51625;p=clitk.git diff --git a/vv/vvSlicer.h b/vv/vvSlicer.h index feb5f2d..ff0d269 100644 --- a/vv/vvSlicer.h +++ b/vv/vvSlicer.h @@ -1,3 +1,20 @@ +/*========================================================================= + Program: vv http://www.creatis.insa-lyon.fr/rio/vv + + Authors belong to: + - University of LYON http://www.universite-lyon.fr/ + - Léon Bérard cancer center http://oncora1.lyon.fnclcc.fr + - CREATIS CNRS laboratory http://www.creatis.insa-lyon.fr + + This software is distributed WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. See the copyright notices for more information. + + It is distributed under dual licence + + - BSD See included LICENSE.txt file + - CeCILL-B http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html +======================================================================-====*/ #ifndef __vvSlicer_h #define __vvSlicer_h #include @@ -29,7 +46,8 @@ class vtkCursor3D; class vtkCutter; class vtkAssignAttribute; class vtkScalarBarActor; - +class vtkTransform; +class vtkImageReslice; class vvSlicer: public vtkImageViewer2 { @@ -53,8 +71,8 @@ public: vtkImageMapToWindowLevelColors* GetFusionMapper() ; vtkImageActor* GetFusionActor() ; vtkActor* GetVFActor() ; - vtkCornerAnnotation* GetAnnotation() ; - + vtkCornerAnnotation* GetAnnotation(); + void SetFusion(vvImage::Pointer inputFusion); vvImage::Pointer GetFusion() { return mFusion; @@ -95,6 +113,7 @@ public: return mSubSampling; } void SetVFScale(int scale); + void SetVFWidth(int width); int GetVFScale() { return mScale; } @@ -143,6 +162,10 @@ public: void EnableReducedExtent(bool b); void SetReducedExtent(int * ext); + void ClipDisplayedExtent(int extent[6], int refExtent[6]); + int GetOrientation(); + int * GetExtent(); + protected: vvSlicer(); ~vvSlicer(); @@ -176,7 +199,6 @@ protected: vtkSmartPointer mLandActor; vtkSmartPointer mClipBox; vtkSmartPointer legend; - std::vector mSurfaceCutActors; int mCurrentTSlice; @@ -185,6 +207,7 @@ protected: int mSubSampling; int mScale; int mVFLog; + int mVFWidth; bool mUseReducedExtent; int * mReducedExtent; int * mInitialExtent; @@ -195,7 +218,6 @@ private: void ComputeVFDisplayedExtent(int x1,int x2,int y1,int y2,int z1,int z2,int extent[6]); void ComputeOverlayDisplayedExtent(int x1,int x2,int y1,int y2,int z1,int z2,int overExtent[6]); void ComputeFusionDisplayedExtent(int x1,int x2,int y1,int y2,int z1,int z2,int overExtent[6]); - void ClipDisplayedExtent(int extent[6], int refExtent[6]); ///Sets the surfaces to be cut on the image slice: update the vtkCutter void SetContourSlice();