V-ART
uniaxialjoint.h
Go to the documentation of this file.
1 
5 #ifndef VART_UNIAXIALJOINT_H
6 #define VART_UNIAXIALJOINT_H
7 
8 #include "vart/dof.h"
9 #include "vart/joint.h"
10 
11 namespace VART {
16  class UniaxialJoint : public Joint {
17  public:
21  UniaxialJoint();
22 
24  UniaxialJoint(const VART::UniaxialJoint& joint);
25 
28 
31  virtual VART::SceneNode * Copy();
32 
33  //~ BiaxialJoint( Joint *parent );
34  //~ BiaxialJoint( Joint *parent, Dof *dof1, Dof *dof2 );
35 
36  virtual ~UniaxialJoint();
37 
41  void SetFlexionTo( float value );
42 
46  void Flex(float variance) { dofList.front()->Move(variance); }
47 
53  virtual void AddDof(Dof* dof);
54  virtual Dof* AddDof(const Point4D& vec, const Point4D& pos, float min, float max);
55  }; // end class declaration
56  // FixMe: This class is not implementated yet.
57  class HingeJoint : public UniaxialJoint {
58  };
59 
60  // FixMe: This class is not implementated yet.
61  class PivotJoint : public UniaxialJoint {
62  };
63 } // end namespace
64 #endif
A joint with one rotational degrees of freedom.
Definition: uniaxialjoint.h:16
Base class for objects that compose a scene graph.
Definition: scenenode.h:25
UniaxialJoint()
Creates an uninitialized biaxial (1 DOF) joint.
Header file for V-ART class "Dof".
void SetFlexionTo(float value)
Sets the first DOF.
Representation of joints.
Definition: joint.h:34
Points and vectors using homogeneous coordinates.
Definition: point4d.h:22
std::list< Dof * > dofList
Definition: joint.h:118
VART::UniaxialJoint & operator=(const VART::UniaxialJoint &joint)
Copies all data of an UniaxialJoint to another.
virtual VART::SceneNode * Copy()
Returns a copy of an Joint. Every derived class must reimplements this method, to avoid errors with V...
Header file for V-ART class "Joint".
void Flex(float variance)
Moves the first DOF.
Definition: uniaxialjoint.h:46
virtual void AddDof(Dof *dof)
Add a DOF to the joint.
Degree Of Freedom - basic component of a Joint.
Definition: dof.h:28