\hypertarget{group__Eina__Matrix4}{}\section{Matrices in floating point}
\label{group__Eina__Matrix4}\index{Matrices in floating point@{Matrices in floating point}}


Matrix definition and operations.  


\subsection*{Data Structures}
\begin{DoxyCompactItemize}
\item 
struct \hyperlink{struct__Eina__Matrix4}{\+\_\+\+Eina\+\_\+\+Matrix4}
\end{DoxyCompactItemize}
\subsection*{Typedefs}
\begin{DoxyCompactItemize}
\item 
\hypertarget{group__Eina__Matrix4_gac55cca027951a2e2663d4687775a820e}{}typedef struct \hyperlink{struct__Eina__Matrix4}{\+\_\+\+Eina\+\_\+\+Matrix4} {\bfseries Eina\+\_\+\+Matrix4}\label{group__Eina__Matrix4_gac55cca027951a2e2663d4687775a820e}

\end{DoxyCompactItemize}
\subsection*{Functions}
\begin{DoxyCompactItemize}
\item 
\hyperlink{group__Elua_ga3db3556eec8ef18cb8ddb43816974ac8}{E\+A\+P\+I} Eina\+\_\+\+Matrix\+\_\+\+Type \hyperlink{group__Eina__Matrix4_gab90d01761fdd15c16aee906a4fe9b08a}{eina\+\_\+matrix4\+\_\+type\+\_\+get} (const \hyperlink{struct__Eina__Matrix4}{Eina\+\_\+\+Matrix4} $\ast$m)
\begin{DoxyCompactList}\small\item\em Return the type of the given floating point matrix. \end{DoxyCompactList}\item 
\hyperlink{group__Elua_ga3db3556eec8ef18cb8ddb43816974ac8}{E\+A\+P\+I} void \hyperlink{group__Eina__Matrix4_gaf29a7fb105fba478e9be7f0e96f9c3fb}{eina\+\_\+matrix4\+\_\+values\+\_\+set} (\hyperlink{struct__Eina__Matrix4}{Eina\+\_\+\+Matrix4} $\ast$m, double xx, double xy, double xz, double xw, double yx, double yy, double yz, double yw, double zx, double zy, double zz, double zw, double wx, double wy, double wz, double ww)
\begin{DoxyCompactList}\small\item\em Set the values of the coefficients of the given floating point matrix. \end{DoxyCompactList}\item 
\hyperlink{group__Elua_ga3db3556eec8ef18cb8ddb43816974ac8}{E\+A\+P\+I} void \hyperlink{group__Eina__Matrix4_gae72935b35a3f1b7d2c3005f4fbaa5303}{eina\+\_\+matrix4\+\_\+values\+\_\+get} (const \hyperlink{struct__Eina__Matrix4}{Eina\+\_\+\+Matrix4} $\ast$m, double $\ast$xx, double $\ast$xy, double $\ast$xz, double $\ast$xw, double $\ast$yx, double $\ast$yy, double $\ast$yz, double $\ast$yw, double $\ast$zx, double $\ast$zy, double $\ast$zz, double $\ast$zw, double $\ast$wx, double $\ast$wy, double $\ast$wz, double $\ast$ww)
\begin{DoxyCompactList}\small\item\em Get the values of the coefficients of the given floating point matrix. \end{DoxyCompactList}\item 
\hyperlink{group__Elua_ga3db3556eec8ef18cb8ddb43816974ac8}{E\+A\+P\+I} double \hyperlink{group__Eina__Matrix4_ga8482180376b7d4254fce4034829d5bd4}{eina\+\_\+matrix4\+\_\+determinant} (const \hyperlink{struct__Eina__Matrix4}{Eina\+\_\+\+Matrix4} $\ast$m)
\begin{DoxyCompactList}\small\item\em Return the determinant of the given matrix. \end{DoxyCompactList}\item 
\hyperlink{group__Elua_ga3db3556eec8ef18cb8ddb43816974ac8}{E\+A\+P\+I} \hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool} \hyperlink{group__Eina__Matrix4_ga7232d8a00b3c99ac50c2ebd7d91ce401}{eina\+\_\+matrix4\+\_\+normalized} (\hyperlink{struct__Eina__Matrix4}{Eina\+\_\+\+Matrix4} $\ast$out, const \hyperlink{struct__Eina__Matrix4}{Eina\+\_\+\+Matrix4} $\ast$in)
\begin{DoxyCompactList}\small\item\em Return the determinant of the given matrix. \end{DoxyCompactList}\item 
\hyperlink{group__Elua_ga3db3556eec8ef18cb8ddb43816974ac8}{E\+A\+P\+I} \hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool} \hyperlink{group__Eina__Matrix4_gad14b308cc33c2a4bc891143168d11bb5}{eina\+\_\+matrix4\+\_\+inverse} (\hyperlink{struct__Eina__Matrix4}{Eina\+\_\+\+Matrix4} $\ast$out, const \hyperlink{struct__Eina__Matrix4}{Eina\+\_\+\+Matrix4} $\ast$in)
\begin{DoxyCompactList}\small\item\em Return the inverse of the given matrix. \end{DoxyCompactList}\item 
\hyperlink{group__Elua_ga3db3556eec8ef18cb8ddb43816974ac8}{E\+A\+P\+I} void \hyperlink{group__Eina__Matrix4_gac502822483eaf4ed97f15922b84f5383}{eina\+\_\+matrix4\+\_\+transpose} (\hyperlink{struct__Eina__Matrix4}{Eina\+\_\+\+Matrix4} $\ast$out, const \hyperlink{struct__Eina__Matrix4}{Eina\+\_\+\+Matrix4} $\ast$in)
\begin{DoxyCompactList}\small\item\em Return the transpose of the given matrix. \end{DoxyCompactList}\item 
\hyperlink{group__Elua_ga3db3556eec8ef18cb8ddb43816974ac8}{E\+A\+P\+I} void \hyperlink{group__Eina__Matrix4_ga0ca6916f62bb08c601a635e131830d7c}{eina\+\_\+matrix4\+\_\+matrix3\+\_\+to} (\hyperlink{group__Eina__Matrix3_ga7b643a47bf40554b991338bbc2597a98}{Eina\+\_\+\+Matrix3} $\ast$m3, const \hyperlink{struct__Eina__Matrix4}{Eina\+\_\+\+Matrix4} $\ast$m4)
\begin{DoxyCompactList}\small\item\em Convert an Eina\+\_\+\+Matrix4 into an Eina\+\_\+\+Matrix3. \end{DoxyCompactList}\item 
\hyperlink{group__Elua_ga3db3556eec8ef18cb8ddb43816974ac8}{E\+A\+P\+I} void \hyperlink{group__Eina__Matrix4_ga5b1546fe16b1f8a3e6fff0ae2c093d00}{eina\+\_\+matrix3\+\_\+matrix4\+\_\+to} (\hyperlink{struct__Eina__Matrix4}{Eina\+\_\+\+Matrix4} $\ast$m4, const \hyperlink{group__Eina__Matrix3_ga7b643a47bf40554b991338bbc2597a98}{Eina\+\_\+\+Matrix3} $\ast$m3)
\begin{DoxyCompactList}\small\item\em Convert an Eina\+\_\+\+Matrix3 into an Eina\+\_\+\+Matrix4. \end{DoxyCompactList}\item 
\hyperlink{group__Elua_ga3db3556eec8ef18cb8ddb43816974ac8}{E\+A\+P\+I} void \hyperlink{group__Eina__Matrix4_gaaf47679cf88dc83b8fb3507a0e058773}{eina\+\_\+matrix4\+\_\+identity} (\hyperlink{struct__Eina__Matrix4}{Eina\+\_\+\+Matrix4} $\ast$out)
\begin{DoxyCompactList}\small\item\em Set an identity matrix. \end{DoxyCompactList}\item 
\hyperlink{group__Elua_ga3db3556eec8ef18cb8ddb43816974ac8}{E\+A\+P\+I} void \hyperlink{group__Eina__Matrix4_gaacca4eb601271ed2b7eb26c0547639fe}{eina\+\_\+matrix4\+\_\+multiply} (\hyperlink{struct__Eina__Matrix4}{Eina\+\_\+\+Matrix4} $\ast$out, const \hyperlink{struct__Eina__Matrix4}{Eina\+\_\+\+Matrix4} $\ast$a, const \hyperlink{struct__Eina__Matrix4}{Eina\+\_\+\+Matrix4} $\ast$b)
\begin{DoxyCompactList}\small\item\em Multiply two matrix. \end{DoxyCompactList}\end{DoxyCompactItemize}


