aboutsummaryrefslogtreecommitdiff
path: root/fontconfig/doc/fcmatrix.fncs
diff options
context:
space:
mode:
authormarha <marha@users.sourceforge.net>2011-01-19 10:14:56 +0000
committermarha <marha@users.sourceforge.net>2011-01-19 10:14:56 +0000
commite75ba771a1b0e80ef8413d368213a942455a7e2e (patch)
treeeda0e3b99b6ef7da7474c3b5aad38eb322372d22 /fontconfig/doc/fcmatrix.fncs
parent36c829ccf632f2f3adc6d13313406d6383b33993 (diff)
parent6e3cfc5bc8ca969856e4d56dec01870df709d75a (diff)
downloadvcxsrv-e75ba771a1b0e80ef8413d368213a942455a7e2e.tar.gz
vcxsrv-e75ba771a1b0e80ef8413d368213a942455a7e2e.tar.bz2
vcxsrv-e75ba771a1b0e80ef8413d368213a942455a7e2e.zip
svn merge ^/branches/released .
Diffstat (limited to 'fontconfig/doc/fcmatrix.fncs')
-rw-r--r--fontconfig/doc/fcmatrix.fncs125
1 files changed, 125 insertions, 0 deletions
diff --git a/fontconfig/doc/fcmatrix.fncs b/fontconfig/doc/fcmatrix.fncs
new file mode 100644
index 000000000..fd680e458
--- /dev/null
+++ b/fontconfig/doc/fcmatrix.fncs
@@ -0,0 +1,125 @@
+/*
+ * fontconfig/doc/fcmatrix.fncs
+ *
+ * Copyright © 2003 Keith Packard
+ *
+ * Permission to use, copy, modify, distribute, and sell this software and its
+ * documentation for any purpose is hereby granted without fee, provided that
+ * the above copyright notice appear in all copies and that both that
+ * copyright notice and this permission notice appear in supporting
+ * documentation, and that the name of Keith Packard not be used in
+ * advertising or publicity pertaining to distribution of the software without
+ * specific, written prior permission. Keith Packard makes no
+ * representations about the suitability of this software for any purpose. It
+ * is provided "as is" without express or implied warranty.
+ *
+ * THE AUTHOR(S) DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
+ * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
+ * EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY SPECIAL, INDIRECT OR
+ * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
+ * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
+ * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
+ * PERFORMANCE OF THIS SOFTWARE.
+ */
+
+@RET@ void
+@FUNC@ FcMatrixInit
+@PURPOSE@ initialize an FcMatrix structure
+@TYPE1@ FcMatrix *
+@ARG1@ matrix
+@DESC@
+<function>FcMatrixInit</function> initializes <parameter>matrix</parameter>
+to the identity matrix.
+@@
+
+@FUNC@ FcMatrixCopy
+@PURPOSE@ Copy a matrix
+@TYPE1@ const FcMatrix *
+@ARG1@ matrix
+@DESC@
+<function>FcMatrixCopy</function> allocates a new FcMatrix
+and copies <parameter>mat</parameter> into it.
+@@
+
+@FUNC@ FcMatrixEqual
+@PURPOSE@ Compare two matrices
+@TYPE1@ const FcMatrix *
+@ARG1@ matrix1
+@TYPE2@ const FcMatrix *
+@ARG2@ matrix2
+@DESC@
+<function>FcMatrixEqual</function> compares <parameter>matrix1</parameter>
+and <parameter>matrix2</parameter> returning FcTrue when they are equal and
+FcFalse when they are not.
+@@
+
+@FUNC@ FcMatrixMultiply
+@PURPOSE@ Multiply matrices
+@TYPE1@ FcMatrix *
+@ARG1@ result
+@TYPE2@ const FcMatrix *
+@ARG2@ matrix1
+@TYPE3@ const FcMatrix *
+@ARG3@ matrix2
+@DESC@
+<function>FcMatrixMultiply</function> multiplies
+<parameter>matrix1</parameter> and <parameter>matrix2</parameter> storing
+the result in <parameter>result</parameter>.
+@@
+
+@FUNC@ FcMatrixRotate
+@PURPOSE@ Rotate a matrix
+@TYPE1@ FcMatrix *
+@ARG1@ matrix
+@TYPE2@ double%
+@ARG2@ cos
+@TYPE3@ double%
+@ARG3@ sin
+@DESC@
+<function>FcMatrixRotate</function> rotates <parameter>matrix</parameter>
+by the angle who's sine is <parameter>sin</parameter> and cosine is
+<parameter>cos</parameter>. This is done by multiplying by the
+matrix:
+<programlisting>
+ cos -sin
+ sin cos
+</programlisting>
+@@
+
+@FUNC@ FcMatrixScale
+@PURPOSE@ Scale a matrix
+@TYPE1@ FcMatrix *
+@ARG1@ matrix
+@TYPE2@ double%
+@ARG2@ sx
+@TYPE3@ double%
+@ARG3@ dy
+@DESC@
+<function>FcMatrixScale</function> multiplies <parameter>matrix</parameter>
+x values by <parameter>sx</parameter> and y values by
+<parameter>sy</parameter>. This is done by multiplying by
+the matrix:
+<programlisting>
+ sx 0
+ 0 sy
+</programlisting>
+@@
+
+@FUNC@ FcMatrixShear
+@PURPOSE@ Shear a matrix
+@TYPE1@ FcMatrix *
+@ARG1@ matrix
+@TYPE2@ double%
+@ARG2@ sh
+@TYPE3@ double%
+@ARG3@ sv
+@DESC@
+<function>FcMatrixShare</function> shears <parameter>matrix</parameter>
+horizontally by <parameter>sh</parameter> and vertically by
+<parameter>sv</parameter>. This is done by multiplying by
+the matrix:
+<programlisting>
+ 1 sh
+ sv 1
+</programlisting>
+@@