#include <opw_kinematics/opw_macros.h>
#include <gtest/gtest.h>
#include <cstdlib>
#include <array>
#include <cmath>
#include <iomanip>
#include <iostream>
#include <vector>
#include "ikfast.h"
#include "opw_kinematics/opw_kinematics.h"
#include "opw_kinematics/opw_utilities.h"
#include "opw_kinematics/opw_parameters_examples.h"
Go to the source code of this file.
Classes | |
struct | PoseGenerator |
Typedefs | |
using | Solutions = opw_kinematics::Solutions< double > |
using | Transform = opw_kinematics::Transform< double > |
Functions | |
void | compare (ikfast::IkSolutionList< double > &ikf, Solutions &opw) |
std::size_t | countValidSolutions (const Solutions &opw) |
bool | findSolInSet (const std::array< double, 6 > &s, const Solutions &opw) |
int | main (int argc, char **argv) |
static double | normalize_angle (double angle) |
normalize More... | |
static double | normalize_angle_positive (double angle) |
normalize_angle_positive More... | |
void | printResults (const Solutions &sols) |
static double | shortest_angular_distance (double from, double to) |
shortest_angular_distance More... | |
void | solveIKFast (const Transform &p, ikfast::IkSolutionList< double > &sols) |
Solutions | solveOPW (const opw_kinematics::Parameters< double > ¶m, const Transform &p) |
TEST (ikfast_to_opw, similar_solutions) | |
using Solutions = opw_kinematics::Solutions<double> |
Definition at line 18 of file abb2400_ikfast_tests.cpp.
using Transform = opw_kinematics::Transform<double> |
Definition at line 17 of file abb2400_ikfast_tests.cpp.
void compare | ( | ikfast::IkSolutionList< double > & | ikf, |
Solutions & | opw | ||
) |
Definition at line 152 of file abb2400_ikfast_tests.cpp.
std::size_t countValidSolutions | ( | const Solutions & | opw | ) |
Definition at line 67 of file abb2400_ikfast_tests.cpp.
bool findSolInSet | ( | const std::array< double, 6 > & | s, |
const Solutions & | opw | ||
) |
Definition at line 118 of file abb2400_ikfast_tests.cpp.
int main | ( | int | argc, |
char ** | argv | ||
) |
Definition at line 205 of file abb2400_ikfast_tests.cpp.
|
inlinestatic |
normalize
Normalizes the angle to be -M_PI circle to +M_PI circle It takes and returns radians.
Definition at line 96 of file abb2400_ikfast_tests.cpp.
|
inlinestatic |
normalize_angle_positive
Normalizes the angle to be 0 to 2*M_PI It takes and returns radians.
Definition at line 84 of file abb2400_ikfast_tests.cpp.
void printResults | ( | const Solutions & | sols | ) |
Definition at line 141 of file abb2400_ikfast_tests.cpp.
|
inlinestatic |
shortest_angular_distance
\function Given 2 angles, this returns the shortest angular difference. The inputs and ouputs are of course radians.
The result would always be -pi <= result <= pi. Adding the result to "from" will always get you an equivelent angle to "to".
Definition at line 116 of file abb2400_ikfast_tests.cpp.
void solveIKFast | ( | const Transform & | p, |
ikfast::IkSolutionList< double > & | sols | ||
) |
Definition at line 41 of file abb2400_ikfast_tests.cpp.
Solutions solveOPW | ( | const opw_kinematics::Parameters< double > & | param, |
const Transform & | p | ||
) |
Definition at line 62 of file abb2400_ikfast_tests.cpp.
TEST | ( | ikfast_to_opw | , |
similar_solutions | |||
) |
Definition at line 179 of file abb2400_ikfast_tests.cpp.