]> Creatis software - clitk.git/blobdiff - vv/vvSlicer.h
Removed debug info
[clitk.git] / vv / vvSlicer.h
index 184df43176a1efc63c974d76f499ce9cb9c2e741..4315dd8b35ff640a23eec53df309cb7f506c3af9 100644 (file)
@@ -1,32 +1,22 @@
 /*=========================================================================
+  Program:   vv                     http://www.creatis.insa-lyon.fr/rio/vv
 
- Program:   vv
- Module:    $RCSfile: vvSlicer.h,v $
- Language:  C++
- Date:      $Date: 2010/01/06 13:31:57 $
- Version:   $Revision: 1.1 $
- Author :   Pierre Seroul (pierre.seroul@gmail.com)
+  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
 
-Copyright (C) 2008
-Léon Bérard cancer center http://oncora1.lyon.fnclcc.fr
-CREATIS-LRMN 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.
 
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, version 3 of the License.
+  It is distributed under dual licence
 
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-=========================================================================*/
+  - 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 <iostream>
 #include <vector>
 
@@ -54,7 +44,6 @@ class vvGlyph2D;
 class vvGlyphSource;
 class vtkCursor3D;
 class vtkCutter;
-class vtkPlane;
 class vtkAssignAttribute;
 class vtkScalarBarActor;
 
@@ -152,6 +141,8 @@ public:
     bool GetCursorVisibility();
     void SetCursorColor(int r,int g, int b);
 
+    void GetExtremasAroundMousePointer(double & min, double & max);
+
     void UpdateLandmarks();
     void ForceUpdateDisplayExtent();
 
@@ -162,6 +153,17 @@ public:
     ///Toggle temporal superposition of contours
     void ToggleContourSuperposition();
 
+    virtual void SetColorWindow(double s);
+    virtual void SetColorLevel(double s);
+
+    
+    void EnableReducedExtent(bool b);
+    void SetReducedExtent(int * ext);
+
+    void ClipDisplayedExtent(int extent[6], int refExtent[6]);
+    int GetOrientation();
+    int * GetExtent();
+
 protected:
     vvSlicer();
     ~vvSlicer();
@@ -194,7 +196,6 @@ protected:
     vtkSmartPointer<vtkPolyDataMapper> mLandMapper;
     vtkSmartPointer<vtkActor> mLandActor;
     vtkSmartPointer<vtkBox> mClipBox;
-    vtkSmartPointer<vtkPlane> mSlicePlane;
     vtkSmartPointer<vtkScalarBarActor> legend;
 
     std::vector<vvMeshActor*> mSurfaceCutActors;
@@ -205,6 +206,9 @@ protected:
     int mSubSampling;
     int mScale;
     int mVFLog;
+    bool mUseReducedExtent;
+    int * mReducedExtent;
+    int * mInitialExtent;
 
 private:
     void UpdateOrientation();
@@ -212,7 +216,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();