00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00023 #ifndef __vtkPVInteractorStyleCenterOfRotation_h
00024 #define __vtkPVInteractorStyleCenterOfRotation_h
00025
00026 #include "vtkInteractorStyle.h"
00027 class vtkSMRenderModuleProxy;
00028 class vtkPVWindow;
00029 class vtkPVWorldPointPicker;
00030
00031 class VTK_EXPORT vtkPVInteractorStyleCenterOfRotation :public vtkInteractorStyle
00032 {
00033 public:
00034 static vtkPVInteractorStyleCenterOfRotation *New();
00035 vtkTypeRevisionMacro(vtkPVInteractorStyleCenterOfRotation, vtkInteractorStyle);
00036 void PrintSelf(ostream& os, vtkIndent indent);
00037
00039
00041 virtual void OnLeftButtonDown();
00042 virtual void OnLeftButtonUp();
00044
00046 virtual void Pick();
00047
00049
00050 vtkGetVector3Macro(Center, float);
00052
00054 void SetRenderModuleProxy(vtkSMRenderModuleProxy* rm);
00055
00056 void SetPVWindow(vtkPVWindow* );
00057 vtkPVWindow* GetPVWindow() { return this->PVWindow;}
00058 protected:
00059 vtkPVInteractorStyleCenterOfRotation();
00060 ~vtkPVInteractorStyleCenterOfRotation();
00061
00063
00064 void SetCenter(float x, float y, float z);
00065 float Center[3];
00067
00068 vtkPVWorldPointPicker *Picker;
00069
00070 vtkSMRenderModuleProxy* RenderModuleProxy;
00071 vtkPVWindow* PVWindow;
00072
00073 vtkPVInteractorStyleCenterOfRotation(const vtkPVInteractorStyleCenterOfRotation&);
00074 void operator=(const vtkPVInteractorStyleCenterOfRotation&);
00075 };
00076
00077 #endif