\hypertarget{eina__matrix_8h}{}\section{eina\+\_\+matrix.\+h File Reference}
\label{eina__matrix_8h}\index{eina\+\_\+matrix.\+h@{eina\+\_\+matrix.\+h}}


\{Eina\+\_\+\+Matrix\+\_\+\+Type\} \{Eina\+\_\+\+Matrix3\+\_\+\+F16p16\} \{Eina\+\_\+\+Matrix3\}  


\subsection*{Data Structures}
\begin{DoxyCompactItemize}
\item 
struct \hyperlink{struct__Eina__Matrix3__F16p16}{\+\_\+\+Eina\+\_\+\+Matrix3\+\_\+\+F16p16}
\item 
struct \hyperlink{struct__Eina__Matrix3}{\+\_\+\+Eina\+\_\+\+Matrix3}
\end{DoxyCompactItemize}
\subsection*{Macros}
\begin{DoxyCompactItemize}
\item 
\hypertarget{group__Eina__Matrix3_ga5b0911176c8d5df13db64a3f6b6539b6}{}\#define \hyperlink{group__Eina__Matrix3_ga5b0911176c8d5df13db64a3f6b6539b6}{E\+I\+N\+A\+\_\+\+M\+A\+T\+R\+I\+X3\+\_\+\+F\+O\+R\+M\+A\+T}~\char`\"{}g \%g \%g $\vert$ \%g \%g \%g $\vert$ \%g \%g \%g\char`\"{}\label{group__Eina__Matrix3_ga5b0911176c8d5df13db64a3f6b6539b6}

\begin{DoxyCompactList}\small\item\em Helper macro for printf formatting. \end{DoxyCompactList}\item 
\#define \hyperlink{group__Eina__Matrix3_gaa8275fdf48cc11b6e647c7f45d077faa}{E\+I\+N\+A\+\_\+\+M\+A\+T\+R\+I\+X3\+\_\+\+A\+R\+G\+S}(m)
\begin{DoxyCompactList}\small\item\em Helper macro for printf formatting arg. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Typedefs}
\begin{DoxyCompactItemize}
\item 
\hypertarget{group__Eina__Matrix__Type_ga0ca773bf05478eeeaf45d632a5151c30}{}typedef enum \hyperlink{group__Eina__Matrix__Type_gac9e258fd0ef943c6c6f86d7a732b73f5}{\+\_\+\+Eina\+\_\+\+Matrix\+\_\+\+Type} {\bfseries Eina\+\_\+\+Matrix\+\_\+\+Type}\label{group__Eina__Matrix__Type_ga0ca773bf05478eeeaf45d632a5151c30}

\item 
\hypertarget{group__Eina__Matrix3__F16p16_ga87861f5f8508c0f61ff2a196506699f3}{}typedef struct \hyperlink{struct__Eina__Matrix3__F16p16}{\+\_\+\+Eina\+\_\+\+Matrix3\+\_\+\+F16p16} \hyperlink{group__Eina__Matrix3__F16p16_ga87861f5f8508c0f61ff2a196506699f3}{Eina\+\_\+\+Matrix3\+\_\+\+F16p16}\label{group__Eina__Matrix3__F16p16_ga87861f5f8508c0f61ff2a196506699f3}

\begin{DoxyCompactList}\small\item\em Fixed point matrix3 handler. \end{DoxyCompactList}\item 
\hypertarget{group__Eina__Matrix3_ga7b643a47bf40554b991338bbc2597a98}{}typedef struct \hyperlink{struct__Eina__Matrix3}{\+\_\+\+Eina\+\_\+\+Matrix3} \hyperlink{group__Eina__Matrix3_ga7b643a47bf40554b991338bbc2597a98}{Eina\+\_\+\+Matrix3}\label{group__Eina__Matrix3_ga7b643a47bf40554b991338bbc2597a98}

