36const QuaternionBasePtr
39 if (time < 0 || time > 1)
44 double segmentRelativeTime =
64 for (
unsigned int i = 0; i < cp.size(); i++)
75 org->orientation->qw, org->orientation->qx, org->orientation->qy, org->orientation->qz));
76 Vector3BasePtr tempPos =
77 Vector3BasePtr(
new Vector3(org->position->x, org->position->y, org->position->z));
78 return *
new PoseBasePtr(
new Pose(tempPos, tempOri));
virtual const QuaternionBasePtr calculateOrientationAt(double time)
calculateOrientationAt calculates the rotation/orientation of the pose at a certain time
int getNumberOfControlPoints()
getNumberOfControlPoints returns number of controlPoints
static PoseBasePtr deepCopy(PoseBasePtr org)
deepCopy creates a real, independent copy of a PoseBasePtr
void init(const std::vector< PoseBasePtr > cp)
init convinience method to construct the basic parts of the interpolation (copying all controlPoints)
std::vector< PoseBasePtr > controlPoints
controlPoints the controlPoints that are interpolated between
static Eigen::Quaternion< double > toEigen(QuaternionBasePtr q)
static QuaternionBasePtr toArmarX(Eigen::Quaternion< double > q)
This file offers overloads of toIce() and fromIce() functions for STL container types.
IceInternal::Handle< Quaternion > QuaternionPtr