26 #ifndef RENDERERWIDGET_H
27 #define RENDERERWIDGET_H
33 #include <QVTKWidget.h>
34 #include <vtkSmartPointer.h>
38 class vtkInteractorStyle;
43 class vtkScalarBarActor;
44 class vtkEventQtSlotConnect;
45 class vtkCallbackCommand;
48 class vtkAnnotatedCubeActor;
49 class vtkScalarBarWidget;
54 class GeometricObject;
90 enum CameraOrientation {
158 ControlMode getControlMode()
const;
161 void setControlMode(ControlMode mode);
166 void setPicker(vtkSmartPointer<vtkPicker> woodyWood);
172 void pickActor(
int x,
int y);
175 void keyPressEvent(QKeyEvent* e);
179 static const ScreenshotFormatInfo * getScreenshotFormatInfo(
unsigned int);
183 static const ScreenshotFormatInfo * getScreenshotFormatInfo(ScreenshotFormat);
188 void screenshot(QString filename);
197 void setBackfaceCulling(
bool);
200 bool getBackfaceCulling()
const;
203 void setCameraOrientation( RendererWidget::CameraOrientation );
206 RendererWidget::CameraOrientation getCameraOrientation( )
const;
209 void setLightFollowCamera(
bool);
212 bool getLightFollowCamera()
const;
215 void setPointSize(
double size);
218 double getPointSize()
const;
221 void rotateCamera(
double angle,
int axe);
230 void resetCamera(
double bounds[6]);
233 void getCameraSettings(
double position[3],
double focalPoint[3],
double viewUp[3]);
236 void setActiveCamera( vtkCamera * cam );
239 vtkCamera * getActiveCamera();
242 void getMouse3DCoordinates(
double & x,
double & y,
double & z);
245 void setBackgroundColor(
double,
double,
double);
248 void getBackgroundColor(
double&,
double&,
double&);
251 bool getGradientBackground();
254 void setGradientBackground(
bool);
257 void toogle3DRedBlue();
260 void toggleCopyright(
bool);
263 void toggleAxes(
bool);
269 void setColorScale(
bool);
272 bool getColorScale()
const;
278 void setColorScaleMinMax(
double m,
double M);
283 void setColorScaleTitle(QString t);
286 void computeVisiblePropBounds(
double bounds[6]);
301 void addProp(vtkSmartPointer<vtkProp> p,
bool refresh=
false);
304 bool containsProp(vtkSmartPointer<vtkProp>);
310 void removeProp(vtkSmartPointer<vtkProp> p,
bool refresh=
false);
313 void actorTransform(vtkSmartPointer<vtkActor>,
double *,
int ,
double **,
double *,
double *);
334 void actorPicked(vtkSmartPointer<vtkPicker>);
337 void rightButtonPressed();
344 virtual void mouseReleaseEvent(QMouseEvent* event);
347 virtual void mouseMoveEvent(QMouseEvent* event);
367 void resetCameraSettings();
394 static void divertionCallback(vtkObject * caller,
unsigned long eid,
void *clientdata,
void *calldata) {};
397 vtkSmartPointer<vtkCallbackCommand> pickingButtonDiverter;
407 static void buildScreenshotMap();
434 vtkSmartPointer<vtkAxesActor>
axes;
444 #endif //RENDERERWIDGET_H