apply_quat(3) Multiplies a point by a quaternion. Allegro game programming library.


#include <allegro.h>

void apply_quat(const QUAT *q, float x, y, z, *xout, *yout, *zout);


Multiplies the point (x, y, z) by the quaternion q, storing the result in (*xout, *yout, *zout). This is quite a bit slower than apply_matrix_f(), so only use it to translate a few points. If you have many points, it is much more efficient to call quat_to_matrix() and then use apply_matrix_f().