Classes | Macros | Functions
right_arm_ik.cpp File Reference
#include "ikfast.h"
#include <cmath>
#include <vector>
#include <limits>
#include <algorithm>
#include <complex>
#include <stdexcept>
#include <sstream>
#include <iostream>
#include <stdio.h>
#include <stdlib.h>
Include dependency graph for right_arm_ik.cpp:

Go to the source code of this file.

Classes

class  IKSolver
 

Macros

#define __PRETTY_FUNCTION__   __func__
 
#define IK2PI   ((IkReal)6.28318530717959)
 
#define IKFAST_ALIGNED16(x)   x __attribute((aligned(16)))
 
#define IKFAST_ASSERT(b)   { if( !(b) ) { std::stringstream ss; ss << "ikfast exception: " << __FILE__ << ":" << __LINE__ << ": " <<__PRETTY_FUNCTION__ << ": Assertion '" << #b << "' failed"; throw std::runtime_error(ss.str()); } }
 
#define IKFAST_ATAN2_MAGTHRESH   ((IkReal)2e-6)
 
#define IKFAST_COMPILE_ASSERT(x)   extern int __dummy[(int)x]
 
#define IKFAST_HAS_LIBRARY
 
#define IKFAST_SINCOS_THRESH   ((IkReal)0.000001)
 
#define IKFAST_SOLUTION_THRESH   ((IkReal)1e-6)
 
#define IKFAST_STRINGIZE(s)   IKFAST_STRINGIZE2(s)
 
#define IKFAST_STRINGIZE2(s)   #s
 
#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)
 
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 ()
 
float IKabs (float f)
 
double IKabs (double f)
 
float IKacos (float f)
 
double IKacos (double f)
 
float IKasin (float f)
 
double IKasin (double f)
 
float IKatan2 (float fy, float fx)
 
double IKatan2 (double fy, double fx)
 
float IKcos (float f)
 
double IKcos (double f)
 
 IKFAST_COMPILE_ASSERT (IKFAST_VERSION==61)
 
float IKfmod (float x, float y)
 
double IKfmod (double x, double y)
 
float IKlog (float f)
 
double IKlog (double f)
 
float IKsign (float f)
 
double IKsign (double f)
 
float IKsin (float f)
 
double IKsin (double f)
 
float IKsqr (float f)
 
double IKsqr (double f)
 
float IKsqrt (float f)
 
double IKsqrt (double f)
 
float IKtan (float f)
 
double IKtan (double f)
 
int main (int argc, char **argv)
 
void zgetrf_ (const int *m, const int *n, std::complex< double > *a, const int *lda, int *ipiv, int *info)
 

Macro Definition Documentation

#define __PRETTY_FUNCTION__   __func__

Definition at line 49 of file right_arm_ik.cpp.

#define IK2PI   ((IkReal)6.28318530717959)

Definition at line 62 of file right_arm_ik.cpp.

#define IKFAST_ALIGNED16 (   x)    x __attribute((aligned(16)))

Definition at line 59 of file right_arm_ik.cpp.

#define IKFAST_ASSERT (   b)    { if( !(b) ) { std::stringstream ss; ss << "ikfast exception: " << __FILE__ << ":" << __LINE__ << ": " <<__PRETTY_FUNCTION__ << ": Assertion '" << #b << "' failed"; throw std::runtime_error(ss.str()); } }

Definition at line 52 of file right_arm_ik.cpp.

#define IKFAST_ATAN2_MAGTHRESH   ((IkReal)2e-6)

Definition at line 104 of file right_arm_ik.cpp.

#define IKFAST_COMPILE_ASSERT (   x)    extern int __dummy[(int)x]

Definition at line 25 of file right_arm_ik.cpp.

#define IKFAST_HAS_LIBRARY

autogenerated analytical inverse kinematics code from ikfast program part of OpenRAVE

Author
Rosen Diankov

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-08-19 09:49:45.541919 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 20 of file right_arm_ik.cpp.

#define IKFAST_SINCOS_THRESH   ((IkReal)0.000001)

Definition at line 99 of file right_arm_ik.cpp.

#define IKFAST_SOLUTION_THRESH   ((IkReal)1e-6)

Definition at line 109 of file right_arm_ik.cpp.

#define IKFAST_STRINGIZE (   s)    IKFAST_STRINGIZE2(s)

Definition at line 35 of file right_arm_ik.cpp.

#define IKFAST_STRINGIZE2 (   s)    #s

Definition at line 34 of file right_arm_ik.cpp.

