OpenFrames
Public Member Functions | Protected Attributes | List of all members
OpenFrames::QWidgetPanel Class Reference

ReferenceFrame with Qt control panel on plane. More...

#include <QWidgetPanel.hpp>

Inheritance diagram for OpenFrames::QWidgetPanel:
OpenFrames::ReferenceFrame

Public Member Functions

 QWidgetPanel (const std::string &name)
 
 QWidgetPanel (const std::string &name, const osg::Vec3 &color)
 
 QWidgetPanel (const std::string &name, const osg::Vec4 &color)
 
 QWidgetPanel (const std::string &name, float r, float g, float b, float a=1.0)
 
virtual void showContents (bool showContents)
 
virtual bool getContentsShown () const
 
void setSize (const double &width, const double &height)
 
void getSize (double &width, double &height)
 
bool setWidget (QWidget *widget)
 
void setIgnoreWidget (QWidget *widget, bool ignore)
 
osg::Image * getImage ()
 
void setImageHandler (osgViewer::InteractiveImageHandler *handler)
 
osgViewer::InteractiveImageHandler * getImageHandler () const
 
virtual void setColor (const osg::Vec4 &color)
 
virtual const osg::BoundingSphere & getBound () const
 
virtual void setColor (const osg::Vec4 &color)
 
virtual void setColor (float r, float g, float b, float a=1.0)
 
- Public Member Functions inherited from OpenFrames::ReferenceFrame
 ReferenceFrame (const std::string &name)
 
 ReferenceFrame (const std::string &name, const osg::Vec3 &color)
 
 ReferenceFrame (const std::string &name, const osg::Vec4 &color)
 
 ReferenceFrame (const std::string &name, float r, float g, float b, float a=1.0)
 
void setName (const std::string &name)
 
const std::string & getName () const
 
virtual void setColor (float r, float g, float b, float a=1.0)
 
virtual const osg::Vec4 & getColor () const
 
virtual void getColor (float &r, float &g, float &b, float &a) const
 
FrameTransformgetTransform () const
 
virtual osg::Group * getGroup () const
 
void setPosition (const double &x, const double &y, const double &z)
 
void setPosition (const osg::Vec3d &pos)
 
void getPosition (double &x, double &y, double &z) const
 
void getPosition (osg::Vec3d &pos) const
 
void setAttitude (const double &rx, const double &ry, const double &rz, const double &angle)
 
void setAttitude (const osg::Quat &att)
 
void getAttitude (double &rx, double &ry, double &rz, double &angle) const
 
void getAttitude (osg::Quat &att) const
 
virtual void showAxes (unsigned int axes)
 
virtual void showAxesLabels (unsigned int labels)
 
virtual void showNameLabel (bool namelabel)
 
void moveXAxis (osg::Vec3d base, double len, double headRatio=0.3, double bodyRadius=0.0, double headRadius=0.0) const
 
void moveYAxis (osg::Vec3d base, double len, double headRatio=0.3, double bodyRadius=0.0, double headRadius=0.0) const
 
void moveZAxis (osg::Vec3d base, double len, double headRatio=0.3, double bodyRadius=0.0, double headRadius=0.0) const
 
void setXLabel (const std::string &str)
 
void setYLabel (const std::string &str)
 
void setZLabel (const std::string &str)
 
bool addChild (ReferenceFrame *frame)
 
bool removeChild (ReferenceFrame *frame)
 
void setLightSourceEnabled (bool enable)
 
bool getLightSourceEnabled () const
 
osg::LightSource * getLightSource () const
 
int getNumChildren ()
 
ReferenceFramegetChild (int i)
 
void createFrameString (std::string &str, std::string prefix=" ") const
 
virtual std::string frameInfo () const
 
void addParent (ReferenceFrame *frame)
 
void removeParent (ReferenceFrame *frame)
 
int getNumParents () const
 
ReferenceFramegetParent (int i)
 
