79 #ifndef vtkInteractorStyleUnicam_h
80 #define vtkInteractorStyleUnicam_h
97 #define VTK_UNICAM_NONE 0
98 #define VTK_UNICAM_BUTTON_LEFT 1
99 #define VTK_UNICAM_BUTTON_MIDDLE 2
100 #define VTK_UNICAM_BUTTON_RIGHT 3
103 #define VTK_UNICAM_CAM_INT_ROT 0
104 #define VTK_UNICAM_CAM_INT_CHOOSE 1
105 #define VTK_UNICAM_CAM_INT_PAN 2
106 #define VTK_UNICAM_CAM_INT_DOLLY 3
116 void SetWorldUpVector(
double x,
double y,
double z);
117 vtkGetVectorMacro(WorldUpVector,
double, 3);
124 virtual void OnLeftButtonMove();
146 double WorldUpVector[3];
154 void ChooseXY(
int X,
int Y );
155 void RotateXY(
int X,
int Y );
156 void DollyXY(
int X,
int Y );
157 void PanXY(
int X,
int Y );
160 void MyTranslateCamera(
double v[3]);
161 void MyRotateCamera(
double cx,
double cy,
double cz,
162 double ax,
double ay,
double az,
170 void GetRightVandUpV(
double *p,
vtkCamera *cam,
171 double *rightV,
double *upV);
174 void NormalizeMouseXY(
int X,
int Y,
double *NX,
double *NY);
177 double WindowAspect();
183 #endif // vtkInteractorStyleUnicam_h
virtual void OnLeftButtonDown()
represents an object (geometry & properties) in a rendered scene
virtual void OnLeftButtonUp()
static vtkInteractorStyle * New()
#define VTKINTERACTIONSTYLE_EXPORT
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()