\begin{DoxyCompactList}\small\item\em Floating point matrix3 handler. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Enumerations}
\begin{DoxyCompactItemize}
\item 
enum \hyperlink{group__Eina__Matrix__Type_gac9e258fd0ef943c6c6f86d7a732b73f5}{\+\_\+\+Eina\+\_\+\+Matrix\+\_\+\+Type} \{ \\*
\hyperlink{group__Eina__Matrix__Type_ggac9e258fd0ef943c6c6f86d7a732b73f5a3593bd6f89b1171d847fb6a5e901f862}{E\+I\+N\+A\+\_\+\+M\+A\+T\+R\+I\+X\+\_\+\+T\+Y\+P\+E\+\_\+\+I\+D\+E\+N\+T\+I\+T\+Y}, 
\\*
\hyperlink{group__Eina__Matrix__Type_ggac9e258fd0ef943c6c6f86d7a732b73f5ad225c3a0a95a5ec11da3009541cc0498}{E\+I\+N\+A\+\_\+\+M\+A\+T\+R\+I\+X\+\_\+\+T\+Y\+P\+E\+\_\+\+A\+F\+F\+I\+N\+E}, 
\\*
\hyperlink{group__Eina__Matrix__Type_ggac9e258fd0ef943c6c6f86d7a732b73f5ac64b44714c29f6cbe5273748853536fb}{E\+I\+N\+A\+\_\+\+M\+A\+T\+R\+I\+X\+\_\+\+T\+Y\+P\+E\+\_\+\+P\+R\+O\+J\+E\+C\+T\+I\+V\+E}, 
\\*
\hyperlink{group__Eina__Matrix__Type_ggac9e258fd0ef943c6c6f86d7a732b73f5ab66882f2b0e75f88e7cb7a1d5909ca33}{E\+I\+N\+A\+\_\+\+M\+A\+T\+R\+I\+X\+\_\+\+T\+Y\+P\+E\+\_\+\+L\+A\+S\+T}
 \}