\subsection{Detailed Description}
Matrix definition and operations. 



\subsection{Function Documentation}
\hypertarget{group__Eina__Matrix4_gab90d01761fdd15c16aee906a4fe9b08a}{}\index{Matrices in floating point@{Matrices in floating point}!eina\+\_\+matrix4\+\_\+type\+\_\+get@{eina\+\_\+matrix4\+\_\+type\+\_\+get}}
\index{eina\+\_\+matrix4\+\_\+type\+\_\+get@{eina\+\_\+matrix4\+\_\+type\+\_\+get}!Matrices in floating point@{Matrices in floating point}}
\subsubsection[{eina\+\_\+matrix4\+\_\+type\+\_\+get(const Eina\+\_\+\+Matrix4 $\ast$m)}]{\setlength{\rightskip}{0pt plus 5cm}{\bf E\+A\+P\+I} Eina\+\_\+\+Matrix\+\_\+\+Type eina\+\_\+matrix4\+\_\+type\+\_\+get (
\begin{DoxyParamCaption}
\item[{const {\bf Eina\+\_\+\+Matrix4} $\ast$}]{m}
\end{DoxyParamCaption}
)}\label{group__Eina__Matrix4_gab90d01761fdd15c16aee906a4fe9b08a}


Return the type of the given floating point matrix. 


