Description

Rotate the object around 3 axes in 3D.

This will rotate in 3D, not just around the "Z" axis as is the case with Efl.Gfx.Map.rotate. You can rotate around the X, Y and Z axes. The Z axis points "into" the screen with low values at the screen and higher values further away. The X axis runs from left to right on the screen and the Y axis from top to bottom.

As with Efl.Gfx.Map.rotate, you provide a pivot and center point to rotate around (in 3D). The Z coordinate of this center point is an absolute value, and not a relative one like X and Y, as objects are flat in a 2D space.

Since 1.20

Signature

rotate_3d {
    params {
        @in dx: double;
        @in dy: double;
        @in dz: double;
        @in pivot: free(const(Efl.Gfx), efl_del);
        @in cx: double;
        @in cy: double;
        @in cz: double;
    }
}

C signature

void efl_gfx_map_rotate_3d(Eo *obj, double dx, double dy, double dz, const Efl_Gfx *pivot, double cx, double cy, double cz);

Parameters

  • dx (in) - Rotation in degrees around X axis (0 to 360).
  • dy (in) - Rotation in degrees around Y axis (0 to 360).
  • dz (in) - Rotation in degrees around Z axis (0 to 360).
  • pivot (in) - A pivot object for the center point, can be null.
  • cx (in) - X relative coordinate of the center point.
  • cy (in) - y relative coordinate of the center point.
  • cz (in) - Z absolute coordinate of the center point.

Implemented by

  • Efl.Gfx.Map.rotate_3d