Class
List
Modules
Common
Events
Math
Messages
Physics
Rendering
Sensors
Transport
Links
Gazebo Website
Tutorials
Download
Report Documentation Issues
gazebo
physics
simbody
SimbodyBallJoint.hh
Go to the documentation of this file.
1
/*
2
* Copyright (C) 2012-2016 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 _SIMBODYBALLJOINT_HH_
19
#define _SIMBODYBALLJOINT_HH_
20
21
#include "
gazebo/physics/BallJoint.hh
"
22
#include "
gazebo/physics/simbody/SimbodyJoint.hh
"
23
#include "
gazebo/physics/simbody/SimbodyPhysics.hh
"
24
#include "
gazebo/util/system.hh
"
25
26
namespace
gazebo
27
{
28
namespace
physics
29
{
33
35
class
GZ_PHYSICS_VISIBLE
SimbodyBallJoint
:
public
BallJoint
<SimbodyJoint>
36
{
38
public
:
SimbodyBallJoint
(SimTK::MultibodySystem *_world,
BasePtr
_parent);
39
41
public
:
virtual
~
SimbodyBallJoint
();
42
43
// Documentation inherited.
44
public
:
virtual
void
Load(sdf::ElementPtr _sdf);
45
46
// Documentation inherited.
47
public
:
math::Vector3
GetAnchor(
unsigned
int
_index)
const
;
48
49
// Documentation inherited.
50
public
:
virtual
math::Vector3
GetAxis
(
unsigned
int
/*_index*/
)
const
51
{
return
math::Vector3
();}
52
53
// Documentation inherited.
54
public
:
virtual
void
SetVelocity(
unsigned
int
_index,
double
_angle);
55
56
// Documentation inherited.
57
public
:
virtual
double
GetVelocity(
unsigned
int
_index)
const
;
58
59
// Documentation inherited.
60
public
:
virtual
math::Angle
GetAngleImpl(
unsigned
int
_index)
const
;
61
62
// Documentation inherited.
63
public
:
virtual
math::Vector3
GetGlobalAxis(
unsigned
int
_index)
const
;
64
65
// Documentation inherited.
66
public
:
virtual
void
SetAxis(
unsigned
int
_index,
67
const
math::Vector3
&_axis);
68
69
// Documentation inherited.
70
public
:
virtual
math::Angle
GetHighStop(
unsigned
int
_index);
71
72
// Documentation inherited.
73
public
:
virtual
math::Angle
GetLowStop(
unsigned
int
_index);
74
75
// Documentation inherited.
76
public
:
virtual
bool
SetHighStop(
unsigned
int
_index,
77
const
math::Angle
&_angle);
78
79
// Documentation inherited.
80
public
:
virtual
bool
SetLowStop(
unsigned
int
_index,
81
const
math::Angle
&_angle);
82
83
// Documentation inherited.
84
protected
:
virtual
void
SetForceImpl(
unsigned
int
_index,
double
_torque);
85
};
87
}
88
}
89
#endif
gazebo::physics::SimbodyBallJoint
SimbodyBallJoint class models a ball joint in Simbody.
Definition:
SimbodyBallJoint.hh:35
gazebo::math::Vector3
The Vector3 class represents the generic vector containing 3 elements.
Definition:
Vector3.hh:39
system.hh
BallJoint.hh
SimbodyPhysics.hh
gazebo::physics::SimbodyBallJoint::GetAxis
virtual math::Vector3 GetAxis(unsigned int) const
Definition:
SimbodyBallJoint.hh:50
SimbodyJoint.hh
gazebo::math::Angle
An angle and related functions.
Definition:
Angle.hh:53
gazebo::physics::BasePtr
boost::shared_ptr< Base > BasePtr
Definition:
PhysicsTypes.hh:77
gazebo::physics::BallJoint
Base class for a ball joint.
Definition:
BallJoint.hh:40