\begin{DoxyParams}{Parameters}
{\em m} & The floating point matrix. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The type of the matrix.
\end{DoxyReturn}
This function returns the type of the matrix {\ttfamily m}. No check is done on {\ttfamily m}.

\begin{DoxySince}{Since}
1.\+15 
\end{DoxySince}


References E\+I\+N\+A\+\_\+\+M\+A\+T\+R\+I\+X\+\_\+\+T\+Y\+P\+E\+\_\+\+A\+F\+F\+I\+N\+E, and E\+I\+N\+A\+\_\+\+M\+A\+T\+R\+I\+X\+\_\+\+T\+Y\+P\+E\+\_\+\+I\+D\+E\+N\+T\+I\+T\+Y.

\hypertarget{group__Eina__Matrix4_gaf29a7fb105fba478e9be7f0e96f9c3fb}{}\index{Matrices in floating point@{Matrices in floating point}!eina\+\_\+matrix4\+\_\+values\+\_\+set@{eina\+\_\+matrix4\+\_\+values\+\_\+set}}
\index{eina\+\_\+matrix4\+\_\+values\+\_\+set@{eina\+\_\+matrix4\+\_\+values\+\_\+set}!Matrices in floating point@{Matrices in floating point}}
\subsubsection[{eina\+\_\+matrix4\+\_\+values\+\_\+set(\+Eina\+\_\+\+Matrix4 $\ast$m, double xx, double xy, double xz, double xw, double yx, double yy, double yz, double yw, double zx, double zy, double zz, double zw, double wx, double wy, double wz, double ww)}]{\setlength{\rightskip}{0pt plus 5cm}{\bf E\+A\+P\+I} void eina\+\_\+matrix4\+\_\+values\+\_\+set (
\begin{DoxyParamCaption}
\item[{{\bf Eina\+\_\+\+Matrix4} $\ast$}]{m, }
\item[{double}]{xx, }
\item[{double}]{xy, }
\item[{double}]{xz, }
\item[{double}]{xw, }
\item[{double}]{yx, }
\item[{double}]{yy, }
\item[{double}]{yz, }
\item[{double}]{yw, }
\item[{double}]{zx, }
\item[{double}]{zy, }
\item[{double}]{zz, }
\item[{double}]{zw, }
\item[{double}]{wx, }
\item[{double}]{wy, }
\item[{double}]{wz, }
\item[{double}]{ww}
\end{DoxyParamCaption}
)}\label{group__Eina__Matrix4_gaf29a7fb105fba478e9be7f0e96f9c3fb}


