]> Creatis software - creaMaracasVisu.git/blob - lib/maracasVisuLib/src/interface/wxWindows/widgets/manualPaint/vtkInteractorManualPaint.cpp
*** empty log message ***
[creaMaracasVisu.git] / lib / maracasVisuLib / src / interface / wxWindows / widgets / manualPaint / vtkInteractorManualPaint.cpp
1
2 #include "vtkInteractorManualPaint.h"
3
4
5 #include "wxVtk2DBaseView.h"
6 #include "wxVTKRenderWindowInteractor.h"
7
8
9 vtkInteractorManualPaint::vtkInteractorManualPaint(ManualPaintControler* mpc)
10 {
11     _manualPaintControler   = mpc;
12         _state                  = false;
13 //      _auxZ   =   0;
14 }
15
16 //---------------------------------------------------------------------------
17 vtkInteractorManualPaint::~vtkInteractorManualPaint()
18 {
19 }
20
21 //---------------------------------------------------------------------------
22 bool vtkInteractorManualPaint::OnLeftButtonDown()
23 {
24         vtkRenderWindowInteractor *interactor = _vtkInteractorStyleBaseView->GetInteractor();
25         if ( interactor->GetControlKey()==1 ){
26         _state  =   true;
27 //        wxVtk2DBaseView             *wxvtk2Dbaseview    = (wxVtk2DBaseView*)_vtkInteractorStyleBaseView->GetWxVtk2DBaseView();
28 //        _Z      =   wxvtk2Dbaseview->GetActualSlice();
29         }
30         return true;
31 }
32
33 //---------------------------------------------------------------------------
34 bool vtkInteractorManualPaint::OnLeftButtonUp()
35 {
36         _state = false;
37         return true;
38 }
39
40 //---------------------------------------------------------------------------
41 bool vtkInteractorManualPaint::OnMouseMove ()
42 {
43         if (_state==true)
44         {
45         wxVtk2DBaseView             *wxvtk2Dbaseview    = (wxVtk2DBaseView*)_vtkInteractorStyleBaseView->GetWxVtk2DBaseView();
46         wxVTKRenderWindowInteractor *wxVTKiren          = wxvtk2Dbaseview->GetWxVTKRenderWindowInteractor();
47         int px,py;
48         wxVTKiren->GetEventPosition(px,py);
49
50 //        int     typeView = 1;
51         double  X        = (double)px;
52         double  Y        = (double)py;
53         double  Z        =  wxvtk2Dbaseview->GetActualSlice();
54 //        wxvtk2Dbaseview->TransFromCoordScreenToWorld(X, Y, Z,true, typeView);
55         wxvtk2Dbaseview->TransFromCoordScreenToWorld(X, Y, Z,true);
56
57         _manualPaintControler->PaintImage((int)X,(int)Y,(int)Z);
58         this->_vtkInteractorStyleBaseView->SetParent_refresh_waiting();
59
60 /*
61         wxvtk2Dbaseview->_imageViewer2XYZ->GetVtkImageViewer2()->Modified();
62         wxvtk2Dbaseview->_imageViewer2XYZ->GetVtkImageViewer2()->GetImageActor()->Modified();
63         wxvtk2Dbaseview->_imageViewer2XYZ->GetVtkImageViewer2()->GetImageActor()->SetDisplayExtent(0, 50+_auxZ, 0, 50,_Z, _Z );
64         wxvtk2Dbaseview->Refresh();
65         wxvtk2Dbaseview->RefreshView();
66 //        wxvtk2Dbaseview->SetActualSlice(_Z+_auxZ);
67         _auxZ=(_auxZ+1)%2;
68         wxvtk2Dbaseview->_imageViewer2XYZ->GetVtkImageViewer2()->GetRenderer()->Render();
69         this->_vtkInteractorStyleBaseView->SetParent_refresh_waiting();
70 */
71         }// if _state
72         return true;
73 }
74
75