libalmath  1.14.5
almath/tools/almath.h
00001 /*
00002  * Copyright (c) 2012 Aldebaran Robotics. All rights reserved.
00003  * Use of this source code is governed by a BSD-style license that can be
00004  * found in the COPYING file.
00005  */
00006 
00007 
00008 #pragma once
00009 #ifndef _LIBALMATH_ALMATH_TOOLS_ALMATH_H_
00010 #define _LIBALMATH_ALMATH_TOOLS_ALMATH_H_
00011 
00012 #include <almath/types/alvelocity6d.h>
00013 #include <almath/types/alposition3d.h>
00014 #include <almath/types/alposition6d.h>
00015 #include <almath/types/alrotation.h>
00016 
00017 namespace AL {
00018   namespace Math {
00019 
00033   bool clipData(
00034     const float& pMin,
00035     const float& pMax,
00036     float&       pData);
00037 
00038 
00042 
00051 
00052 
00053 
00054 
00055 
00056 
00057 
00058     Position6D position6DFromVelocity6D(const Velocity6D& pVel);
00059 
00060 
00064 
00080 
00081 
00082 
00083 
00084 
00085 
00086 
00087 
00088     Position3D operator*(
00089       const Rotation&   pRot,
00090       const Position3D& pPos);
00091 
00092 
00096 
00105 
00106 
00107 
00108 
00109 
00110 
00111 
00112 
00113     Velocity6D operator*(
00114       const float       pVal,
00115       const Position6D& pPos);
00116 
00117 
00127     Rotation rotationFromAngleDirection(
00128       const float&      pTheta,
00129       const Position3D& pPos);
00130 
00131 
00132   } // namespace Math
00133 } // namespace AL
00134 #endif  // _LIBALMATH_ALMATH_TOOLS_ALMATH_H_
 All Classes Namespaces Functions Variables