OpenFrames
Public Types | Public Member Functions | Protected Attributes | List of all members
OpenFrames::ReferenceFrame Class Reference
Inheritance diagram for OpenFrames::ReferenceFrame:
OpenFrames::CoordinateAxes OpenFrames::DrawableTrajectory OpenFrames::LatLonGrid OpenFrames::Model OpenFrames::QWidgetPanel OpenFrames::RadialPlane OpenFrames::Sphere OpenFrames::SkySphere

Public Types

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
 

Public Member Functions

 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 (const osg::Vec4 &color)
 
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 const osg::BoundingSphere & getBound () const
 
virtual void showAxes (unsigned int axes)
 
virtual void showAxesLabels (unsigned int labels)
 
virtual void showNameLabel (bool namelabel)
 
virtual void showContents (bool showContents)
 
virtual bool getContentsShown () const
 
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

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.
 

Member Typedef Documentation

◆ ChildList

typedef std::vector<osg::ref_ptr<ReferenceFrame> > OpenFrames::ReferenceFrame::ChildList

Defines a vector of all direct children of this frame

◆ ParentList

Defines a vector of all direct parents of this frame

◆ TrackerList

Defines a vector of all trackers of this frame

Member Enumeration Documentation

◆ AxesType

Specifies which axes to draw


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