80 #ifndef vtkInteractorStyleUnicam_h
81 #define vtkInteractorStyleUnicam_h
83 #include "vtkInteractionStyleModule.h"
98 #define VTK_UNICAM_NONE 0
99 #define VTK_UNICAM_BUTTON_LEFT 1
100 #define VTK_UNICAM_BUTTON_MIDDLE 2
101 #define VTK_UNICAM_BUTTON_RIGHT 3
104 #define VTK_UNICAM_CAM_INT_ROT 0
105 #define VTK_UNICAM_CAM_INT_CHOOSE 1
106 #define VTK_UNICAM_CAM_INT_PAN 2
107 #define VTK_UNICAM_CAM_INT_DOLLY 3
118 vtkGetVectorMacro(WorldUpVector,
double, 3);
151 double WorldUpVector[3];
167 double ax,
double ay,
double az,
176 double *rightV,
double *upV);
represents an object (geometry & properties) in a rendered scene
a virtual camera for 3D rendering
a simple class to control print indentation
provides Unicam navigation style
virtual ~vtkInteractorStyleUnicam()
void ChooseXY(int X, int Y)
void NormalizeMouseXY(int X, int Y, double *NX, double *NY)
void PrintSelf(ostream &os, vtkIndent indent)
Methods invoked by print to print information about the object including superclasses.
virtual void OnLeftButtonMove()
vtkInteractorStyleUnicam()
vtkWorldPointPicker * InteractionPicker
virtual void OnLeftButtonDown()
virtual void OnTimer()
OnTimer calls RotateCamera, RotateActor etc which should be overridden by style subclasses.
void MyTranslateCamera(double v[3])
void DollyXY(int X, int Y)
void RotateXY(int X, int Y)
void MyRotateCamera(double cx, double cy, double cz, double ax, double ay, double az, double angle)
void SetWorldUpVector(double a[3])
virtual void OnMouseMove()
Concrete implementation of event bindings.
void GetRightVandUpV(double *p, vtkCamera *cam, double *rightV, double *upV)
vtkRenderer * FocusSphereRenderer
void SetWorldUpVector(double x, double y, double z)
static vtkInteractorStyleUnicam * New()
virtual void OnLeftButtonUp()
provide event-driven interface to the rendering window (defines trackball mode)
abstract specification for renderers
find world x,y,z corresponding to display x,y,z