Tesseract
Motion Planning Environment
|
#include <tesseract_common/macros.h>
#include <tesseract_kinematics/ikfast/external/ikfast.h>
#include <cmath>
#include <vector>
#include <limits>
#include <complex>
#include <stdexcept>
#include <iostream>
#include <cstddef>
#include <memory>
Go to the source code of this file.
Classes | |
class | IKSolver |
Macros | |
#define | IKFAST_NO_MAIN |
#define | IKFAST_COMPILE_ASSERT(x) extern int __dummy[(int)(x)] |
#define | IKFAST_STRINGIZE2(s) #s |
#define | IKFAST_STRINGIZE(s) IKFAST_STRINGIZE2(s) |
#define | __PRETTY_FUNCTION__ __func__ |
#define | IKFAST_ASSERT(b) |
#define | IKFAST_ALIGNED16(x) x __attribute((aligned(16))) |
#define | IK2PI ((IkReal)6.28318530717959) |
#define | IKPI ((IkReal)3.14159265358979) |
#define | IKPI_2 ((IkReal)1.57079632679490) |
#define | IKFAST_SINCOS_THRESH ((IkReal)0.000001) |
#define | IKFAST_ATAN2_MAGTHRESH ((IkReal)2e-6) |
#define | IKFAST_SOLUTION_THRESH ((IkReal)1e-6) |
Functions | |
IKFAST_COMPILE_ASSERT (IKFAST_VERSION==61) | |
void | dgetrf_ (const int *m, const int *n, double *a, const int *lda, int *ipiv, int *info) |
void | zgetrf_ (const int *m, const int *n, std::complex< double > *a, const int *lda, int *ipiv, int *info) |
void | dgetri_ (const int *n, const double *a, const int *lda, int *ipiv, double *work, const int *lwork, int *info) |
void | dgesv_ (const int *n, const int *nrhs, double *a, const int *lda, int *ipiv, double *b, const int *ldb, int *info) |
void | dgetrs_ (const char *trans, const int *n, const int *nrhs, double *a, const int *lda, int *ipiv, double *b, const int *ldb, int *info) |
void | dgeev_ (const char *jobvl, const char *jobvr, const int *n, double *a, const int *lda, double *wr, double *wi, double *vl, const int *ldvl, double *vr, const int *ldvr, double *work, const int *lwork, int *info) |
float | IKabs (float f) |
double | IKabs (double f) |
float | IKsqr (float f) |
double | IKsqr (double f) |
float | IKlog (float f) |
double | IKlog (double f) |
float | IKasin (float f) |
double | IKasin (double f) |
float | IKfmod (float x, float y) |
double | IKfmod (double x, double y) |
float | IKacos (float f) |
double | IKacos (double f) |
float | IKsin (float f) |
double | IKsin (double f) |
float | IKcos (float f) |
double | IKcos (double f) |
float | IKtan (float f) |
double | IKtan (double f) |
float | IKsqrt (float f) |
double | IKsqrt (double f) |
float | IKatan2 (float fy, float fx) |
double | IKatan2 (double fy, double fx) |
float | IKsign (float f) |
double | IKsign (double f) |
IKFAST_API void | ComputeFk (const IkReal *j, IkReal *eetrans, IkReal *eerot) |
IKFAST_API int | GetNumFreeParameters () |
IKFAST_API int * | GetFreeParameters () |
IKFAST_API int | GetNumJoints () |
IKFAST_API int | GetIkRealSize () |
IKFAST_API int | GetIkType () |
IKFAST_API bool | ComputeIk (const IkReal *eetrans, const IkReal *eerot, const IkReal *pfree, IkSolutionListBase< IkReal > &solutions) |
IKFAST_API const char * | GetKinematicsHash () |
IKFAST_API const char * | GetIkFastVersion () |
#define __PRETTY_FUNCTION__ __func__ |
#define IK2PI ((IkReal)6.28318530717959) |
#define IKFAST_ALIGNED16 | ( | x | ) | x __attribute((aligned(16))) |
#define IKFAST_ASSERT | ( | b | ) |
#define IKFAST_ATAN2_MAGTHRESH ((IkReal)2e-6) |
#define IKFAST_COMPILE_ASSERT | ( | x | ) | extern int __dummy[(int)(x)] |
#define IKFAST_NO_MAIN |
autogenerated analytical inverse kinematics code from ikfast program part of OpenRAVE
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
ikfast version 61 generated on 2015-05-22 14:09:58.982511 To compile with gcc: gcc -lstdc++ ik.cpp To compile without any main function as a shared object (might need -llapack): gcc -fPIC -lstdc++ -DIKFAST_NO_MAIN -DIKFAST_CLIBRARY -shared -Wl,-soname,libik.so -o libik.so ik.cpp
#define IKFAST_SINCOS_THRESH ((IkReal)0.000001) |
#define IKFAST_SOLUTION_THRESH ((IkReal)1e-6) |
#define IKFAST_STRINGIZE | ( | s | ) | IKFAST_STRINGIZE2(s) |
#define IKPI ((IkReal)3.14159265358979) |
#define IKPI_2 ((IkReal)1.57079632679490) |
IKFAST_API void ComputeFk | ( | const IkReal * | j, |
IkReal * | eetrans, | ||
IkReal * | eerot | ||
) |
solves the forward kinematics equations.
pfree | is an array specifying the free joints of the chain. |
IKFAST_API bool ComputeIk | ( | const IkReal * | eetrans, |
const IkReal * | eerot, | ||
const IkReal * | pfree, | ||
IkSolutionListBase< IkReal > & | solutions | ||
) |
solves the inverse kinematics equations.
pfree | is an array specifying the free joints of the chain. |
void dgeev_ | ( | const char * | jobvl, |
const char * | jobvr, | ||
const int * | n, | ||
double * | a, | ||
const int * | lda, | ||
double * | wr, | ||
double * | wi, | ||
double * | vl, | ||
const int * | ldvl, | ||
double * | vr, | ||
const int * | ldvr, | ||
double * | work, | ||
const int * | lwork, | ||
int * | info | ||
) |
void dgesv_ | ( | const int * | n, |
const int * | nrhs, | ||
double * | a, | ||
const int * | lda, | ||
int * | ipiv, | ||
double * | b, | ||
const int * | ldb, | ||
int * | info | ||
) |
void dgetrf_ | ( | const int * | m, |
const int * | n, | ||
double * | a, | ||
const int * | lda, | ||
int * | ipiv, | ||
int * | info | ||
) |
void dgetri_ | ( | const int * | n, |
const double * | a, | ||
const int * | lda, | ||
int * | ipiv, | ||
double * | work, | ||
const int * | lwork, | ||
int * | info | ||
) |
void dgetrs_ | ( | const char * | trans, |
const int * | n, | ||
const int * | nrhs, | ||
double * | a, | ||
const int * | lda, | ||
int * | ipiv, | ||
double * | b, | ||
const int * | ldb, | ||
int * | info | ||
) |
IKFAST_API int * GetFreeParameters | ( | ) |
IKFAST_API const char * GetIkFastVersion | ( | ) |
IKFAST_API int GetIkRealSize | ( | ) |
IKFAST_API int GetIkType | ( | ) |
IKFAST_API const char * GetKinematicsHash | ( | ) |
IKFAST_API int GetNumFreeParameters | ( | ) |
IKFAST_API int GetNumJoints | ( | ) |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
IKFAST_COMPILE_ASSERT | ( | IKFAST_VERSION | = =61 | ) |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
void zgetrf_ | ( | const int * | m, |
const int * | n, | ||
std::complex< double > * | a, | ||
const int * | lda, | ||
int * | ipiv, | ||
int * | info | ||
) |