Set the values of the coefficients of the given floating point matrix. 


\begin{DoxyParams}{Parameters}
{\em m} & The floating point matrix. \\
\hline
{\em xx} & The first coefficient value. \\
\hline
{\em xy} & The second coefficient value. \\
\hline
{\em xz} & The third coefficient value. \\
\hline
{\em xw} & The fourth coefficient value. \\
\hline
{\em yx} & The fifth coefficient value. \\
\hline
{\em yy} & The sixth coefficient value. \\
\hline
{\em yz} & The seventh coefficient value. \\
\hline
{\em yw} & The heighth coefficient value. \\
\hline
{\em zx} & The nineth coefficient value. \\
\hline
{\em zy} & The tenth coefficient value. \\
\hline
{\em zz} & The eleventh coefficient value. \\
\hline
{\em zw} & The twelfth coefficient value. \\
\hline
{\em wx} & The thirteenth coefficient value. \\
\hline
{\em wy} & The fourteenth coefficient value. \\
\hline
{\em wz} & The fifteenth coefficient value. \\
\hline
{\em ww} & The sizteenth coefficient value.\\
\hline
\end{DoxyParams}
This function sets the values of the coefficients of the matrix {\ttfamily m}. No check is done on {\ttfamily m}.

\begin{DoxySeeAlso}{See also}
\hyperlink{group__Eina__Matrix4_gae72935b35a3f1b7d2c3005f4fbaa5303}{eina\+\_\+matrix4\+\_\+values\+\_\+get()}
\end{DoxySeeAlso}
\begin{DoxySince}{Since}
1.\+15 
\end{DoxySince}
\hypertarget{group__Eina__Matrix4_gae72935b35a3f1b7d2c3005f4fbaa5303}{}\index{Matrices in floating point@{Matrices in floating point}!eina\+\_\+matrix4\+\_\+values\+\_\+get@{eina\+\_\+matrix4\+\_\+values\+\_\+get}}
\index{eina\+\_\+matrix4\+\_\+values\+\_\+get@{eina\+\_\+matrix4\+\_\+values\+\_\+get}!Matrices in floating point@{Matrices in floating point}}
\subsubsection[{eina\+\_\+matrix4\+\_\+values\+\_\+get(const Eina\+\_\+\+Matrix4 $\ast$m, double $\ast$xx, double $\ast$xy, double $\ast$xz, double $\ast$xw, double $\ast$yx, double $\ast$yy, double $\ast$yz, double $\ast$yw, double $\ast$zx, double $\ast$zy, double $\ast$zz, double $\ast$zw, double $\ast$wx, double $\ast$wy, double $\ast$wz, double $\ast$ww)}]{\setlength{\rightskip}{0pt plus 5cm}{\bf E\+A\+P\+I} void eina\+\_\+matrix4\+\_\+values\+\_\+get (
\begin{DoxyParamCaption}
\item[{const {\bf Eina\+\_\+\+Matrix4} $\ast$}]{m, }
\item[{double $\ast$}]{xx, }
\item[{double $\ast$}]{xy, }
\item[{double $\ast$}]{xz, }
\item[{double $\ast$}]{xw, }
\item[{double $\ast$}]{yx, }
\item[{double $\ast$}]{yy, }
\item[{double $\ast$}]{yz, }
\item[{double $\ast$}]{yw, }
\item[{double $\ast$}]{zx, }
\item[{double $\ast$}]{zy, }
\item[{double $\ast$}]{zz, }
\item[{double $\ast$}]{zw, }
\item[{double $\ast$}]{wx, }
\item[{double $\ast$}]{wy, }
\item[{double $\ast$}]{wz, }
\item[{double $\ast$}]{ww}
\end{DoxyParamCaption}
)}\label{group__Eina__Matrix4_gae72935b35a3f1b7d2c3005f4fbaa5303}


