Description

Rotate the object in 3D using a unit quaternion, using absolute coordinates.

This is similar to Efl.Gfx.Map.rotate_3d but uses a unit quaternion (also known as versor) rather than a direct angle-based rotation around a center point. Use this to avoid gimbal locks.

The coordinates of the center point are given in absolute canvas coordinates. See also Efl.Gfx.Map.rotate_quat for a pivot-based 3D rotation.

Since 1.20

Signature

rotate_quat_absolute {
    params {
        @in qx: double;
        @in qy: double;
        @in qz: double;
        @in qw: double;
        @in cx: double;
        @in cy: double;
        @in cz: double;
    }
}

C signature

void efl_gfx_map_rotate_quat_absolute(Eo *obj, double qx, double qy, double qz, double qw, double cx, double cy, double cz);

Parameters

  • qx (in) - The x component of the imaginary part of the quaternion.
  • qy (in) - The y component of the imaginary part of the quaternion.
  • qz (in) - The z component of the imaginary part of the quaternion.
  • qw (in) - The w component of the real part of the quaternion.
  • cx (in) - X absolute coordinate in pixels of the center point.
  • cy (in) - y absolute coordinate in pixels of the center point.
  • cz (in) - Z absolute coordinate of the center point.

Implemented by

  • Efl.Gfx.Map.rotate_quat_absolute