Class
List
Modules
Common
Events
Messages
Physics
Rendering
Sensors
Transport
Links
Gazebo Website
Tutorials
Download
Report Documentation Issues
gazebo
physics
simbody
SimbodyHingeJoint.hh
Go to the documentation of this file.
1
/*
2
* Copyright (C) 2012 Open Source Robotics Foundation
3
*
4
* Licensed under the Apache License, Version 2.0 (the "License");
5
* you may not use this file except in compliance with the License.
6
* You may obtain a copy of the License at
7
*
8
* http://www.apache.org/licenses/LICENSE-2.0
9
*
10
* Unless required by applicable law or agreed to in writing, software
11
* distributed under the License is distributed on an "AS IS" BASIS,
12
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
* See the License for the specific language governing permissions and
14
* limitations under the License.
15
*
16
*/
17
18
#ifndef _SIMBODY_HINGEJOINT_HH_
19
#define _SIMBODY_HINGEJOINT_HH_
20
21
#include <vector>
22
23
#include "
gazebo/physics/HingeJoint.hh
"
24
#include "
gazebo/physics/simbody/SimbodyJoint.hh
"
25
#include "
gazebo/physics/simbody/SimbodyPhysics.hh
"
26
#include "
gazebo/util/system.hh
"
27
28
namespace
gazebo
29
{
30
namespace
physics
31
{
35
37
class
GZ_PHYSICS_VISIBLE
SimbodyHingeJoint
:
public
HingeJoint
<SimbodyJoint>
38
{
40
public
:
SimbodyHingeJoint
(SimTK::MultibodySystem *world,
BasePtr
_parent);
41
43
public
:
virtual
~
SimbodyHingeJoint
();
44
45
// Documentation inherited.
46
protected
:
virtual
void
Load(sdf::ElementPtr _sdf);
47
48
// Documentation inherited.
49
public
:
void
SetAxis(
const
unsigned
int
_index,
50
const
ignition::math::Vector3d &_axis);
51
52
// Documentation inherited.
53
public
:
virtual
void
SetVelocity(
unsigned
int
_index,
double
_rate);
54
55
// Documentation inherited.
56
public
:
virtual
double
GetVelocity(
unsigned
int
_index)
const
;
57
58
// Documentation inherited.
59
public
:
virtual
ignition::math::Vector3d GlobalAxis(
60
const
unsigned
int
_index)
const
;
61
63
public
:
virtual
void
SaveSimbodyState(
const
SimTK::State &_state);
64
66
public
:
virtual
void
RestoreSimbodyState(SimTK::State &_state);
67
68
// Documentation inherited.
69
protected
:
virtual
double
PositionImpl(
const
unsigned
int
_index)
const
;
70
71
// Documentation inherited.
72
protected
:
virtual
void
SetForceImpl(
unsigned
int
_index,
double
_torque);
73
75
private
: std::vector<double> simbodyQ;
76
78
private
: std::vector<double> simbodyU;
79
};
81
}
82
}
83
#endif
HingeJoint.hh
gazebo
Forward declarations for the common classes.
Definition:
Animation.hh:26
system.hh
gazebo::physics::SimbodyHingeJoint
A single axis hinge joint.
Definition:
SimbodyHingeJoint.hh:37
SimbodyPhysics.hh
gazebo::physics::HingeJoint
A single axis hinge joint.
Definition:
HingeJoint.hh:37
SimbodyJoint.hh
gazebo::physics::BasePtr
boost::shared_ptr< Base > BasePtr
Definition:
PhysicsTypes.hh:78