Get the values of the coefficients of the given floating point matrix. 


\begin{DoxyParams}{Parameters}
{\em m} & The floating point matrix. \\
\hline
{\em xx} & The first coefficient value. \\
\hline
{\em xy} & The second coefficient value. \\
\hline
{\em xz} & The third coefficient value. \\
\hline
{\em xw} & The fourth coefficient value. \\
\hline
{\em yx} & The fifth coefficient value. \\
\hline
{\em yy} & The sixth coefficient value. \\
\hline
{\em yz} & The seventh coefficient value. \\
\hline
{\em yw} & The heighth coefficient value. \\
\hline
{\em zx} & The nineth coefficient value. \\
\hline
{\em zy} & The tenth coefficient value. \\
\hline
{\em zz} & The eleventh coefficient value. \\
\hline
{\em zw} & The twelfth coefficient value. \\
\hline
{\em wx} & The thirteenth coefficient value. \\
\hline
{\em wy} & The fourteenth coefficient value. \\
\hline
{\em wz} & The fifteenth coefficient value. \\
\hline
{\em ww} & The sizteenth coefficient value.\\
\hline
\end{DoxyParams}
This function gets the values of the coefficients of the matrix {\ttfamily m}. No check is done on {\ttfamily m}.

\begin{DoxySeeAlso}{See also}
\hyperlink{group__Eina__Matrix4_gaf29a7fb105fba478e9be7f0e96f9c3fb}{eina\+\_\+matrix4\+\_\+values\+\_\+set()}
\end{DoxySeeAlso}
\begin{DoxySince}{Since}
1.\+15 
\end{DoxySince}
\hypertarget{group__Eina__Matrix4_ga8482180376b7d4254fce4034829d5bd4}{}\index{Matrices in floating point@{Matrices in floating point}!eina\+\_\+matrix4\+\_\+determinant@{eina\+\_\+matrix4\+\_\+determinant}}
\index{eina\+\_\+matrix4\+\_\+determinant@{eina\+\_\+matrix4\+\_\+determinant}!Matrices in floating point@{Matrices in floating point}}
\subsubsection[{eina\+\_\+matrix4\+\_\+determinant(const Eina\+\_\+\+Matrix4 $\ast$m)}]{\setlength{\rightskip}{0pt plus 5cm}{\bf E\+A\+P\+I} double eina\+\_\+matrix4\+\_\+determinant (
\begin{DoxyParamCaption}
\item[{const {\bf Eina\+\_\+\+Matrix4} $\ast$}]{m}
\end{DoxyParamCaption}
)}\label{group__Eina__Matrix4_ga8482180376b7d4254fce4034829d5bd4}


Return the determinant of the given matrix. 


\begin{DoxyParams}{Parameters}
{\em m} & The matrix. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The determinant.
\end{DoxyReturn}
This function returns the determinant of the matrix {\ttfamily m}. No check is done on {\ttfamily m}.

\begin{DoxySince}{Since}
1.\+16 
\end{DoxySince}


Referenced by eina\+\_\+matrix4\+\_\+normalized().