\end{DoxyCompactItemize}
\subsection*{Functions}
\begin{DoxyCompactItemize}
\item 
void \hyperlink{group__Eina__Matrix3__F16p16_gaa85a7ab424caefef55bb38fa9aaf61e8}{eina\+\_\+matrix3\+\_\+f16p16\+\_\+identity} (\hyperlink{group__Eina__Matrix3__F16p16_ga87861f5f8508c0f61ff2a196506699f3}{Eina\+\_\+\+Matrix3\+\_\+\+F16p16} $\ast$m)
\begin{DoxyCompactList}\small\item\em Set the given fixed point matrix to the identity matrix. \end{DoxyCompactList}\item 
void \hyperlink{group__Eina__Matrix3__F16p16_ga662d04605f626dfc1e5719d11dc67e1f}{eina\+\_\+matrix3\+\_\+f16p16\+\_\+compose} (const \hyperlink{group__Eina__Matrix3__F16p16_ga87861f5f8508c0f61ff2a196506699f3}{Eina\+\_\+\+Matrix3\+\_\+\+F16p16} $\ast$m1, const \hyperlink{group__Eina__Matrix3__F16p16_ga87861f5f8508c0f61ff2a196506699f3}{Eina\+\_\+\+Matrix3\+\_\+\+F16p16} $\ast$m2, \hyperlink{group__Eina__Matrix3__F16p16_ga87861f5f8508c0f61ff2a196506699f3}{Eina\+\_\+\+Matrix3\+\_\+\+F16p16} $\ast$dst)
\item 
Eina\+\_\+\+Matrix\+\_\+\+Type \hyperlink{group__Eina__Matrix3__F16p16_ga291bba6181a8e2e5980fdc3529b3f86b}{eina\+\_\+matrix3\+\_\+f16p16\+\_\+type\+\_\+get} (const \hyperlink{group__Eina__Matrix3__F16p16_ga87861f5f8508c0f61ff2a196506699f3}{Eina\+\_\+\+Matrix3\+\_\+\+F16p16} $\ast$m)
\begin{DoxyCompactList}\small\item\em Return the type of the given fixed point matrix. \end{DoxyCompactList}\item 
Eina\+\_\+\+Matrix\+\_\+\+Type \hyperlink{group__Eina__Matrix3_gadb8cf45cd1a22f7a52d53f45866365c3}{eina\+\_\+matrix3\+\_\+type\+\_\+get} (const \hyperlink{group__Eina__Matrix3_ga7b643a47bf40554b991338bbc2597a98}{Eina\+\_\+\+Matrix3} $\ast$m)
\begin{DoxyCompactList}\small\item\em Return the type of the given floating point matrix. \end{DoxyCompactList}\item 
void \hyperlink{group__Eina__Matrix3_ga5a918521e09f28a4d7920adb90eb5e38}{eina\+\_\+matrix3\+\_\+values\+\_\+set} (\hyperlink{group__Eina__Matrix3_ga7b643a47bf40554b991338bbc2597a98}{Eina\+\_\+\+Matrix3} $\ast$m, double xx, double xy, double xz, double yx, double yy, double yz, double zx, double zy, double zz)
\begin{DoxyCompactList}\small\item\em Set the values of the coefficients of the given floating point matrix. \end{DoxyCompactList}\item 
void \hyperlink{group__Eina__Matrix3_gad3272b8f27748b0858cc7ee7777f457f}{eina\+\_\+matrix3\+\_\+values\+\_\+get} (const \hyperlink{group__Eina__Matrix3_ga7b643a47bf40554b991338bbc2597a98}{Eina\+\_\+\+Matrix3} $\ast$m, double $\ast$xx, double $\ast$xy, double $\ast$xz, double $\ast$yx, double $\ast$yy, double $\ast$yz, double $\ast$zx, double $\ast$zy, double $\ast$zz)
\begin{DoxyCompactList}\small\item\em Get the values of the coefficients of the given floating point matrix. \end{DoxyCompactList}\item 
void \hyperlink{group__Eina__Matrix3_gab1026f17517b830b36ce6c4d95719bde}{eina\+\_\+matrix3\+\_\+fixed\+\_\+values\+\_\+get} (const \hyperlink{group__Eina__Matrix3_ga7b643a47bf40554b991338bbc2597a98}{Eina\+\_\+\+Matrix3} $\ast$m, \hyperlink{group__Eina__Fp__Group_gad39780115c81512495fd39a60b9f317c}{Eina\+\_\+\+F16p16} $\ast$xx, \hyperlink{group__Eina__Fp__Group_gad39780115c81512495fd39a60b9f317c}{Eina\+\_\+\+F16p16} $\ast$xy, \hyperlink{group__Eina__Fp__Group_gad39780115c81512495fd39a60b9f317c}{Eina\+\_\+\+F16p16} $\ast$xz, \hyperlink{group__Eina__Fp__Group_gad39780115c81512495fd39a60b9f317c}{Eina\+\_\+\+F16p16} $\ast$yx, \hyperlink{group__Eina__Fp__Group_gad39780115c81512495fd39a60b9f317c}{Eina\+\_\+\+F16p16} $\ast$yy, \hyperlink{group__Eina__Fp__Group_gad39780115c81512495fd39a60b9f317c}{Eina\+\_\+\+F16p16} $\ast$yz, \hyperlink{group__Eina__Fp__Group_gad39780115c81512495fd39a60b9f317c}{Eina\+\_\+\+F16p16} $\ast$zx, \hyperlink{group__Eina__Fp__Group_gad39780115c81512495fd39a60b9f317c}{Eina\+\_\+\+F16p16} $\ast$zy, \hyperlink{group__Eina__Fp__Group_gad39780115c81512495fd39a60b9f317c}{Eina\+\_\+\+F16p16} $\ast$zz)
\begin{DoxyCompactList}\small\item\em Get the values of the coefficients of the given fixed point matrix. \end{DoxyCompactList}\item 
void \hyperlink{group__Eina__Matrix3_gaddca6060f811e2e54c2a4463a489f562}{eina\+\_\+matrix3\+\_\+matrix3\+\_\+f16p16\+\_\+to} (const \hyperlink{group__Eina__Matrix3_ga7b643a47bf40554b991338bbc2597a98}{Eina\+\_\+\+Matrix3} $\ast$m, \hyperlink{group__Eina__Matrix3__F16p16_ga87861f5f8508c0f61ff2a196506699f3}{Eina\+\_\+\+Matrix3\+\_\+\+F16p16} $\ast$fm)
\begin{DoxyCompactList}\small\item\em Transform the given floating point matrix to the given fixed point matrix. \end{DoxyCompactList}\item 
\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool} \hyperlink{group__Eina__Matrix3_gae17ded59d27ebc9de70d7c3fc4b60cd9}{eina\+\_\+matrix3\+\_\+equal} (const \hyperlink{group__Eina__Matrix3_ga7b643a47bf40554b991338bbc2597a98}{Eina\+\_\+\+Matrix3} $\ast$m1, const \hyperlink{group__Eina__Matrix3_ga7b643a47bf40554b991338bbc2597a98}{Eina\+\_\+\+Matrix3} $\ast$m2)
\begin{DoxyCompactList}\small\item\em Check whether the two given matrices are equal or not. \end{DoxyCompactList}\item 
void \hyperlink{group__Eina__Matrix3_gafb247ad2d00d9ca118e1a5e66081175b}{eina\+\_\+matrix3\+\_\+compose} (const \hyperlink{group__Eina__Matrix3_ga7b643a47bf40554b991338bbc2597a98}{Eina\+\_\+\+Matrix3} $\ast$m1, const \hyperlink{group__Eina__Matrix3_ga7b643a47bf40554b991338bbc2597a98}{Eina\+\_\+\+Matrix3} $\ast$m2, \hyperlink{group__Eina__Matrix3_ga7b643a47bf40554b991338bbc2597a98}{Eina\+\_\+\+Matrix3} $\ast$dst)
\item 
void \hyperlink{group__Eina__Matrix3_ga1851b5ecde69c55fc17dd652ad277804}{eina\+\_\+matrix3\+\_\+translate} (\hyperlink{group__Eina__Matrix3_ga7b643a47bf40554b991338bbc2597a98}{Eina\+\_\+\+Matrix3} $\ast$t, double tx, double ty)
\begin{DoxyCompactList}\small\item\em Set the matrix values for a translation. \end{DoxyCompactList}\item 
void \hyperlink{group__Eina__Matrix3_ga309f9c25d35c27f54e78f79e025cba72}{eina\+\_\+matrix3\+\_\+scale} (\hyperlink{group__Eina__Matrix3_ga7b643a47bf40554b991338bbc2597a98}{Eina\+\_\+\+Matrix3} $\ast$t, double sx, double sy)
\begin{DoxyCompactList}\small\item\em Set the matrix values for a scale. \end{DoxyCompactList}\item 
void \hyperlink{group__Eina__Matrix3_ga3a466030fa6fb2a0dcab5b97258532b8}{eina\+\_\+matrix3\+\_\+rotate} (\hyperlink{group__Eina__Matrix3_ga7b643a47bf40554b991338bbc2597a98}{Eina\+\_\+\+Matrix3} $\ast$t, double rad)
\begin{DoxyCompactList}\small\item\em Set the matrix values for a rotation. \end{DoxyCompactList}\item 
void \hyperlink{group__Eina__Matrix3_gad590d9a2cfb2408135d5decd39982ef5}{eina\+\_\+matrix3\+\_\+identity} (\hyperlink{group__Eina__Matrix3_ga7b643a47bf40554b991338bbc2597a98}{Eina\+\_\+\+Matrix3} $\ast$t)
\begin{DoxyCompactList}\small\item\em Set the given floating point matrix to the identity matrix. \end{DoxyCompactList}\item 
double \hyperlink{group__Eina__Matrix3_ga89bae0174615d096b40e0b56600fb3af}{eina\+\_\+matrix3\+\_\+determinant} (const \hyperlink{group__Eina__Matrix3_ga7b643a47bf40554b991338bbc2597a98}{Eina\+\_\+\+Matrix3} $\ast$m)
\begin{DoxyCompactList}\small\item\em Return the determinant of the given matrix. \end{DoxyCompactList}\item 
void \hyperlink{group__Eina__Matrix3_ga50f4cec7c36f27debc54784366119ad9}{eina\+\_\+matrix3\+\_\+divide} (\hyperlink{group__Eina__Matrix3_ga7b643a47bf40554b991338bbc2597a98}{Eina\+\_\+\+Matrix3} $\ast$m, double scalar)
\begin{DoxyCompactList}\small\item\em Divide the given matrix by the given scalar. \end{DoxyCompactList}\item 
void \hyperlink{group__Eina__Matrix3_ga2829c4e4f4697cf83dde4a0818871d96}{eina\+\_\+matrix3\+\_\+inverse} (const \hyperlink{group__Eina__Matrix3_ga7b643a47bf40554b991338bbc2597a98}{Eina\+\_\+\+Matrix3} $\ast$m, \hyperlink{group__Eina__Matrix3_ga7b643a47bf40554b991338bbc2597a98}{Eina\+\_\+\+Matrix3} $\ast$m2)
\begin{DoxyCompactList}\small\item\em Compute the inverse of the given matrix. \end{DoxyCompactList}\item 
void \hyperlink{group__Eina__Matrix3_gacd98030058191df8442bf4a0acdc3df5}{eina\+\_\+matrix3\+\_\+transpose} (const \hyperlink{group__Eina__Matrix3_ga7b643a47bf40554b991338bbc2597a98}{Eina\+\_\+\+Matrix3} $\ast$m, \hyperlink{group__Eina__Matrix3_ga7b643a47bf40554b991338bbc2597a98}{Eina\+\_\+\+Matrix3} $\ast$a)
\item 
void \hyperlink{group__Eina__Matrix3_gad5d339e01c63db1e81ee9bdfd5ac8f12}{eina\+\_\+matrix3\+\_\+cofactor} (const \hyperlink{group__Eina__Matrix3_ga7b643a47bf40554b991338bbc2597a98}{Eina\+\_\+\+Matrix3} $\ast$m, \hyperlink{group__Eina__Matrix3_ga7b643a47bf40554b991338bbc2597a98}{Eina\+\_\+\+Matrix3} $\ast$a)
\item 
void \hyperlink{group__Eina__Matrix3_ga7634198d262398a8fdb1d0e734e58d26}{eina\+\_\+matrix3\+\_\+adjoint} (const \hyperlink{group__Eina__Matrix3_ga7b643a47bf40554b991338bbc2597a98}{Eina\+\_\+\+Matrix3} $\ast$m, \hyperlink{group__Eina__Matrix3_ga7b643a47bf40554b991338bbc2597a98}{Eina\+\_\+\+Matrix3} $\ast$a)
\item 
void \hyperlink{group__Eina__Matrix3_gac0a681d6b7fb71c16eefc5557e9709c3}{eina\+\_\+matrix3\+\_\+point\+\_\+transform} (const \hyperlink{group__Eina__Matrix3_ga7b643a47bf40554b991338bbc2597a98}{Eina\+\_\+\+Matrix3} $\ast$m, double x, double y, double $\ast$xr, double $\ast$yr)
\item 
void \hyperlink{group__Eina__Matrix3_ga7a4de4c7ee8e3d97621382497bb5dd23}{eina\+\_\+matrix3\+\_\+rectangle\+\_\+transform} (const \hyperlink{group__Eina__Matrix3_ga7b643a47bf40554b991338bbc2597a98}{Eina\+\_\+\+Matrix3} $\ast$m, const \hyperlink{group__Eina__Rectangle__Group_gad1f49db9be2cd747f458ebf4718b6228}{Eina\+\_\+\+Rectangle} $\ast$r, const \hyperlink{group__Eina__Quad_gad1216c445ce98862b68ba588f9635b0f}{Eina\+\_\+\+Quad} $\ast$q)
\item 
\hypertarget{group__Eina__Matrix3_ga7786bb597f5622d27c018c3c68448dd1}{}\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool} \hyperlink{group__Eina__Matrix3_ga7786bb597f5622d27c018c3c68448dd1}{eina\+\_\+matrix3\+\_\+quad\+\_\+quad\+\_\+map} (\hyperlink{group__Eina__Matrix3_ga7b643a47bf40554b991338bbc2597a98}{Eina\+\_\+\+Matrix3} $\ast$m, const \hyperlink{group__Eina__Quad_gad1216c445ce98862b68ba588f9635b0f}{Eina\+\_\+\+Quad} $\ast$src, const \hyperlink{group__Eina__Quad_gad1216c445ce98862b68ba588f9635b0f}{Eina\+\_\+\+Quad} $\ast$dst)\label{group__Eina__Matrix3_ga7786bb597f5622d27c018c3c68448dd1}