void addTracker (FrameTracker *t)
 
void removeTracker (FrameTracker *t)
 
int getNumTrackers () const
 
FrameTrackergetTracker (int i)
 
int getChildIndex (const ReferenceFrame *frame) const
 
int getParentIndex (const ReferenceFrame *frame) const
 
int getTrackerIndex (const FrameTracker *t) const
 

Protected Attributes

osg::ref_ptr< osg::Geode > _geode
 
osg::ref_ptr< osg::Geometry > _panel
 
osg::ref_ptr< osg::Geometry > _panelBack
 
osg::ref_ptr< QWidgetImage_image
 
- Protected Attributes inherited from OpenFrames::ReferenceFrame
std::string _name
 Name of reference frame.
 
osg::ref_ptr< Vector_xAxis
 Vector of frame's x-axis.
 
osg::ref_ptr< Vector_yAxis
 Vector of frame's y-axis.
 
osg::ref_ptr< Vector_zAxis
 Vector of frame's z-axis.
 
osg::ref_ptr< osgText::Text > _xLabel
 X-Axes label.
 
osg::ref_ptr< osgText::Text > _yLabel
 Y-Axes label.
 
osg::ref_ptr< osgText::Text > _zLabel
 Z-Axes label.
 
osg::ref_ptr< osgText::Text > _nameLabel
 Name of reference frame that is displayed.
 
osg::ref_ptr< osg::Geode > _axes
 x,y,z axes together
 
osg::ref_ptr< osg::Geode > _labels
 axes and name labels
 
osg::BoundingSphere _bound
 Frame's bounding sphere.
 
osg::ref_ptr< FrameTransform_xform
 The transform that all contained objects will undergo.
 

Additional Inherited Members

- Public Types inherited from OpenFrames::ReferenceFrame
enum  AxesType { NO_AXES = 0, X_AXIS = 1, Y_AXIS = 2, Z_AXIS = 4 }
 
typedef std::vector< ReferenceFrame * > ParentList
 
typedef std::vector< osg::ref_ptr< ReferenceFrame > > ChildList
 
typedef std::vector< FrameTracker * > TrackerList
 

Detailed Description

ReferenceFrame with Qt control panel on plane.

A QWidgetPanel is a ReferenceFrame with a Qt control panel on a plane. The size of the control panel is adjustable.

Member Function Documentation

◆ getBound()

virtual const osg::BoundingSphere& OpenFrames::QWidgetPanel::getBound ( ) const
virtual

Inherited from ReferenceFrame.

Reimplemented from OpenFrames::ReferenceFrame.

◆ getImage()

osg::Image* OpenFrames::QWidgetPanel::getImage ( )
inline

Get the image onto which the Qt widget is drawn. Useful when creating custom image handlers. Only valid if setWidget() has been called with a valid QWidget, returns NULL otherwise.

◆ setColor()

virtual void OpenFrames::QWidgetPanel::setColor ( const osg::Vec4 &  color)
virtual

Inherited from ReferenceFrame. Set the color of the box. If a texture is applied, the color is used to filter the texture.

Reimplemented from OpenFrames::ReferenceFrame.

◆ setIgnoreWidget()

void OpenFrames::QWidgetPanel::setIgnoreWidget ( QWidget *  widget,
bool  ignore 
)

Sets whether a widget will ignore keyboard and mouse events

◆ setImageHandler()

void OpenFrames::QWidgetPanel::setImageHandler ( osgViewer::InteractiveImageHandler *  handler)

Set the image handler that translates user actions into image actions

◆ setSize()

void OpenFrames::QWidgetPanel::setSize ( const double &  width,
const double &  height 
)

Set the width and height of the panel, given wrt the ReferenceFrame origin

◆ setWidget()

bool OpenFrames::QWidgetPanel::setWidget ( QWidget *  widget)

Set the QWidget containing controls for the control box


The documentation for this class was generated from the following file: