]> git.wh0rd.org Git - 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 @@