-//------------------------------------------------------------------
-
-class creaMaracasVisu_EXPORT InteractorStyleMaracas
-{
-public:
- InteractorStyleMaracas();
- virtual ~InteractorStyleMaracas();
-
- virtual InteractorStyleMaracas * Clone();
- void CopyAttributesTo( InteractorStyleMaracas *cloneObject );
-
-
- virtual bool OnChar();
- virtual bool OnMouseMove();
- virtual bool OnLeftButtonDown();
- virtual bool OnLeftButtonUp();
- virtual bool OnMiddleButtonDown();
- virtual bool OnMiddleButtonUp();
- virtual bool OnRightButtonDown();
- virtual bool OnRightButtonUp();
-
- virtual bool OnLeftDClick();
- virtual bool OnRightDClick();
- virtual bool OnMiddleDClick();
- virtual bool OnMouseWheel();
-
-
- void SetVtkInteractorStyleBaseView(vtkInteractorStyleBaseView* _vtkInteractorStyleBaseView);
- void RemoveVtkInteractorStyleBaseView();
- void SetActive(bool active);
- bool GetActive();
-
-protected:
- vtkInteractorStyleBaseView* _vtkInteractorStyleBaseView;
-private:
- bool _active;
-};
-
-//------------------------------------------------------------------
-//------------------------------------------------------------------
-//------------------------------------------------------------------
-
-
-
-class creaMaracasVisu_EXPORT manualInteractorWindowLevel : public InteractorStyleMaracas {
-public:
- manualInteractorWindowLevel();
- virtual ~manualInteractorWindowLevel();
-protected:
-
- bool _stateWindowLevel;
- int _backPx;
- int _backPy;
- int _backWindow;
- int _backLevel;
-
- virtual bool OnMouseMove();
- virtual bool OnMiddleButtonDown();
- virtual bool OnMiddleButtonUp();
-};
-
-
-//------------------------------------------------------------------
-//------------------------------------------------------------------
-//------------------------------------------------------------------
-
-class vtkInfoTextImage{
-public:
- vtkInfoTextImage();
- ~vtkInfoTextImage();
- void SetWxVtk2DBaseView(wxVtk2DBaseView *wxvtk2Dbaseview);
- void SetMarImageData(marImageData *marimagedata);
- void Configure();
- void PutPixelIntensity(int x, int y, int z);
- void PutPosition(int x, int y, int z);
- void PutColorLevel();
- void PutWindowLevel();
-
-
-protected:
-private:
-
- marImageData *_marimagedata;
- wxVtk2DBaseView *_wxvtk2Dbaseview;
- vtkTextActor *_vtkText_WindowLevel;
- vtkTextActor *_vtkText_ColorLevel;
- vtkTextActor *_vtkText_position;
- vtkTextActor *_vtkText_pixelIntensity;
-
- vtkTextActor *Create_Text_Label(int px, int py);
-};
-
-//------------------------------------------------------------------
-//------------------------------------------------------------------
-//------------------------------------------------------------------
-
-class vtkInfoTextImageInteractor : public InteractorStyleMaracas{
-public:
- vtkInfoTextImageInteractor();
- virtual ~vtkInfoTextImageInteractor();
- void SetModelVtkInfoTextImage(vtkInfoTextImage *vtkinfotextimage);
- vtkInfoTextImage *GetVtkInfoTextImage();
-
-protected:
-
- virtual bool OnMouseMove();
-
-private:
- vtkInfoTextImage *_vtkinfotextimage;
-};
-
-//------------------------------------------------------------------
-//------------------------------------------------------------------
-//------------------------------------------------------------------
-
-class vtkInteractorScrollZ : public InteractorStyleMaracas {
-public:
- vtkInteractorScrollZ();
- virtual ~vtkInteractorScrollZ();
-
- virtual bool OnMouseMove();
- virtual bool OnRightButtonDown();
- virtual bool OnRightButtonUp();
-
-
-
-protected:
- bool _stateFordware;
- int _fordwareX;
- int _fordwareY;
- int _sliceZ;
-
-private:
-
-};
-
-
-
-
-
-
-//------------------------------------------------------------------
-//------------------------------------------------------------------
-//------------------------------------------------------------------
-
-class wxVtk3DBaseView;
-
-class creaMaracasVisu_EXPORT vtkInteractorStyleBaseView : public vtkInteractorStyleImage{
-public:
- vtkInteractorStyleBaseView();
- ~vtkInteractorStyleBaseView();
- static vtkInteractorStyleBaseView *New();
- virtual void OnChar();
- virtual void OnMouseMove();
- virtual void OnLeftButtonDown();
- virtual void OnLeftButtonUp();
- virtual void OnMiddleButtonDown();
- virtual void OnMiddleButtonUp();
- virtual void OnRightButtonDown();
- virtual void OnRightButtonUp();
-
- virtual void OnLeftDClick();
- virtual void OnRightDClick();
- virtual void OnMiddleDClick();
- virtual void OnMouseWheel();
-
- virtual void TransformCoordinate(double &X, double &Y, double &Z);
- void AddInteractorStyleMaracas(InteractorStyleMaracas* interactorStyleMaracas);
- void RemoveInteractorStyleMaracas(InteractorStyleMaracas* interactorStyleMaracas);
- void InsertInteractorStyleMaracas(int pos, InteractorStyleMaracas* interactorStyleMaracas);
- void CallLstInteractorStyleMaracas(int type);
-
- wxVtk2DBaseView *GetWxVtk2DBaseView();
- wxVtk3DBaseView *GetWxVtk3DBaseView();
- void SetwxVtkBaseView(wxVtkBaseView *wxvtkbaseview);
- void SetActiveAllInteractors(bool ok);
-
- void SetRefresh_waiting();
- void SetParent_refresh_waiting();
-
- bool GetRefresh_waiting();
- bool GetParent_refresh_waiting();
-
-
- void EvaluateToRefresh();
- void BlockRefresh();
- void UnBlockRefresh();
-
-protected:
- std::vector< InteractorStyleMaracas* > _lstInteractorStyleMaracas;
-
-private:
- bool _blockRefresh;
- bool _refresh_waiting;
- bool _parent_refresh_waiting;
- wxVtkBaseView *_wxvtkbaseview;
-};
-
-//------------------------------------------------------------------
-//------------------------------------------------------------------
-//------------------------------------------------------------------
-
-class creaMaracasVisu_EXPORT vtkInteractorStyleBaseView2D : public vtkInteractorStyleBaseView{
-public:
- vtkInteractorStyleBaseView2D();
- ~vtkInteractorStyleBaseView2D();
- static vtkInteractorStyleBaseView2D *New();
- virtual void OnMouseMove();
- virtual void OnLeftButtonDown();
- virtual void OnLeftButtonUp();
- virtual void OnMiddleButtonDown();
- virtual void OnMiddleButtonUp();
- virtual void OnRightButtonDown();
- virtual void OnRightButtonUp();
-
-
-protected:
-
-private:
- manualInteractorWindowLevel *_manualinteractorwindowlevel;
- vtkInteractorScrollZ *_vtkInteractorScrollZ;
-
-};
-
-//------------------------------------------------------------------
-//------------------------------------------------------------------
-//------------------------------------------------------------------
-
-class creaMaracasVisu_EXPORT vtkInteractorStyleBaseView3D : public vtkInteractorStyleBaseView {
-public:
- vtkInteractorStyleBaseView3D();
- ~vtkInteractorStyleBaseView3D();
- static vtkInteractorStyleBaseView3D *New();
-
- virtual void OnMouseMove () ;
- virtual void OnLeftButtonDown ();
- virtual void OnLeftButtonUp () ;
- virtual void OnMiddleButtonDown ();
- virtual void OnMiddleButtonUp () ;
- virtual void OnRightButtonDown () ;
- virtual void OnRightButtonUp () ;
-
-private:
-
-};
-
-//------------------------------------------------------------------
-//------------------------------------------------------------------
-//------------------------------------------------------------------
-
-class creaMaracasVisu_EXPORT wxVtk3DBaseView: public wxVtkBaseView{
-public:
- wxVtk3DBaseView( wxWindow *parent );
- virtual ~wxVtk3DBaseView();
- vtkCamera* GetCamera();
- virtual vtkRenderer* GetRenderer();
- virtual vtkRenderWindow* GetRenWin();
- void Refresh();
- void Configure();
- virtual void GetSpacing(double spc[3]);
-
-private:
- bool _configure;
- vtkRenderer *_aRenderer;
- vtkRenderWindow *_renWin;
- vtkCamera *_aCamera;
-protected:
-};
-
-
-