Package: gsk
GEnum gsk:transform-category
Declaration(gobject:define-genum "GskTransformCategory" transform-category (:export t :type-initializer "gsk_transform_category_get_type") :unknown :any :3d :2d :2d-affine :2d-translate :identity) Values
Details
The categories of matrices relevant for GSK and GTK.
Note that the enumeration values are ordered in a way that any category
includes matrices of all later categories. So if you want to for example
check if a matrix is a 2D matrix, the category value of the matrix is greater or equal the :2d value. 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 the result has the category category(C) = (MIN (category(A), category(B)). Examples(defun category-value (category) (cffi:convert-to-foreign category 'gsk:transform-category))you can check if a matrix with category is a 2D matrix with (>= (category-value category) (category-value :2d)) | See also |
2024-4-21