SCL  1.0
Standard Control Library : Control, dynamics, physics, and simulation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Friends Macros Groups Pages
RobotMath.hpp
Go to the documentation of this file.
1 /* This file is part of scl, a control and simulation library
2 for robots and biomechanical models.
3 
4 scl is free software; you can redistribute it and/or
5 modify it under the terms of the GNU Lesser General Public
6 License as published by the Free Software Foundation; either
7 version 3 of the License, or (at your option) any later version.
8 
9 Alternatively, you can redistribute it and/or
10 modify it under the terms of the GNU General Public License as
11 published by the Free Software Foundation; either version 2 of
12 the License, or (at your option) any later version.
13 
14 scl is distributed in the hope that it will be useful,
15 but WITHOUT ANY WARRANTY; without even the implied warranty of
16 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17 GNU General Public License for more details.
18 
19 You should have received a copy of the GNU Lesser General Public
20 License and a copy of the GNU General Public License along with
21 scl. If not, see <http://www.gnu.org/licenses/>.
22 */
23 /* \file RobotMath.hpp
24  *
25  * Created on: Aug 4, 2010
26  *
27  * Copyright (C) 2010
28  *
29  * Author: Samir Menon <smenon@stanford.edu>
30  */
31 
34 #ifndef ROBOTMATH_HPP_
35 #define ROBOTMATH_HPP_
36 
37 #include <scl/DataTypes.hpp>
38 #include <Eigen/Dense>
39 #include <math.h>
40 
41 namespace scl
42 {
45  sBool sclTransform(Eigen::Affine3d &arg_T, const Eigen::Vector3d &arg_offset,
46  const Eigen::Quaterniond &arg_ori_in_parent,
47  const sFloat arg_q, const EJointType arg_jtype);
48 
58  void dh2TransformationMatrix(Eigen::Matrix4d &arg_mat, const sFloat &alpha,
59  const sFloat & a, const sFloat & d, const sFloat & theta);
60 
76  sBool quat2axisangle(const Eigen::Quaternion<sFloat> & arg_q,
77  Eigen::Vector4d & arg_aa);
78 }
79 
80 #endif /* ROBOTMATH_HPP_ */
sBool quat2axisangle(const Eigen::Quaternion< sFloat > &arg_q, Eigen::Vector4d &arg_aa)
Definition: RobotMath.cpp:128
bool sBool
Definition: DataTypes.hpp:54
void dh2TransformationMatrix(Eigen::Matrix4d &arg_mat, const sFloat &alpha, const sFloat &a, const sFloat &d, const sFloat &theta)
Definition: RobotMath.cpp:99
sBool sclTransform(Eigen::Affine3d &arg_T, const Eigen::Vector3d &arg_offset, const Eigen::Quaterniond &arg_ori_in_parent, const sFloat arg_q, const EJointType arg_jtype)
Definition: RobotMath.cpp:38
EJointType
Definition: DataTypes.hpp:110
double sFloat
Definition: DataTypes.hpp:72