\begin{DoxyCompactList}\small\item\em Creates a projective matrix that maps a quadrangle to a quadrangle. \end{DoxyCompactList}\item 
\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool} \hyperlink{group__Eina__Matrix3_ga7e9028b2971abceef83f8bc97dea58e1}{eina\+\_\+matrix3\+\_\+square\+\_\+quad\+\_\+map} (\hyperlink{group__Eina__Matrix3_ga7b643a47bf40554b991338bbc2597a98}{Eina\+\_\+\+Matrix3} $\ast$m, const \hyperlink{group__Eina__Quad_gad1216c445ce98862b68ba588f9635b0f}{Eina\+\_\+\+Quad} $\ast$q)
\item 
\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool} \hyperlink{group__Eina__Matrix3_ga69309f8c3c1821b8329804f2f7dacfa1}{eina\+\_\+matrix3\+\_\+quad\+\_\+square\+\_\+map} (\hyperlink{group__Eina__Matrix3_ga7b643a47bf40554b991338bbc2597a98}{Eina\+\_\+\+Matrix3} $\ast$m, const \hyperlink{group__Eina__Quad_gad1216c445ce98862b68ba588f9635b0f}{Eina\+\_\+\+Quad} $\ast$q)
\end{DoxyCompactItemize}


\subsection{Detailed Description}
\{Eina\+\_\+\+Matrix\+\_\+\+Type\} \{Eina\+\_\+\+Matrix3\+\_\+\+F16p16\} \{Eina\+\_\+\+Matrix3\} 

