]> Creatis software - creaMaracasVisu.git/blobdiff - lib/maracasVisuLib/src/interface/wxWindows/widgets/wxMaracasSurfaceRenderingManager.h
creaButtonContainer: exceptions added, doxygen documentation added :)
[creaMaracasVisu.git] / lib / maracasVisuLib / src / interface / wxWindows / widgets / wxMaracasSurfaceRenderingManager.h
index c41af3830f3d9e195ff4b9052d1876549c4d1eff..916b78518c742b78454b53ec0ff9dd5eb68d8ded 100644 (file)
@@ -3,8 +3,8 @@
   Program:   wxMaracas
   Module:    $RCSfile: wxMaracasSurfaceRenderingManager.h,v $
   Language:  C++
-  Date:      $Date: 2009/10/15 11:56:43 $
-  Version:   $Revision: 1.1 $
+  Date:      $Date: 2010/01/21 13:54:15 $
+  Version:   $Revision: 1.5 $
 
   Copyright: (c) 2002, 2003
   License:
@@ -23,6 +23,7 @@
 
 #include <iostream>
 #include <vector>
+#include <vtkMatrix4x4.h>
 
 #include "wxMaracasSurfaceRenderingManagerData.h"
 
@@ -37,14 +38,25 @@ public:
        **      Sets the renderer to manage the prop3D from the surface render
        **/
        void setRenderer(vtkRenderer*  renderer);
+
+       /**
+       **      Gets the renderer which manages the prop3D from the surface render
+       **/
+       vtkRenderer* getRenderer();
+       
+       /**
+       ** Updates surface
+       **/
+       void Update(int pid)throw(char*);
+       
        /**
        **      Adds a prop3D to the manager and returns the identifier
        **/
-       int addProp3D(vtkProp3D* prop3D, std::string dataname) throw (char*);
+       int addProp3D(int idTP, vtkProp3D* prop3D, std::string dataname) throw (char*);
        /**
        **      Adds a prop3D to the manager and returns the identifier
        **/
-       int addPropMHD(vtkImageData* imagedata, std::string dataname) throw(char*);
+       int addPropMHD(int idTP, vtkImageData* imagedata, std::string dataname) throw(char*);
        /**
        **      Changes the opacity in a prop3D
        **/
@@ -65,13 +77,23 @@ public:
        **/
        vtkImageData* getImageData(std::string filename);
 
+       /**
+       ** Gets image data asotiated with the rendering manager
+       **/
+       vtkImageData* getImageData();
+
        /**
        **      adds or removes an actor depending of the bool value
        **/
        void addRemoveActor(int propid, bool addremove)throw(char*);
        /**
+       **
+       **/
+       void addRemoveSurfaceBox(int propid, bool addremove)  throw(char*);
+       /**
        **      Check if the variables are setted correctly
        **/
+
        void checkInvariant()throw(char*);
 
        /**
@@ -79,6 +101,11 @@ public:
        **/
        wxMaracasSurfaceRenderingManagerData* getViewData(int id)throw(char*);
 
+       /**
+       **
+       **/
+       void setInteractor(vtkRenderWindowInteractor*  interactor);
+
        /**
        **      Given the id, return the max iso value from the imagedata
        **/
@@ -91,11 +118,17 @@ public:
        void changeColor(int propid, double red, double green, double blue) throw(char*);
 
        void deleteActor(int propid)throw (char *);
+
+       void Transform(vtkMatrix4x4* tmatrix);
+
+       bool interactorSet();
        
 private:       
        std::vector<wxMaracasSurfaceRenderingManagerData*> prop3Dvect;
 
        vtkRenderer*  _renderer;
+       vtkRenderWindowInteractor*  _interactor;
+       vtkImageData* image;
 
        int _idCount;