\hypertarget{group__Eina__Matrix4_ga7232d8a00b3c99ac50c2ebd7d91ce401}{}\index{Matrices in floating point@{Matrices in floating point}!eina\+\_\+matrix4\+\_\+normalized@{eina\+\_\+matrix4\+\_\+normalized}}
\index{eina\+\_\+matrix4\+\_\+normalized@{eina\+\_\+matrix4\+\_\+normalized}!Matrices in floating point@{Matrices in floating point}}
\subsubsection[{eina\+\_\+matrix4\+\_\+normalized(\+Eina\+\_\+\+Matrix4 $\ast$out, const Eina\+\_\+\+Matrix4 $\ast$in)}]{\setlength{\rightskip}{0pt plus 5cm}{\bf E\+A\+P\+I} {\bf Eina\+\_\+\+Bool} eina\+\_\+matrix4\+\_\+normalized (
\begin{DoxyParamCaption}
\item[{{\bf Eina\+\_\+\+Matrix4} $\ast$}]{out, }
\item[{const {\bf Eina\+\_\+\+Matrix4} $\ast$}]{in}
\end{DoxyParamCaption}
)}\label{group__Eina__Matrix4_ga7232d8a00b3c99ac50c2ebd7d91ce401}


Return the determinant of the given matrix. 


\begin{DoxyParams}{Parameters}
{\em m} & The matrix. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The determinant.
\end{DoxyReturn}
This function returns the determinant of the matrix {\ttfamily m}. No check is done on {\ttfamily m}.

\begin{DoxySince}{Since}
1.\+16 
\end{DoxySince}


References E\+I\+N\+A\+\_\+\+F\+A\+L\+S\+E, eina\+\_\+matrix4\+\_\+determinant(), and E\+I\+N\+A\+\_\+\+T\+R\+U\+E.

\hypertarget{group__Eina__Matrix4_gad14b308cc33c2a4bc891143168d11bb5}{}\index{Matrices in floating point@{Matrices in floating point}!eina\+\_\+matrix4\+\_\+inverse@{eina\+\_\+matrix4\+\_\+inverse}}
\index{eina\+\_\+matrix4\+\_\+inverse@{eina\+\_\+matrix4\+\_\+inverse}!Matrices in floating point@{Matrices in floating point}}
\subsubsection[{eina\+\_\+matrix4\+\_\+inverse(\+Eina\+\_\+\+Matrix4 $\ast$out, const Eina\+\_\+\+Matrix4 $\ast$in)}]{\setlength{\rightskip}{0pt plus 5cm}{\bf E\+A\+P\+I} {\bf Eina\+\_\+\+Bool} eina\+\_\+matrix4\+\_\+inverse (
\begin{DoxyParamCaption}
\item[{{\bf Eina\+\_\+\+Matrix4} $\ast$}]{out, }
\item[{const {\bf Eina\+\_\+\+Matrix4} $\ast$}]{in}
\end{DoxyParamCaption}
)}\label{group__Eina__Matrix4_gad14b308cc33c2a4bc891143168d11bb5}


Return the inverse of the given matrix. 


\begin{DoxyParams}{Parameters}
{\em out} & The inverse matrix \\
\hline
{\em in} & The matrix. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
{\ttfamily E\+I\+N\+A\+\_\+\+T\+R\+U\+E} on success, {\ttfamily E\+I\+N\+A\+\_\+\+F\+A\+L\+S\+E} otherwise.
\end{DoxyReturn}
\begin{DoxySince}{Since}
1.\+16 
\end{DoxySince}


References E\+I\+N\+A\+\_\+\+F\+A\+L\+S\+E, and E\+I\+N\+A\+\_\+\+T\+R\+U\+E.

