### Method

# Gsk Transform to_2d_components

since: 4.6

#### Declaration [src]

    void
    gsk_transform_to_2d_components (
      GskTransform* self,
      float* out_skew_x,
      float* out_skew_y,
      float* out_scale_x,
      float* out_scale_y,
      float* out_angle,
      float* out_dx,
      float* out_dy
    )

#### Description [src]

Converts a transform to 2D transformation factors.

To recreate an equivalent transform from the factors returned by this function, use

    gsk_transform_skew (
        gsk_transform_scale (
            gsk_transform_rotate (
                gsk_transform_translate (NULL, &GRAPHENE_POINT_INIT (dx, dy)),
                angle),
            scale_x, scale_y),
        skew_x, skew_y)

`self` must be a 2D transformation. If you are not sure, use

    `gsk_transform_get_category()` >= GSK_TRANSFORM_CATEGORY_2D

to check.

Available since: 4.6

#### Parameters

`out_skew_x`

  Type: `float*`

  Return location for the skew factor in the x direction.

  The argument will be set by the function.

`out_skew_y`

  Type: `float*`

  Return location for the skew factor in the y direction.

  The argument will be set by the function.

`out_scale_x`

  Type: `float*`

  Return location for the scale factor in the x direction.

  The argument will be set by the function.

`out_scale_y`

  Type: `float*`

  Return location for the scale factor in the y direction.

  The argument will be set by the function.

`out_angle`

  Type: `float*`

  Return location for the rotation angle.

  The argument will be set by the function.

`out_dx`

  Type: `float*`

  Return location for the translation in the x direction.

  The argument will be set by the function.

`out_dy`

  Type: `float*`

  Return location for the translation in the y direction.

  The argument will be set by the function.