Robotics Library
0.6.2
rl
kin
Joint.h
Go to the documentation of this file.
1
//
2
// Copyright (c) 2009, Markus Rickert
3
// All rights reserved.
4
//
5
// Redistribution and use in source and binary forms, with or without
6
// modification, are permitted provided that the following conditions are met:
7
//
8
// * Redistributions of source code must retain the above copyright notice,
9
// this list of conditions and the following disclaimer.
10
// * Redistributions in binary form must reproduce the above copyright notice,
11
// this list of conditions and the following disclaimer in the documentation
12
// and/or other materials provided with the distribution.
13
//
14
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
15
// AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
16
// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
17
// ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
18
// LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
19
// CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
20
// SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
21
// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
22
// CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
23
// ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
24
// POSSIBILITY OF SUCH DAMAGE.
25
//
26
27
#ifndef _RL_KIN_JOINT_H_
28
#define _RL_KIN_JOINT_H_
29
30
#ifdef WIN32
31
#include <unordered_set>
32
#else // WIN32
33
#include <tr1/unordered_set>
34
#endif // WIN32
35
36
#include <
rl/math/Unit.h
>
37
38
#include "
Transform.h
"
39
40
namespace
rl
41
{
42
namespace
kin
43
{
44
class
Joint
:
public
Transform
45
{
46
public
:
47
Joint
();
48
49
virtual
~Joint
();
50
51
::rl::math::Real
getPosition
()
const
;
52
53
virtual ::rl::math::Unit
getPositionUnit
()
const
= 0;
54
55
virtual ::rl::math::Unit
getSpeedUnit
()
const
= 0;
56
57
virtual
void
jacobian
(
const ::rl::math::Transform
& tcp, ::
rl::math::MatrixBlock
& j) = 0;
58
59
virtual
void
setPosition
(
const ::rl::math::Real
&
q
);
60
61
::rl::math::Real
a
;
62
63
::rl::math::Real
alpha
;
64
65
::rl::math::Real
d
;
66
67
::std::tr1::unordered_set< ::std::size_t >
leaves
;
68
69
::rl::math::Real
max
;
70
71
::rl::math::Real
min
;
72
73
::rl::math::Real
offset
;
74
75
::rl::math::Real
speed
;
76
77
::rl::math::Real
theta
;
78
79
bool
wraparound
;
80
81
protected
:
82
::rl::math::Real
q
;
83
84
private
:
85
86
};
87
}
88
}
89
90
#endif // _RL_KIN_JOINT_H_
rl::kin::Joint::theta
::rl::math::Real theta
Definition:
Joint.h:77
rl::kin::Joint::q
::rl::math::Real q
Definition:
Joint.h:82
rl::kin::Joint::d
::rl::math::Real d
Definition:
Joint.h:65
rl::kin::Joint::max
::rl::math::Real max
Definition:
Joint.h:69
rl::kin::Joint::a
::rl::math::Real a
Definition:
Joint.h:61
rl::kin::Joint::offset
::rl::math::Real offset
Definition:
Joint.h:73
rl::kin::Joint
Definition:
Joint.h:45
Transform.h
rl::kin::Joint::Joint
Joint()
Definition:
Joint.cpp:33
rl::kin::Joint::getPosition
::rl::math::Real getPosition() const
Definition:
Joint.cpp:54
rl::kin::Joint::wraparound
bool wraparound
Definition:
Joint.h:79
rl::kin::Joint::min
::rl::math::Real min
Definition:
Joint.h:71
rl::math::MatrixBlock
::Eigen::Block< Matrix > MatrixBlock
Definition:
Matrix.h:51
rl::kin::Joint::speed
::rl::math::Real speed
Definition:
Joint.h:75
rl::kin::Joint::getSpeedUnit
virtual ::rl::math::Unit getSpeedUnit() const =0
rl::kin::Joint::~Joint
virtual ~Joint()
Definition:
Joint.cpp:49
rl::math::Unit
Unit
Definition:
Unit.h:162
rl::kin::Joint::jacobian
virtual void jacobian(const ::rl::math::Transform &tcp, ::rl::math::MatrixBlock &j)=0
rl::math::Transform
::Eigen::Transform< Real, 3, ::Eigen::Affine > Transform
Definition:
Transform.h:42
rl::kin::Joint::getPositionUnit
virtual ::rl::math::Unit getPositionUnit() const =0
rl::kin::Joint::setPosition
virtual void setPosition(const ::rl::math::Real &q)
Definition:
Joint.cpp:60
rl::math::Real
double Real
Definition:
Real.h:34
rl::kin::Joint::leaves
::std::tr1::unordered_set< ::std::size_t > leaves
Definition:
Joint.h:67
rl::kin::Joint::alpha
::rl::math::Real alpha
Definition:
Joint.h:63
rl::kin::Transform
Definition:
Transform.h:41
Unit.h
rl
Definition:
Ati.cpp:35
Generated by
1.8.20