vtkInteractorManualPaint.cpp

Go to the documentation of this file.
00001 
00002 #include "vtkInteractorManualPaint.h"
00003 
00004 
00005 #include "wxVtk2DBaseView.h"
00006 #include "wxVTKRenderWindowInteractor.h"
00007 
00008 
00009 vtkInteractorManualPaint::vtkInteractorManualPaint(ManualPaintControler* mpc)
00010 {
00011     _manualPaintControler   = mpc;
00012         _state                  = false;
00013 //      _auxZ   =   0;
00014 }
00015 
00016 //---------------------------------------------------------------------------
00017 vtkInteractorManualPaint::~vtkInteractorManualPaint()
00018 {
00019 }
00020 
00021 //---------------------------------------------------------------------------
00022 bool vtkInteractorManualPaint::OnLeftButtonDown()
00023 {
00024         vtkRenderWindowInteractor *interactor = _vtkInteractorStyleBaseView->GetInteractor();
00025         if ((interactor->GetControlKey()==1) || (interactor->GetShiftKey()==1) ){
00026         _state  =   true;
00027 //        wxVtk2DBaseView             *wxvtk2Dbaseview    = (wxVtk2DBaseView*)_vtkInteractorStyleBaseView->GetWxVtk2DBaseView();
00028 //        _Z      =   wxvtk2Dbaseview->GetActualSlice();
00029         }
00030         return true;
00031 }
00032 
00033 //---------------------------------------------------------------------------
00034 bool vtkInteractorManualPaint::OnLeftButtonUp()
00035 {
00036         _state = false;
00037         return true;
00038 }
00039 
00040 //---------------------------------------------------------------------------
00041 bool vtkInteractorManualPaint::OnMouseMove ()
00042 {
00043     printf("EED vtkInteractorManualPaint::OnMouseMove \n");
00044         if (_state==true)
00045         {
00046         wxVtk2DBaseView             *wxvtk2Dbaseview    = (wxVtk2DBaseView*)_vtkInteractorStyleBaseView->GetWxVtk2DBaseView();
00047         wxVTKRenderWindowInteractor *wxVTKiren          = wxvtk2Dbaseview->GetWxVTKRenderWindowInteractor();
00048         int px,py;
00049         wxVTKiren->GetEventPosition(px,py);
00050 
00051         int     typeView = 2;
00052         double  X        = (double)px;
00053         double  Y        = (double)py;
00054         double  Z        =  wxvtk2Dbaseview->GetActualSlice();
00055         wxvtk2Dbaseview->TransFromCoordScreenToWorld(X, Y, Z,false, typeView);
00056 
00057 //        int px = _vtkInteractorStyleBaseView->GetInteractor()->GetEventPosition()[0];
00058 //        int py = _vtkInteractorStyleBaseView->GetInteractor()->GetEventPosition()[1];
00059         printf("EED vtkInteractorManualPaint::OnMouseMove  -----------------  %f %f %f\n", X,Y,Z);
00060 
00061         _manualPaintControler->PaintImage((int)X,(int)Y,(int)Z);
00062 
00063 /*
00064         wxvtk2Dbaseview->_imageViewer2XYZ->GetVtkImageViewer2()->Modified();
00065         wxvtk2Dbaseview->_imageViewer2XYZ->GetVtkImageViewer2()->GetImageActor()->Modified();
00066         wxvtk2Dbaseview->_imageViewer2XYZ->GetVtkImageViewer2()->GetImageActor()->SetDisplayExtent(0, 50+_auxZ, 0, 50,_Z, _Z );
00067         wxvtk2Dbaseview->Refresh();
00068         wxvtk2Dbaseview->RefreshView();
00069 //        wxvtk2Dbaseview->SetActualSlice(_Z+_auxZ);
00070         _auxZ=(_auxZ+1)%2;
00071         wxvtk2Dbaseview->_imageViewer2XYZ->GetVtkImageViewer2()->GetRenderer()->Render();
00072         this->_vtkInteractorStyleBaseView->SetParent_refresh_waiting();
00073 */
00074         }// if _state
00075         return true;
00076 }
00077 
00078 

Generated on 20 Oct 2010 for creaMaracasVisu_lib by  doxygen 1.6.1