TransformCategory
- class TransformCategory
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))
.
Fields
- class TransformCategory
- 2D
The matrix is a 2D matrix. This is equivalent to
is_2d()
returningTrue
. In particular, this means that Cairo can deal with the matrix.
- 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.
- 2D_TRANSLATE
The matrix is a 2D translation.
- 3D
The matrix is a 3D matrix. This means that the w column (the last column) has the values (0, 0, 0, 1).
- ANY
Analyzing the matrix concluded that it does not fit in any other category.
- IDENTITY
The matrix is the identity matrix.
- UNKNOWN
The category of the matrix has not been determined.