]> git.wh0rd.org - fontconfig.git/blob - doc/fcmatrix.fncs
Rework documentation to build man pages for each function
[fontconfig.git] / doc / fcmatrix.fncs
1 @FUNC@ FcMatrixInit
2 @PURPOSE@ initialize an FcMatrix structure
3 @TYPE1@ FcMatrix *
4 @ARG1@ matrix
5 @DESC@
6 <function>FcMatrixInit</function> initializes <parameter>matrix</parameter>
7 to the identity matrix.
8 @@
9
10 @FUNC@ FcMatrixCopy
11 @PURPOSE@ Copy a matrix
12 @TYPE1@ const FcMatrix *
13 @ARG1@ matrix
14 @DESC@
15 <function>FcMatrixCopy</function> allocates a new FcMatrix
16 and copies <parameter>mat</parameter> into it.
17 @@
18
19 @FUNC@ FcMatrixEqual
20 @PURPOSE@ Compare two matrices
21 @TYPE1@ const FcMatrix *
22 @ARG1@ matrix1
23 @TYPE2@ const FcMatrix *
24 @ARG2@ matrix2
25 @DESC@
26 <function>FcMatrixEqual</function> compares <parameter>matrix1</parameter>
27 and <parameter>matrix2</parameter> returning FcTrue when they are equal and
28 FcFalse when they are not.
29 @@
30
31 @FUNC@ FcMatrixMultiply
32 @PURPOSE@ Multiply matrices
33 @TYPE1@ FcMatrix *
34 @ARG1@ result
35 @TYPE2@ const FcMatrix *
36 @ARG2@ matrix1
37 @TYPE3@ const FcMatrix *
38 @ARG3@ matrix2
39 @DESC@
40 <function>FcMatrixMultiply</function> multiplies
41 <parameter>matrix1</parameter> and <parameter>matrix2</parameter> storing
42 the result in <parameter>result</parameter>.
43 @@
44
45 @FUNC@ FcMatrixRotate
46 @PURPOSE@ Rotate a matrix
47 @TYPE1@ FcMatrix *
48 @ARG1@ matrix
49 @TYPE2@ double
50 @ARG2@ cos
51 @TYPE3@ double
52 @ARG3@ sin
53 @DESC@
54 <function>FcMatrixRotate</function> rotates <parameter>matrix</parameter>
55 by the angle who's sine is <parameter>sin</parameter> and cosine is
56 <parameter>cos</parameter>. This is done by multiplying by the
57 matrix:
58 <programlisting>
59 cos -sin
60 sin cos
61 </programlisting>
62 @@
63
64 @FUNC@ FcMatrixScale
65 @PURPOSE@ Scale a matrix
66 @TYPE1@ FcMatrix *
67 @ARG1@ matrix
68 @TYPE2@ double
69 @ARG2@ sx
70 @TYPE3@ double
71 @ARG3@ dy
72 @DESC@
73 <function>FcMatrixScale</function> multiplies <parameter>matrix</parameter>
74 x values by <parameter>sx</parameter> and y values by
75 <parameter>sy</parameter>. This is done by multiplying by
76 the matrix:
77 <programlisting>
78 sx 0
79 0 sy
80 </programlisting>
81 @@
82
83 @FUNC@ FcMatrixShear
84 @PURPOSE@ Shear a matrix
85 @TYPE1@ FcMatrix *
86 @ARG1@ matrix
87 @TYPE2@ double
88 @ARG2@ sh
89 @TYPE3@ double
90 @ARG3@ sv
91 @DESC@
92 <function>FcMatrixShare</function> shears <parameter>matrix</parameter>
93 horizontally by <parameter>sh</parameter> and vertically by
94 <parameter>sv</parameter>. This is done by multiplying by
95 the matrix:
96 <programlisting>
97 1 sh
98 sv 1
99 </programlisting>
100 @@