\hypertarget{group__Eina__Matrix4_gac502822483eaf4ed97f15922b84f5383}{}\index{Matrices in floating point@{Matrices in floating point}!eina\+\_\+matrix4\+\_\+transpose@{eina\+\_\+matrix4\+\_\+transpose}}
\index{eina\+\_\+matrix4\+\_\+transpose@{eina\+\_\+matrix4\+\_\+transpose}!Matrices in floating point@{Matrices in floating point}}
\subsubsection[{eina\+\_\+matrix4\+\_\+transpose(\+Eina\+\_\+\+Matrix4 $\ast$out, const Eina\+\_\+\+Matrix4 $\ast$in)}]{\setlength{\rightskip}{0pt plus 5cm}{\bf E\+A\+P\+I} void eina\+\_\+matrix4\+\_\+transpose (
\begin{DoxyParamCaption}
\item[{{\bf Eina\+\_\+\+Matrix4} $\ast$}]{out, }
\item[{const {\bf Eina\+\_\+\+Matrix4} $\ast$}]{in}
\end{DoxyParamCaption}
)}\label{group__Eina__Matrix4_gac502822483eaf4ed97f15922b84f5383}


Return the transpose of the given matrix. 


\begin{DoxyParams}{Parameters}
{\em out} & The transpose matrix \\
\hline
{\em in} & The matrix.\\
\hline
\end{DoxyParams}
Just going to swap row and column.

\begin{DoxySince}{Since}
1.\+16 
\end{DoxySince}
\hypertarget{group__Eina__Matrix4_ga0ca6916f62bb08c601a635e131830d7c}{}\index{Matrices in floating point@{Matrices in floating point}!eina\+\_\+matrix4\+\_\+matrix3\+\_\+to@{eina\+\_\+matrix4\+\_\+matrix3\+\_\+to}}
\index{eina\+\_\+matrix4\+\_\+matrix3\+\_\+to@{eina\+\_\+matrix4\+\_\+matrix3\+\_\+to}!Matrices in floating point@{Matrices in floating point}}
\subsubsection[{eina\+\_\+matrix4\+\_\+matrix3\+\_\+to(\+Eina\+\_\+\+Matrix3 $\ast$m3, const Eina\+\_\+\+Matrix4 $\ast$m4)}]{\setlength{\rightskip}{0pt plus 5cm}{\bf E\+A\+P\+I} void eina\+\_\+matrix4\+\_\+matrix3\+\_\+to (
\begin{DoxyParamCaption}
\item[{{\bf Eina\+\_\+\+Matrix3} $\ast$}]{m3, }
\item[{const {\bf Eina\+\_\+\+Matrix4} $\ast$}]{m4}
\end{DoxyParamCaption}
)}\label{group__Eina__Matrix4_ga0ca6916f62bb08c601a635e131830d7c}


Convert an Eina\+\_\+\+Matrix4 into an Eina\+\_\+\+Matrix3. 


\begin{DoxyParams}{Parameters}
{\em m3} & The destination Eina\+\_\+\+Matrix3. \\
\hline
{\em m4} & The source Eina\+\_\+\+Matrix4.\\
\hline
\end{DoxyParams}
\begin{DoxySince}{Since}
1.\+15 
\end{DoxySince}
\hypertarget{group__Eina__Matrix4_ga5b1546fe16b1f8a3e6fff0ae2c093d00}{}\index{Matrices in floating point@{Matrices in floating point}!eina\+\_\+matrix3\+\_\+matrix4\+\_\+to@{eina\+\_\+matrix3\+\_\+matrix4\+\_\+to}}
\index{eina\+\_\+matrix3\+\_\+matrix4\+\_\+to@{eina\+\_\+matrix3\+\_\+matrix4\+\_\+to}!Matrices in floating point@{Matrices in floating point}}
\subsubsection[{eina\+\_\+matrix3\+\_\+matrix4\+\_\+to(\+Eina\+\_\+\+Matrix4 $\ast$m4, const Eina\+\_\+\+Matrix3 $\ast$m3)}]{\setlength{\rightskip}{0pt plus 5cm}{\bf E\+A\+P\+I} void eina\+\_\+matrix3\+\_\+matrix4\+\_\+to (
\begin{DoxyParamCaption}
\item[{{\bf Eina\+\_\+\+Matrix4} $\ast$}]{m4, }
\item[{const {\bf Eina\+\_\+\+Matrix3} $\ast$}]{m3}
\end{DoxyParamCaption}
)}\label{group__Eina__Matrix4_ga5b1546fe16b1f8a3e6fff0ae2c093d00}


