AnimatLab  2
Test
OsgHinge.h
Go to the documentation of this file.
1 
7 #pragma once
8 
9 namespace OsgAnimatSim
10 {
11  namespace Environment
12  {
13  namespace Joints
14  {
15 
31  class ANIMAT_OSG_PORT OsgHinge
32  {
33  protected:
34  //Graphics objects for the hinge drawing code
36  osg::ref_ptr<osg::Geometry> m_osgCylinder;
37 
39  osg::ref_ptr<osg::Geode> m_osgCylinderGeode;
40 
42  osg::ref_ptr<osg::MatrixTransform> m_osgCylinderMT;
43 
45  osg::ref_ptr<osg::Material> m_osgCylinderMat;
46 
48  osg::ref_ptr<osg::StateSet> m_osgCylinderSS;
49 
50  virtual void DeleteHingeGraphics(osg::ref_ptr<osg::MatrixTransform> osgJointMT, OsgHingeLimit *lpUpperLimit, OsgHingeLimit *lpLowerLimit, OsgHingeLimit *lpPosFlap);
51  virtual void CreateHingeGraphics(float fltHeight, float fltRadius, float fltFlapWidths,
52  osg::ref_ptr<osg::MatrixTransform> osgJointMT, OsgHingeLimit *lpUpperLimit,
53  OsgHingeLimit *lpLowerLimit, OsgHingeLimit *lpPosFlap);
54  virtual void CreateCylinderGraphics(float fltHeight, float fltRadius);
55 
56  public:
57  OsgHinge();
58  virtual ~OsgHinge();
59 
60  };
61 
62  } // Joints
63  } // Environment
64 } //OsgAnimatSim
Vortex hinge joint class.
Definition: OsgHinge.h:31
Classes for implementing the cm-labs vortex physics engine for AnimatLab.
osg::ref_ptr< osg::StateSet > m_osgCylinderSS
The osg cylinder state set.
Definition: OsgHinge.h:48
osg::ref_ptr< osg::MatrixTransform > m_osgCylinderMT
The osg cylinder matrix transform.
Definition: OsgHinge.h:42
osg::ref_ptr< osg::Geometry > m_osgCylinder
The osg cylinder geometry.
Definition: OsgHinge.h:36
osg::ref_ptr< osg::Geode > m_osgCylinderGeode
The osg cylinder geode.
Definition: OsgHinge.h:39
osg::ref_ptr< osg::Material > m_osgCylinderMat
The osg cylinder material.
Definition: OsgHinge.h:45