79 #ifndef __vtkInteractorStyleUnicam_h
80 #define __vtkInteractorStyleUnicam_h
96 #define VTK_UNICAM_NONE 0
97 #define VTK_UNICAM_BUTTON_LEFT 1
98 #define VTK_UNICAM_BUTTON_MIDDLE 2
99 #define VTK_UNICAM_BUTTON_RIGHT 3
102 #define VTK_UNICAM_CAM_INT_ROT 0
103 #define VTK_UNICAM_CAM_INT_CHOOSE 1
104 #define VTK_UNICAM_CAM_INT_PAN 2
105 #define VTK_UNICAM_CAM_INT_DOLLY 3
115 void SetWorldUpVector(
double x,
double y,
double z);
116 vtkGetVectorMacro(WorldUpVector,
double, 3);
123 virtual void OnLeftButtonMove();
145 double WorldUpVector[3];
153 void ChooseXY(
int X,
int Y );
154 void RotateXY(
int X,
int Y );
155 void DollyXY(
int X,
int Y );
156 void PanXY(
int X,
int Y );
159 void MyTranslateCamera(
double v[3]);
160 void MyRotateCamera(
double cx,
double cy,
double cz,
161 double ax,
double ay,
double az,
169 void GetRightVandUpV(
double *p,
vtkCamera *cam,
170 double *rightV,
double *upV);
173 void NormalizeMouseXY(
int X,
int Y,
double *NX,
double *NY);
176 double WindowAspect();
182 #endif // __vtkInteractorStyleUnicam_h
virtual void OnLeftButtonDown()
represents an object (geometry & properties) in a rendered scene
virtual void OnLeftButtonUp()
static vtkInteractorStyle * New()
abstract specification for renderers
vtkWorldPointPicker * InteractionPicker
void PrintSelf(ostream &os, vtkIndent indent)
a simple class to control print indentation
a virtual camera for 3D rendering
void SetWorldUpVector(double a[3])
provides Unicam navigation style
provide event-driven interface to the rendering window (defines trackball mode)
vtkRenderer * FocusSphereRenderer
find world x,y,z corresponding to display x,y,z
virtual void OnMouseMove()