#include <tesseract_common/macros.h>
#include <tesseract_kinematics/ikfast/external/ikfast.h>
#include <cmath>
#include <vector>
#include <limits>
#include <algorithm>
#include <complex>
#include <stdexcept>
#include <sstream>
#include <iostream>
Go to the source code of this file.
Classes | |
struct | CheckValue< T > |
class | IKSolver |
Macros | |
#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)1e-7) |
#define | IKFAST_COMPILE_ASSERT(x) extern int __dummy[(int)x] |
#define | IKFAST_EVALCOND_THRESH ((IkReal)0.00001) |
#define | IKFAST_NO_MAIN |
#define | IKFAST_SINCOS_THRESH ((IkReal)1e-7) |
#define | IKFAST_SOLUTION_THRESH ((IkReal)1e-6) |
#define | IKPI ((IkReal)3.14159265358979) |
#define | IKPI_2 ((IkReal)1.57079632679490) |
Functions | |
IKFAST_API void | ComputeFk (const IkReal *j, IkReal *eetrans, IkReal *eerot) |
IKFAST_API bool | ComputeIk (const IkReal *eetrans, const IkReal *eerot, const IkReal *pfree, IkSolutionListBase< IkReal > &solutions) |
IKFAST_API bool | ComputeIk2 (const IkReal *eetrans, const IkReal *eerot, const IkReal *pfree, IkSolutionListBase< IkReal > &solutions, void *pOpenRAVEManip) |
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 () |
const IKFAST_API char * | GetIkFastVersion () |
IKFAST_API int | GetIkRealSize () |
IKFAST_API int | GetIkType () |
const IKFAST_API char * | GetKinematicsHash () |
IKFAST_API int | GetNumFreeParameters () |
IKFAST_API int | GetNumJoints () |
double | IKabs (double f) |
float | IKabs (float f) |
double | IKacos (double f) |
float | IKacos (float f) |
double | IKasin (double f) |
float | IKasin (float f) |
double | IKatan2 (double fy, double fx) |
float | IKatan2 (float fy, float fx) |
double | IKatan2Simple (double fy, double fx) |
float | IKatan2Simple (float fy, float fx) |
template<typename T > | |
CheckValue< T > | IKatan2WithCheck (T fy, T fx, T epsilon) |
double | IKcos (double f) |
float | IKcos (float f) |
IKFAST_COMPILE_ASSERT (IKFAST_VERSION==61) | |
double | IKfmod (double x, double y) |
float | IKfmod (float x, float y) |
double | IKlog (double f) |
float | IKlog (float f) |
template<typename T > | |
CheckValue< T > | IKPowWithIntegerCheck (T f, int n) |
double | IKsign (double f) |
float | IKsign (float f) |
double | IKsin (double f) |
float | IKsin (float f) |
double | IKsqr (double f) |
float | IKsqr (float f) |
double | IKsqrt (double f) |
float | IKsqrt (float f) |
double | IKtan (double f) |
float | IKtan (float f) |
void | zgetrf_ (const int *m, const int *n, std::complex< double > *a, const int *lda, int *ipiv, int *info) |
#define __PRETTY_FUNCTION__ __func__ |
Definition at line 53 of file iiwa7_ikfast_solver.hpp.
#define IK2PI ((IkReal)6.28318530717959) |
Definition at line 75 of file iiwa7_ikfast_solver.hpp.
#define IKFAST_ALIGNED16 | ( | x | ) | x __attribute((aligned(16))) |
Definition at line 72 of file iiwa7_ikfast_solver.hpp.
#define IKFAST_ASSERT | ( | b | ) |
Definition at line 56 of file iiwa7_ikfast_solver.hpp.
#define IKFAST_ATAN2_MAGTHRESH ((IkReal)1e-7) |
Definition at line 146 of file iiwa7_ikfast_solver.hpp.
#define IKFAST_COMPILE_ASSERT | ( | x | ) | extern int __dummy[(int)x] |
Definition at line 32 of file iiwa7_ikfast_solver.hpp.
#define IKFAST_EVALCOND_THRESH ((IkReal)0.00001) |
Definition at line 157 of file iiwa7_ikfast_solver.hpp.
#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 0x1000004a generated on 2019-04-02 01:57:40.892043 Generated using solver transform6d 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
Definition at line 26 of file iiwa7_ikfast_solver.hpp.
#define IKFAST_SINCOS_THRESH ((IkReal)1e-7) |
Definition at line 140 of file iiwa7_ikfast_solver.hpp.
#define IKFAST_SOLUTION_THRESH ((IkReal)1e-6) |
Definition at line 151 of file iiwa7_ikfast_solver.hpp.
#define IKPI ((IkReal)3.14159265358979) |
Definition at line 76 of file iiwa7_ikfast_solver.hpp.
#define IKPI_2 ((IkReal)1.57079632679490) |
Definition at line 77 of file iiwa7_ikfast_solver.hpp.
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. |
Definition at line 380 of file iiwa7_ikfast_solver.hpp.
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. |
Definition at line 21634 of file iiwa7_ikfast_solver.hpp.
IKFAST_API bool ComputeIk2 | ( | const IkReal * | eetrans, |
const IkReal * | eerot, | ||
const IkReal * | pfree, | ||
IkSolutionListBase< IkReal > & | solutions, | ||
void * | pOpenRAVEManip | ||
) |
Definition at line 21640 of file iiwa7_ikfast_solver.hpp.
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 | ( | ) |
Definition at line 475 of file iiwa7_ikfast_solver.hpp.
const IKFAST_API char* GetIkFastVersion | ( | ) |
Definition at line 21652 of file iiwa7_ikfast_solver.hpp.
IKFAST_API int GetIkRealSize | ( | ) |
Definition at line 482 of file iiwa7_ikfast_solver.hpp.
IKFAST_API int GetIkType | ( | ) |
Definition at line 484 of file iiwa7_ikfast_solver.hpp.
const IKFAST_API char* GetKinematicsHash | ( | ) |
Definition at line 21650 of file iiwa7_ikfast_solver.hpp.
IKFAST_API int GetNumFreeParameters | ( | ) |
Definition at line 474 of file iiwa7_ikfast_solver.hpp.
IKFAST_API int GetNumJoints | ( | ) |
Definition at line 480 of file iiwa7_ikfast_solver.hpp.
|
inline |
Definition at line 130 of file iiwa7_ikfast_solver.hpp.
|
inline |
Definition at line 129 of file iiwa7_ikfast_solver.hpp.
|
inline |
Definition at line 211 of file iiwa7_ikfast_solver.hpp.
|
inline |
Definition at line 201 of file iiwa7_ikfast_solver.hpp.
|
inline |
Definition at line 170 of file iiwa7_ikfast_solver.hpp.
|
inline |
Definition at line 160 of file iiwa7_ikfast_solver.hpp.
|
inline |
Definition at line 254 of file iiwa7_ikfast_solver.hpp.
|
inline |
Definition at line 240 of file iiwa7_ikfast_solver.hpp.
|
inline |
Definition at line 253 of file iiwa7_ikfast_solver.hpp.
|
inline |
Definition at line 239 of file iiwa7_ikfast_solver.hpp.
|
inline |
Definition at line 276 of file iiwa7_ikfast_solver.hpp.
|
inline |
Definition at line 224 of file iiwa7_ikfast_solver.hpp.
|
inline |
Definition at line 223 of file iiwa7_ikfast_solver.hpp.
IKFAST_COMPILE_ASSERT | ( | IKFAST_VERSION | = =61 | ) |
|
inline |
Definition at line 192 of file iiwa7_ikfast_solver.hpp.
|
inline |
Definition at line 182 of file iiwa7_ikfast_solver.hpp.
|
inline |
Definition at line 136 of file iiwa7_ikfast_solver.hpp.
|
inline |
Definition at line 135 of file iiwa7_ikfast_solver.hpp.
|
inline |
Definition at line 319 of file iiwa7_ikfast_solver.hpp.
|
inline |
Definition at line 305 of file iiwa7_ikfast_solver.hpp.
|
inline |
Definition at line 292 of file iiwa7_ikfast_solver.hpp.
|
inline |
Definition at line 222 of file iiwa7_ikfast_solver.hpp.
|
inline |
Definition at line 221 of file iiwa7_ikfast_solver.hpp.
|
inline |
Definition at line 133 of file iiwa7_ikfast_solver.hpp.
|
inline |
Definition at line 132 of file iiwa7_ikfast_solver.hpp.
|
inline |
Definition at line 233 of file iiwa7_ikfast_solver.hpp.
|
inline |
Definition at line 227 of file iiwa7_ikfast_solver.hpp.
|
inline |
Definition at line 226 of file iiwa7_ikfast_solver.hpp.
|
inline |
Definition at line 225 of file iiwa7_ikfast_solver.hpp.
void zgetrf_ | ( | const int * | m, |
const int * | n, | ||
std::complex< double > * | a, | ||
const int * | lda, | ||
int * | ipiv, | ||
int * | info | ||
) |