#define IKPI   ((IkReal)3.14159265358979)

Definition at line 63 of file right_arm_ik.cpp.

#define IKPI_2   ((IkReal)1.57079632679490)

Definition at line 64 of file right_arm_ik.cpp.

Function Documentation

IKFAST_API void ComputeFk ( const IkReal *  j,
IkReal *  eetrans,
IkReal *  eerot 
)

solves the forward kinematics equations.

Parameters
pfreeis an array specifying the free joints of the chain.

Definition at line 210 of file right_arm_ik.cpp.

IKFAST_API bool ComputeIk ( const IkReal *  eetrans,
const IkReal *  eerot,
const IkReal *  pfree,
IkSolutionListBase< IkReal > &  solutions 
)

solves the inverse kinematics equations.

Parameters
pfreeis an array specifying the free joints of the chain.

Definition at line 17161 of file right_arm_ik.cpp.

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 307 of file right_arm_ik.cpp.

IKFAST_API const char* GetIkFastVersion ( )

Definition at line 17168 of file right_arm_ik.cpp.

IKFAST_API int GetIkRealSize ( )

Definition at line 310 of file right_arm_ik.cpp.

IKFAST_API int GetIkType ( )

Definition at line 312 of file right_arm_ik.cpp.

IKFAST_API const char* GetKinematicsHash ( )

Definition at line 17166 of file right_arm_ik.cpp.

IKFAST_API int GetNumFreeParameters ( )

Definition at line 306 of file right_arm_ik.cpp.

IKFAST_API int GetNumJoints ( )

Definition at line 308 of file right_arm_ik.cpp.

float IKabs ( float  f)
inline

Definition at line 88 of file right_arm_ik.cpp.

double IKabs ( double  f)
inline

Definition at line 89 of file right_arm_ik.cpp.

float IKacos ( float  f)
inline

Definition at line 145 of file right_arm_ik.cpp.

double IKacos ( double  f)
inline

Definition at line 152 of file right_arm_ik.cpp.

float IKasin ( float  f)
inline

Definition at line 112 of file right_arm_ik.cpp.

double IKasin ( double  f)
inline

Definition at line 119 of file right_arm_ik.cpp.

float IKatan2 ( float  fy,
float  fx 
)
inline

Definition at line 167 of file right_arm_ik.cpp.

double IKatan2 ( double  fy,
double  fx 
)
inline

Definition at line 177 of file right_arm_ik.cpp.

float IKcos ( float  f)
inline

Definition at line 161 of file right_arm_ik.cpp.

double IKcos ( double  f)
inline

Definition at line 162 of file right_arm_ik.cpp.

IKFAST_COMPILE_ASSERT ( IKFAST_VERSION  = =61)
float IKfmod ( float  x,
float  y 
)
inline

Definition at line 128 of file right_arm_ik.cpp.

double IKfmod ( double  x,
double  y 
)
inline

Definition at line 137 of file right_arm_ik.cpp.

float IKlog ( float  f)
inline

Definition at line 94 of file right_arm_ik.cpp.

double IKlog ( double  f)
inline

Definition at line 95 of file right_arm_ik.cpp.

float IKsign ( float  f)
inline

Definition at line 188 of file right_arm_ik.cpp.

double IKsign ( double  f)
inline

Definition at line 198 of file right_arm_ik.cpp.

float IKsin ( float  f)
inline

Definition at line 159 of file right_arm_ik.cpp.

double IKsin ( double  f)
inline

Definition at line 160 of file right_arm_ik.cpp.

float IKsqr ( float  f)
inline

Definition at line 91 of file right_arm_ik.cpp.

double IKsqr ( double  f)
inline

Definition at line 92 of file right_arm_ik.cpp.

float IKsqrt ( float  f)
inline

Definition at line 165 of file right_arm_ik.cpp.

double IKsqrt ( double  f)
inline

Definition at line 166 of file right_arm_ik.cpp.

float IKtan ( float  f)
inline

Definition at line 163 of file right_arm_ik.cpp.

double IKtan ( double  f)
inline

Definition at line 164 of file right_arm_ik.cpp.

int main ( int  argc,
char **  argv 
)

Definition at line 17180 of file right_arm_ik.cpp.

void zgetrf_ ( const int *  m,
const int *  n,
std::complex< double > *  a,
const int *  lda,
int *  ipiv,
int *  info 
)


nextage_ik_plugin
Author(s): TORK Developer 534o <534o@opensouce-robotics.tokyo.jp>
autogenerated on Wed Jun 17 2020 04:14:37