24 #include "../Util/OrientationConversion.h"
27 #include "../exceptions/InterpolationNotDefinedException.h"
28 #include "../exceptions/NoInterpolationPossibleException.h"
40 for (
unsigned int i = 0; i < this->controlPoints.size() - 1; i++)
42 PoseBasePtr current = this->controlPoints.at(i);
43 PoseBasePtr next = this->controlPoints.at(i + 1);
44 int deltaX = next->position->x - current->position->x;
45 int deltaY = next->position->y - current->position->y;
46 int deltaZ = next->position->z - current->position->z;
47 connectingVector.push_back(*
new Eigen::Vector3f(deltaX, deltaY, deltaZ));
54 if (time < 0 || time > 1)
67 Eigen::Vector3f start = Eigen::Vector3f(current->position->x, current->position->y, current->position->z);
68 Eigen::Vector3f transition = connectingVector[segment];
69 transition *= segmentRelativeTime;
70 Eigen::Vector3f position = start + transition;