#include "vtkInteractorStyleBaseView3D.h" #include "vtkObjectFactory.h" vtkStandardNewMacro(vtkInteractorStyleBaseView3D); //--------------------------------------------------------------------------- vtkInteractorStyleBaseView3D::vtkInteractorStyleBaseView3D(){ } //--------------------------------------------------------------------------- vtkInteractorStyleBaseView3D::~vtkInteractorStyleBaseView3D(){ } //--------------------------------------------------------------------------- void vtkInteractorStyleBaseView3D::OnRightButtonDown () { vtkInteractorStyleBaseView::OnRightButtonDown(); /* if (GetInteractor()->GetControlKey()==1 ){ this->vtkInteractorStyleTrackballCamera::OnRightButtonDown(); } */ this->FindPokedRenderer(this->Interactor->GetEventPosition()[0], this->Interactor->GetEventPosition()[1]); if (this->CurrentRenderer == NULL) { return; } if (this->Interactor->GetControlKey()) { this->StartDolly(); } } //--------------------------------------------------------------------------- void vtkInteractorStyleBaseView3D::OnRightButtonUp () { vtkInteractorStyleBaseView::OnRightButtonUp(); /* if (GetInteractor()->GetControlKey()==1 ){ this->vtkInteractorStyleTrackballCamera::OnRightButtonUp(); } */ switch (this->State) { case VTKIS_DOLLY: this->EndDolly(); break; } } //--------------------------------------------------------------------------- void vtkInteractorStyleBaseView3D::OnMouseMove () { vtkInteractorStyleBaseView::OnMouseMove(); // this->vtkInteractorStyleTrackballCamera::OnMouseMove(); // int x = this->Interactor->GetEventPosition()[0]; // JPRx // int y = this->Interactor->GetEventPosition()[1]; // JPRx // vtkRenderWindowInteractor *rwi = this->Interactor; // int lx = rwi->GetLastEventPosition()[0]; // JPRx // int ly = rwi->GetLastEventPosition()[1]; // JPRx // int dx = rwi->GetEventPosition()[0] ; // JPRx // int dy = rwi->GetEventPosition()[1] ; // JPRx switch (this->State) { case VTKIS_ROTATE: // this->FindPokedRenderer(x, y); this->Rotate(); // this->InvokeEvent(vtkCommand::InteractionEvent, NULL); break; case VTKIS_PAN: // this->FindPokedRenderer(x, y); this->Pan(); // this->InvokeEvent(vtkCommand::InteractionEvent, NULL); break; case VTKIS_DOLLY: // this->FindPokedRenderer(x, y); this->Dolly(); // this->InvokeEvent(vtkCommand::InteractionEvent, NULL); break; case VTKIS_SPIN: // this->FindPokedRenderer(x, y); this->Spin(); // this->InvokeEvent(vtkCommand::InteractionEvent, NULL); break; } } //--------------------------------------------------------------------------- void vtkInteractorStyleBaseView3D::OnLeftButtonDown () { vtkInteractorStyleBaseView::OnLeftButtonDown(); /* if (GetInteractor()->GetControlKey()==1 ){ this->vtkInteractorStyleTrackballCamera::OnMiddleButtonDown(); } else { this->vtkInteractorStyleTrackballCamera::OnLeftButtonDown(); } */ this->FindPokedRenderer(this->Interactor->GetEventPosition()[0], this->Interactor->GetEventPosition()[1]); if (this->CurrentRenderer == NULL) { return; } if (this->Interactor->GetControlKey()) { this->StartPan(); } else { this->StartRotate(); } /* if (this->Interactor->GetShiftKey()) { if (this->Interactor->GetControlKey()) { this->StartDolly(); } else { this->StartPan(); } } else { if (this->Interactor->GetControlKey()) { this->StartSpin(); } else { this->StartRotate(); } } */ } //--------------------------------------------------------------------------- void vtkInteractorStyleBaseView3D::OnLeftButtonUp () { vtkInteractorStyleBaseView::OnLeftButtonUp(); /* if (GetInteractor()->GetControlKey()==1 ){ this->vtkInteractorStyleTrackballCamera::OnMiddleButtonUp(); } else { this->vtkInteractorStyleTrackballCamera::OnLeftButtonUp(); } */ switch (this->State) { case VTKIS_PAN: this->EndPan(); break; case VTKIS_ROTATE: this->EndRotate(); break; } } //--------------------------------------------------------------------------- void vtkInteractorStyleBaseView3D::OnMiddleButtonDown () { vtkInteractorStyleBaseView::OnMiddleButtonDown(); // this->vtkInteractorStyleTrackballCamera::OnMiddleButtonDown(); } //--------------------------------------------------------------------------- void vtkInteractorStyleBaseView3D::OnMiddleButtonUp () { vtkInteractorStyleBaseView::OnMiddleButtonUp(); // this->vtkInteractorStyleTrackballCamera::OnMiddleButtonUp(); }