gimp/devel-docs/libgimpmath/tmpl/gimpmatrix.sgml

269 lines
3.1 KiB
Plaintext

<!-- ##### SECTION Title ##### -->
GimpMatrix
<!-- ##### SECTION Short_Description ##### -->
Utilities to set up and manipulate 3x3 transformation matrices.
<!-- ##### SECTION Long_Description ##### -->
<para>
When doing image manipulation you will often need 3x3 transformation
matrices that define translation, rotation, scaling, shearing and
arbitrary perspective transformations using a 3x3 matrix. Here you'll
find a set of utility functions to set up those matrices and to perform
basic matrix manipulations and tests.
</para>
<para>
Each matrix class has a 2 dimensional gdouble coeff member. The
element for row r and column c of the matrix is coeff[r][c].
</para>
<!-- ##### SECTION See_Also ##### -->
<para>
#GimpVector2
</para>
<para>
#GimpVector3
</para>
<para>
#GimpVector4
</para>
<!-- ##### SECTION Stability_Level ##### -->
<!-- ##### STRUCT GimpMatrix2 ##### -->
<para>
A two by two matrix.
</para>
@coeff:
<!-- ##### STRUCT GimpMatrix3 ##### -->
<para>
A three by three matrix.
</para>
@coeff:
<!-- ##### STRUCT GimpMatrix4 ##### -->
<para>
A four by four matrix.
</para>
@coeff:
<!-- ##### FUNCTION gimp_matrix2_identity ##### -->
<para>
</para>
@matrix:
<!-- ##### FUNCTION gimp_matrix2_mult ##### -->
<para>
</para>
@matrix1:
@matrix2:
<!-- ##### FUNCTION gimp_matrix3_identity ##### -->
<para>
</para>
@matrix:
<!-- ##### FUNCTION gimp_matrix3_mult ##### -->
<para>
</para>
@matrix1:
@matrix2:
<!-- ##### FUNCTION gimp_matrix3_translate ##### -->
<para>
</para>
@matrix:
@x:
@y:
<!-- ##### FUNCTION gimp_matrix3_scale ##### -->
<para>
</para>
@matrix:
@x:
@y:
<!-- ##### FUNCTION gimp_matrix3_rotate ##### -->
<para>
</para>
@matrix:
@theta:
<!-- ##### FUNCTION gimp_matrix3_xshear ##### -->
<para>
</para>
@matrix:
@amount:
<!-- ##### FUNCTION gimp_matrix3_yshear ##### -->
<para>
</para>
@matrix:
@amount:
<!-- ##### FUNCTION gimp_matrix3_affine ##### -->
<para>
</para>
@matrix:
@a:
@b:
@c:
@d:
@e:
@f:
<!-- ##### FUNCTION gimp_matrix3_transform_point ##### -->
<para>
</para>
@matrix:
@x:
@y:
@newx:
@newy:
<!-- ##### FUNCTION gimp_matrix3_determinant ##### -->
<para>
</para>
@matrix:
@Returns:
<!-- ##### FUNCTION gimp_matrix3_invert ##### -->
<para>
</para>
@matrix:
<!-- ##### FUNCTION gimp_matrix3_is_identity ##### -->
<para>
</para>
@matrix:
@Returns:
<!-- ##### FUNCTION gimp_matrix3_is_diagonal ##### -->
<para>
</para>
@matrix:
@Returns:
<!-- ##### FUNCTION gimp_matrix3_is_affine ##### -->
<para>
</para>
@matrix:
@Returns:
<!-- ##### FUNCTION gimp_matrix3_is_simple ##### -->
<para>
</para>
@matrix:
@Returns:
<!-- ##### FUNCTION gimp_matrix4_to_deg ##### -->
<para>
</para>
@matrix:
@a:
@b:
@c:
<!-- ##### MACRO GIMP_TYPE_MATRIX2 ##### -->
<para>
</para>
<!-- ##### MACRO GIMP_TYPE_PARAM_MATRIX2 ##### -->
<para>
</para>
<!-- ##### MACRO GIMP_IS_PARAM_SPEC_MATRIX2 ##### -->
<para>
</para>
@pspec:
<!-- ##### FUNCTION gimp_param_spec_matrix2 ##### -->
<para>
</para>
@name:
@nick:
@blurb:
@default_value:
@flags:
@Returns:
<!-- ##### MACRO GIMP_VALUE_HOLDS_MATRIX2 ##### -->
<para>
</para>
@value: