SLERP interpolation

1. Description

SLERP means Spherical Linear Interpolation and represents a very popular technique to interpolate between two 3D rotations in a mathematically sounded way while producing visually smooth paths (see article at Wikipedia).

This screenshot represents an animation of a 3D pose between two given poses (see the example: samples/slerp_demo):

Screenshot-Example of SLERP animation


2. C++ Implementation

SLERP is implemented in MRPT in the function mrpt::math::slerp, which is overloaded to support quaternions (pure rotations), but also complete 3D translations+rotations (types CPose3D and CPose3DQuat).

This is the current implementation:

3. References