Enumeration

GskTransformCategory

Declaration

enum Gsk.TransformCategory

Description [src]

The categories of matrices relevant for GSK and GTK.

Note that any category includes matrices of all later categories. So if you want to for example check if a matrix is a 2D matrix, category >= GSK_TRANSFORM_CATEGORY_2D is the way to do this.

Also keep in mind that rounding errors may cause matrices to not conform to their categories. Otherwise, matrix operations done via multiplication will not worsen categories. So for the matrix multiplication C = A * B, category(C) = MIN (category(A), category(B)).

Members

GSK_TRANSFORM_CATEGORY_UNKNOWN

The category of the matrix has not been determined.

  • Value: 0
  • Available since: 4.0
GSK_TRANSFORM_CATEGORY_ANY

Analyzing the matrix concluded that it does not fit in any other category.

  • Value: 1
  • Available since: 4.0
GSK_TRANSFORM_CATEGORY_3D

The matrix is a 3D matrix. This means that the w column (the last column) has the values (0, 0, 0, 1).

  • Value: 2
  • Available since: 4.0
GSK_TRANSFORM_CATEGORY_2D

The matrix is a 2D matrix. This is equivalent to graphene_matrix_is_2d() returning TRUE. In particular, this means that Cairo can deal with the matrix.

  • Value: 3
  • Available since: 4.0
GSK_TRANSFORM_CATEGORY_2D_AFFINE

The matrix is a combination of 2D scale and 2D translation operations. In particular, this means that any rectangle can be transformed exactly using this matrix.

  • Value: 4
  • Available since: 4.0
GSK_TRANSFORM_CATEGORY_2D_TRANSLATE

The matrix is a 2D translation.

  • Value: 5
  • Available since: 4.0
GSK_TRANSFORM_CATEGORY_IDENTITY

The matrix is the identity matrix.

  • Value: 6
  • Available since: 4.0