1 #ifndef __VIZKIT_QVIZKITWIDGET__ 2 #define __VIZKIT_QVIZKITWIDGET__ 6 #include <QtDesigner/QDesignerExportWidget> 13 #if defined(__clang__) 14 #pragma clang system_header 15 #elif defined(__GNUC__) || defined(__GNUG__) 16 #pragma GCC system_header 18 #include <osgViewer/CompositeViewer> 19 #include <osgGA/CameraManipulator> 21 namespace osgQt {
class GraphicsWindowQt;}
138 Q_PROPERTY(
bool axes READ isAxes WRITE setAxes)
139 Q_PROPERTY(
bool axes_labels READ isAxesLabels WRITE setAxesLabels)
140 Q_PROPERTY( QColor background READ getBackgroundColor WRITE setBackgroundColor)
141 Q_PROPERTY( QStringList frame READ getVisualizationFrames WRITE setVisualizationFrame)
142 Q_PROPERTY(
bool environment READ isEnvironmentPluginEnabled WRITE setEnvironmentPluginEnabled)
143 Q_PROPERTY(
bool transformer READ isTransformer WRITE setTransformer)
145 Q_PROPERTY( QStringList manipulator READ getAvailableCameraManipulators WRITE setCameraManipulator )
146 Q_PROPERTY(
double transformerTextSize READ getTransformerTextSize WRITE setTransformerTextSize );
153 void propertyChanged(QString);
157 void setAxes(
bool value);
159 bool isAxesLabels() const;
160 void setAxesLabels(
bool value);
161 QStringList getVisualizationFrames() const;
162 void setVisualizationFrame(const QStringList &frames);
164 bool isTransformer() const;
165 void setTransformer(
bool value);
167 bool isEnvironmentPluginEnabled() const;
168 void setEnvironmentPluginEnabled(
bool enabled);
170 float getTransformerTextSize() const;
171 void setTransformerTextSize(
float value);
173 QColor getBackgroundColor()const;
174 void setBackgroundColor(QColor color);
182 void setCameraManipulator(QStringList const& manipulators);
186 QStringList getAvailableCameraManipulators() const;
189 class QDESIGNER_WIDGET_EXPORT
Vizkit3DWidget : public QWidget, public osgViewer::CompositeViewer
198 Vizkit3DWidget(QWidget* parent = 0,
const QString &world_name =
"world_osg",
bool auto_update =
true);
207 osg::Group* getRootNode()
const;
214 void setTrackedNode(osg::Node* node, QString tracked_object_name);
221 QSize sizeHint()
const;
229 void setCameraManipulator(osg::ref_ptr<osgGA::CameraManipulator> manipulator,
bool resetToDefaultHome =
false);
232 void addPlugin(QObject* plugin, QObject* parent = NULL);
233 void removePlugin(QObject* plugin);
237 QString getRootVisualizationFrame()
const;
243 {
return setVisualizationFrame(frame); }
248 void setVisualizationFrame(
const QString &frame);
252 void setRootFrame(QString frame);
255 QStringList* getVisualizationFramesRuby()
const;
256 QStringList getVisualizationFrames()
const;
257 QString getVisualizationFrame()
const;
265 void setPluginDataFrame(
const QString &frame, QObject *plugin);
266 QString getPluginDataFrame(QObject *plugin)
const;
268 void setTransformation(
const QString &source_frame,
const QString &target_frame,
269 const QVector3D &position,
const QQuaternion &orientation);
270 void getTransformation(
const QString &source_frame,
const QString &target_frame, QVector3D &position, QQuaternion &orientation)
const;
271 QString getWorldName()
const;
273 void setCameraLookAt(
double x,
double y,
double z);
274 void setCameraEye(
double x,
double y,
double z);
275 void setCameraUp(
double x,
double y,
double z);
276 void getCameraView(QVector3D& eye, QVector3D& lookAt, QVector3D& up);
278 void setSmallFeatureCullingPixelSize(
float val);
280 QColor getBackgroundColor()
const;
281 void setBackgroundColor(QColor color);
283 void collapsePropertyBrowser();
284 QWidget* getPropertyWidget()
const;
286 bool isTransformer()
const;
287 void setTransformer(
bool value);
288 float getTransformerTextSize()
const;
289 void setTransformerTextSize(
float value);
291 void setAxes(
bool value);
293 bool isAxesLabels()
const;
294 void setAxesLabels(
bool value);
299 void enableGrabbing();
305 void disableGrabbing();
313 QString findPluginPath(QString plugin_name);
314 QString findLibPath(QString lib_name);
315 QObject* loadPlugin(QString lib_name,QString plugin_name);
316 QStringList* getAvailablePlugins();
319 void setCameraManipulator(QString manipulator,
bool resetToDefaultHome =
false);
321 void setCameraManipulator(
CAMERA_MANIPULATORS manipulator,
bool resetToDefaultHome =
false);
325 QString getCameraManipulatorName()
const;
338 void setEnvironmentPlugin(QObject* plugin);
344 void setEnvironmentPluginEnabled(
bool enabled);
351 bool isEnvironmentPluginEnabled()
const;
359 void clearEnvironmentPlugin();
362 void addPlugins(QObject* plugin,QObject* parent);
363 void removePlugins(QObject* plugin);
364 void propertyChanged(QString propertyName);
367 virtual void paintEvent( QPaintEvent* event );
370 void setPluginDataFrameIntern(
const QString &frame, QObject *plugin);
371 void addPluginIntern(QObject* plugin,QObject *parent=NULL);
372 void removePluginIntern(QObject* plugin);
373 void pluginActivityChanged(
bool enabled);
374 void pluginChildrenChanged();
375 void addProperties(QObject* plugin,QObject *parent=NULL);
379 void enableEnvironmentPlugin();
381 void disableEnvironmentPlugin();
382 void changeCameraView(
const osg::Vec3* lookAtPos,
const osg::Vec3* eyePos,
const osg::Vec3* upVector);
383 void setPluginEnabled(QObject* plugin,
bool enabled);
384 QObject* loadLib(QString file_path);
390 osg::Group *createSceneGraph(
const QString &world_name);
392 QWidget* addViewWidget( osgQt::GraphicsWindowQt* gw, ::osg::Node* scene );
393 osgQt::GraphicsWindowQt* createGraphicsWindow(
int x,
int y,
int w,
int h,
const std::string& name=
"",
bool windowDecoration=
false );
397 osg::ref_ptr<osg::Group> root;
408 struct VizPluginInfo {
409 osg::ref_ptr<osg::Group> osg_group_ptr;
410 QWeakPointer<VizPluginBase> weak_ptr;
412 VizPluginInfo(
VizPluginBase* plugin_ptr_, osg::ref_ptr<osg::Group> osg_group_ptr_)
413 : osg_group_ptr(osg_group_ptr_),
414 weak_ptr(plugin_ptr_)
418 typedef std::map<VizPluginBase*, VizPluginInfo> PluginMap;
424 QString current_frame;
430 QString tracked_object_name;
432 osg::ref_ptr<osg::Image> grabImage;
437 osg::ref_ptr<osg::Referenced> captureHandler;
438 osg::ref_ptr<osg::Referenced> captureOperation;
Definition: Vizkit3DWidget.hpp:21
Definition: Vizkit3DWidget.hpp:129
Definition: Vizkit3DWidget.hpp:118
CAMERA_MANIPULATORS
Definition: Vizkit3DWidget.hpp:32
Definition: Vizkit3DWidget.hpp:104
Definition: Vizkit3DWidget.hpp:133
Definition: Vizkit3DWidget.hpp:79
Definition: AxesNode.cpp:12
Definition: Vizkit3DWidget.hpp:122
Definition: Vizkit3DWidget.hpp:51
Definition: Vizkit3DWidget.hpp:127
Definition: Vizkit3DWidget.hpp:68
Definition: Vizkit3DWidget.hpp:114
Definition: EnvPluginBase.hpp:14
Definition: Vizkit3DPlugin.hpp:110