Convert an Eina\+\_\+\+Matrix3 into an Eina\+\_\+\+Matrix4. 


\begin{DoxyParams}{Parameters}
{\em m3} & The destination Eina\+\_\+\+Matrix3. \\
\hline
{\em m4} & The source Eina\+\_\+\+Matrix4.\\
\hline
\end{DoxyParams}
\begin{DoxySince}{Since}
1.\+15 
\end{DoxySince}
\hypertarget{group__Eina__Matrix4_gaaf47679cf88dc83b8fb3507a0e058773}{}\index{Matrices in floating point@{Matrices in floating point}!eina\+\_\+matrix4\+\_\+identity@{eina\+\_\+matrix4\+\_\+identity}}
\index{eina\+\_\+matrix4\+\_\+identity@{eina\+\_\+matrix4\+\_\+identity}!Matrices in floating point@{Matrices in floating point}}
\subsubsection[{eina\+\_\+matrix4\+\_\+identity(\+Eina\+\_\+\+Matrix4 $\ast$out)}]{\setlength{\rightskip}{0pt plus 5cm}{\bf E\+A\+P\+I} void eina\+\_\+matrix4\+\_\+identity (
\begin{DoxyParamCaption}
\item[{{\bf Eina\+\_\+\+Matrix4} $\ast$}]{out}
\end{DoxyParamCaption}
)}\label{group__Eina__Matrix4_gaaf47679cf88dc83b8fb3507a0e058773}


Set an identity matrix. 


\begin{DoxyParams}{Parameters}
{\em out} & The matrix to set\\
\hline
\end{DoxyParams}
\begin{DoxySince}{Since}
1.\+16 
\end{DoxySince}
\hypertarget{group__Eina__Matrix4_gaacca4eb601271ed2b7eb26c0547639fe}{}\index{Matrices in floating point@{Matrices in floating point}!eina\+\_\+matrix4\+\_\+multiply@{eina\+\_\+matrix4\+\_\+multiply}}
\index{eina\+\_\+matrix4\+\_\+multiply@{eina\+\_\+matrix4\+\_\+multiply}!Matrices in floating point@{Matrices in floating point}}
\subsubsection[{eina\+\_\+matrix4\+\_\+multiply(\+Eina\+\_\+\+Matrix4 $\ast$out, const Eina\+\_\+\+Matrix4 $\ast$a, const Eina\+\_\+\+Matrix4 $\ast$b)}]{\setlength{\rightskip}{0pt plus 5cm}{\bf E\+A\+P\+I} void eina\+\_\+matrix4\+\_\+multiply (
\begin{DoxyParamCaption}
\item[{{\bf Eina\+\_\+\+Matrix4} $\ast$}]{out, }
\item[{const {\bf Eina\+\_\+\+Matrix4} $\ast$}]{a, }
\item[{const {\bf Eina\+\_\+\+Matrix4} $\ast$}]{b}
\end{DoxyParamCaption}
)}\label{group__Eina__Matrix4_gaacca4eb601271ed2b7eb26c0547639fe}


Multiply two matrix. 


\begin{DoxyParams}{Parameters}
{\em out} & The resulting matrix \\
\hline
{\em a} & The first member of the multiplication \\
\hline
{\em b} & The second member of the multiplication\\
\hline
\end{DoxyParams}
\begin{DoxySince}{Since}
1.\+16 
\end{DoxySince}
