KDL 1.5.1
Loading...
Searching...
No Matches
path_circle.hpp
Go to the documentation of this file.
1/***************************************************************************
2 tag: Erwin Aertbelien Mon Jan 10 16:38:39 CET 2005 path_circle.h
3
4 path_circle.h - description
5 -------------------
6 begin : Mon January 10 2005
7 copyright : (C) 2005 Erwin Aertbelien
8 email : erwin.aertbelien@mech.kuleuven.ac.be
9
10 ***************************************************************************
11 * This library is free software; you can redistribute it and/or *
12 * modify it under the terms of the GNU Lesser General Public *
13 * License as published by the Free Software Foundation; either *
14 * version 2.1 of the License, or (at your option) any later version. *
15 * *
16 * This library is distributed in the hope that it will be useful, *
17 * but WITHOUT ANY WARRANTY; without even the implied warranty of *
18 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU *
19 * Lesser General Public License for more details. *
20 * *
21 * You should have received a copy of the GNU Lesser General Public *
22 * License along with this library; if not, write to the Free Software *
23 * Foundation, Inc., 59 Temple Place, *
24 * Suite 330, Boston, MA 02111-1307 USA *
25 * *
26 ***************************************************************************/
27
28
29/*****************************************************************************
30* ALTERNATIVE FOR trajectory_circle.h/cpp
31 * \author
32 * Erwin Aertbelien, Div. PMA, Dep. of Mech. Eng., K.U.Leuven
33 *
34 * \version
35 * ORO_Geometry V0.2
36 *
37 * \par History
38 * - $log$
39 *
40 * \par Release
41 * $Id: path_circle.h,v 1.1.1.1.2.3 2003/07/24 13:26:15 psoetens Exp $
42 * $Name: $
43 ****************************************************************************/
44
45#ifndef KDL_MOTION_PATHCIRCLE_H
46#define KDL_MOTION_PATHCIRCLE_H
47
48#include "path.hpp"
50
51
52namespace KDL {
53
54
60class Path_Circle : public Path
61 {
62
63 // Orientatie gedeelte
65
66 // Circular gedeelte
67 double radius;
69
70 // equivalent radius
71 double eqradius;
72
73 // verdeling baanlengte over pos/rot
74 double pathlength;
75 double scalelin;
76 double scalerot;
77
79
80 public:
81
87 Path_Circle(const Frame& F_base_start,const Vector& V_base_center,
88 const Vector& V_base_p,
89 const Rotation& R_base_end,
90 double alpha,
92 double eqradius,
93 bool _aggregate=true);
94
95 double LengthToS(double length);
96
97 virtual double PathLength();
98 virtual Frame Pos(double s) const;
99 virtual Twist Vel(double s,double sd) const;
100 virtual Twist Acc(double s,double sd,double sdd) const;
101 virtual Path* Clone();
102 virtual void Write(std::ostream& os);
103
108 return ID_CIRCLE;
109 }
110
111 virtual ~Path_Circle();
112 };
113
114
115}
116
117
118#endif
Definition: frames.hpp:570
A circular Path with 'open ends'.
Definition: path_circle.hpp:61
bool aggregate
Definition: path_circle.hpp:78
virtual void Write(std::ostream &os)
Writes one of the derived objects to the stream.
Definition: path_circle.cpp:158
RotationalInterpolation * orient
Definition: path_circle.hpp:64
virtual double PathLength()
Returns the total path length of the trajectory (has dimension LENGTH) This is not always a physical ...
Definition: path_circle.cpp:105
virtual Twist Acc(double s, double sd, double sdd) const
Returns the acceleration twist at path length s and with derivative of s == sd, and 2nd derivative of...
Definition: path_circle.cpp:125
double eqradius
Definition: path_circle.hpp:71
double radius
Definition: path_circle.hpp:67
virtual Twist Vel(double s, double sd) const
Returns the velocity twist at path length s theta and with derivative of s == sd.
Definition: path_circle.cpp:117
virtual ~Path_Circle()
Definition: path_circle.cpp:153
Frame F_base_center
Definition: path_circle.hpp:68
double LengthToS(double length)
LengthToS() converts a physical length along the trajectory to the parameter s used in Pos,...
Definition: path_circle.cpp:100
virtual IdentifierType getIdentifier() const
gets an identifier indicating the type of this Path object
Definition: path_circle.hpp:107
double pathlength
Definition: path_circle.hpp:74
double scalerot
Definition: path_circle.hpp:76
virtual Frame Pos(double s) const
Returns the Frame at the current path length s.
Definition: path_circle.cpp:109
double scalelin
Definition: path_circle.hpp:75
virtual Path * Clone()
Virtual constructor, constructing by copying, Returns a deep copy of this Path Object.
Definition: path_circle.cpp:140
The specification of the path of a trajectory.
Definition: path.hpp:59
IdentifierType
Definition: path.hpp:61
@ ID_CIRCLE
Definition: path.hpp:63
represents rotations in 3 dimensional space.
Definition: frames.hpp:302
RotationalInterpolation specifies the rotational part of a geometric trajectory.
Definition: rotational_interpolation.hpp:63
represents both translational and rotational velocities.
Definition: frames.hpp:720
A concrete implementation of a 3 dimensional vector class.
Definition: frames.hpp:161
Definition: articulatedbodyinertia.cpp:26