\hypertarget{group__Eina__Vector2}{}\section{Vectors in floating point}
\label{group__Eina__Vector2}\index{Vectors in floating point@{Vectors in floating point}}


Vector definition and operations.  


\subsection*{Data Structures}
\begin{DoxyCompactItemize}
\item 
struct \hyperlink{struct__Eina__Vector2}{\+\_\+\+Eina\+\_\+\+Vector2}
\end{DoxyCompactItemize}
\subsection*{Functions}
\begin{DoxyCompactItemize}
\item 
static void \hyperlink{group__Eina__Vector2_gae38d75e8f305b13ef002ef0b5cfac558}{eina\+\_\+vector2\+\_\+set} (\hyperlink{struct__Eina__Vector2}{Eina\+\_\+\+Vector2} $\ast$dst, double x, double y)
\begin{DoxyCompactList}\small\item\em Set parameters to vector. \end{DoxyCompactList}\item 
static void \hyperlink{group__Eina__Vector2_gadb3dfcc2a843cdde59422f90037b7e54}{eina\+\_\+vector2\+\_\+array\+\_\+set} (\hyperlink{struct__Eina__Vector2}{Eina\+\_\+\+Vector2} $\ast$dst, const double $\ast$v)
\begin{DoxyCompactList}\small\item\em Set array to vector. \end{DoxyCompactList}\item 
static void \hyperlink{group__Eina__Vector2_ga08b62668951b03dcd65a9cad60794e79}{eina\+\_\+vector2\+\_\+copy} (\hyperlink{struct__Eina__Vector2}{Eina\+\_\+\+Vector2} $\ast$dst, const \hyperlink{struct__Eina__Vector2}{Eina\+\_\+\+Vector2} $\ast$src)
\begin{DoxyCompactList}\small\item\em Copy vector. \end{DoxyCompactList}\item 
static void \hyperlink{group__Eina__Vector2_ga3cf4fe1c9072de09501140127038a52b}{eina\+\_\+vector2\+\_\+negate} (\hyperlink{struct__Eina__Vector2}{Eina\+\_\+\+Vector2} $\ast$out, const \hyperlink{struct__Eina__Vector2}{Eina\+\_\+\+Vector2} $\ast$v)
\begin{DoxyCompactList}\small\item\em Make negative vector. \end{DoxyCompactList}\item 
static void \hyperlink{group__Eina__Vector2_ga918611a5f9c68549c98bf39e771610e6}{eina\+\_\+vector2\+\_\+add} (\hyperlink{struct__Eina__Vector2}{Eina\+\_\+\+Vector2} $\ast$out, const \hyperlink{struct__Eina__Vector2}{Eina\+\_\+\+Vector2} $\ast$a, const \hyperlink{struct__Eina__Vector2}{Eina\+\_\+\+Vector2} $\ast$b)
\begin{DoxyCompactList}\small\item\em Add two vectors. \end{DoxyCompactList}\item 
static void \hyperlink{group__Eina__Vector2_ga4845f984cd94138f6fcd848ba6496172}{eina\+\_\+vector2\+\_\+subtract} (\hyperlink{struct__Eina__Vector2}{Eina\+\_\+\+Vector2} $\ast$out, const \hyperlink{struct__Eina__Vector2}{Eina\+\_\+\+Vector2} $\ast$a, const \hyperlink{struct__Eina__Vector2}{Eina\+\_\+\+Vector2} $\ast$b)
\begin{DoxyCompactList}\small\item\em Subtract two vectors. \end{DoxyCompactList}\item 
static void \hyperlink{group__Eina__Vector2_gab606d190ccc07e533b7758cccdd80277}{eina\+\_\+vector2\+\_\+scale} (\hyperlink{struct__Eina__Vector2}{Eina\+\_\+\+Vector2} $\ast$out, const \hyperlink{struct__Eina__Vector2}{Eina\+\_\+\+Vector2} $\ast$v, double scale)
\begin{DoxyCompactList}\small\item\em Scale vector. \end{DoxyCompactList}\item 
static double \hyperlink{group__Eina__Vector2_ga971dd932689516a71b6e94cb8eb60537}{eina\+\_\+vector2\+\_\+dot\+\_\+product} (const \hyperlink{struct__Eina__Vector2}{Eina\+\_\+\+Vector2} $\ast$a, const \hyperlink{struct__Eina__Vector2}{Eina\+\_\+\+Vector2} $\ast$b)
\begin{DoxyCompactList}\small\item\em Return the dot product of the two vectors. \end{DoxyCompactList}\item 
static double \hyperlink{group__Eina__Vector2_ga102e39574ace00b0acf85108bdf7b0cc}{eina\+\_\+vector2\+\_\+length\+\_\+get} (const \hyperlink{struct__Eina__Vector2}{Eina\+\_\+\+Vector2} $\ast$v)
\begin{DoxyCompactList}\small\item\em Return the length of the given vector. \end{DoxyCompactList}\item 
static double \hyperlink{group__Eina__Vector2_gab37b4d279190a8a55b2aa764345707e1}{eina\+\_\+vector2\+\_\+length\+\_\+square\+\_\+get} (const \hyperlink{struct__Eina__Vector2}{Eina\+\_\+\+Vector2} $\ast$v)
\begin{DoxyCompactList}\small\item\em Return the length in square of the given vector. \end{DoxyCompactList}\item 
static double \hyperlink{group__Eina__Vector2_gaf91977a7970d27a27834a0d07cd0559f}{eina\+\_\+vector2\+\_\+distance\+\_\+get} (const \hyperlink{struct__Eina__Vector2}{Eina\+\_\+\+Vector2} $\ast$a, const \hyperlink{struct__Eina__Vector2}{Eina\+\_\+\+Vector2} $\ast$b)
\begin{DoxyCompactList}\small\item\em Return the distance between of two vectors. \end{DoxyCompactList}\item 
static double \hyperlink{group__Eina__Vector2_ga9a96d5f73a222b35329e17e15c4312d0}{eina\+\_\+vector2\+\_\+distance\+\_\+square\+\_\+get} (const \hyperlink{struct__Eina__Vector2}{Eina\+\_\+\+Vector2} $\ast$a, const \hyperlink{struct__Eina__Vector2}{Eina\+\_\+\+Vector2} $\ast$b)
\begin{DoxyCompactList}\small\item\em Return the distance in square between of two vectors. \end{DoxyCompactList}\item 
static void \hyperlink{group__Eina__Vector2_ga0a9192aff21abd1306e74efc9ea4c940}{eina\+\_\+vector2\+\_\+normalize} (\hyperlink{struct__Eina__Vector2}{Eina\+\_\+\+Vector2} $\ast$out, const \hyperlink{struct__Eina__Vector2}{Eina\+\_\+\+Vector2} $\ast$v)
\begin{DoxyCompactList}\small\item\em normalize vector. \end{DoxyCompactList}\item 
static void \hyperlink{group__Eina__Vector2_gaab36c2dccdb9e6a78872d6f4169290f3}{eina\+\_\+vector2\+\_\+transform} (\hyperlink{struct__Eina__Vector2}{Eina\+\_\+\+Vector2} $\ast$out, const \hyperlink{struct__Eina__Matrix2}{Eina\+\_\+\+Matrix2} $\ast$m, const \hyperlink{struct__Eina__Vector2}{Eina\+\_\+\+Vector2} $\ast$v)
\begin{DoxyCompactList}\small\item\em Transform vector. \end{DoxyCompactList}\item 
static void \hyperlink{group__Eina__Vector2_ga56fbeafe7f42fa04443b8442fc38d539}{eina\+\_\+vector2\+\_\+homogeneous\+\_\+position\+\_\+transform} (\hyperlink{struct__Eina__Vector2}{Eina\+\_\+\+Vector2} $\ast$out, const \hyperlink{group__Eina__Matrix3_ga7b643a47bf40554b991338bbc2597a98}{Eina\+\_\+\+Matrix3} $\ast$m, const \hyperlink{struct__Eina__Vector2}{Eina\+\_\+\+Vector2} $\ast$v)
\begin{DoxyCompactList}\small\item\em Homogeneous position transform vector. \end{DoxyCompactList}\item 
static void \hyperlink{group__Eina__Vector2_ga664bc9c76e55fa30fefe15caef744007}{eina\+\_\+vector2\+\_\+homogeneous\+\_\+direction\+\_\+transform} (\hyperlink{struct__Eina__Vector2}{Eina\+\_\+\+Vector2} $\ast$out, const \hyperlink{group__Eina__Matrix3_ga7b643a47bf40554b991338bbc2597a98}{Eina\+\_\+\+Matrix3} $\ast$m, const \hyperlink{struct__Eina__Vector2}{Eina\+\_\+\+Vector2} $\ast$v)
\begin{DoxyCompactList}\small\item\em Homogeneous direction ransform vector. \end{DoxyCompactList}\end{DoxyCompactItemize}


\subsection{Detailed Description}
Vector definition and operations. 



\subsection{Function Documentation}
\index{Vectors in floating point@{Vectors in floating point}!eina\+\_\+vector2\+\_\+set@{eina\+\_\+vector2\+\_\+set}}
\index{eina\+\_\+vector2\+\_\+set@{eina\+\_\+vector2\+\_\+set}!Vectors in floating point@{Vectors in floating point}}
\subsubsection[{\texorpdfstring{eina\+\_\+vector2\+\_\+set(\+Eina\+\_\+\+Vector2 $\ast$dst, double x, double y)}{eina_vector2_set(Eina_Vector2 *dst, double x, double y)}}]{\setlength{\rightskip}{0pt plus 5cm}static void eina\+\_\+vector2\+\_\+set (
\begin{DoxyParamCaption}
\item[{{\bf Eina\+\_\+\+Vector2} $\ast$}]{dst, }
\item[{double}]{x, }
\item[{double}]{y}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [static]}}\hypertarget{group__Eina__Vector2_gae38d75e8f305b13ef002ef0b5cfac558}{}\label{group__Eina__Vector2_gae38d75e8f305b13ef002ef0b5cfac558}


Set parameters to vector. 


\begin{DoxyParams}{Parameters}
{\em dst} & The resulting vector. \\
\hline
{\em x} & The x component. \\
\hline
{\em y} & The y component.\\
\hline
\end{DoxyParams}
\begin{DoxySince}{Since}
1.\+17 
\end{DoxySince}
\index{Vectors in floating point@{Vectors in floating point}!eina\+\_\+vector2\+\_\+array\+\_\+set@{eina\+\_\+vector2\+\_\+array\+\_\+set}}
\index{eina\+\_\+vector2\+\_\+array\+\_\+set@{eina\+\_\+vector2\+\_\+array\+\_\+set}!Vectors in floating point@{Vectors in floating point}}
\subsubsection[{\texorpdfstring{eina\+\_\+vector2\+\_\+array\+\_\+set(\+Eina\+\_\+\+Vector2 $\ast$dst, const double $\ast$v)}{eina_vector2_array_set(Eina_Vector2 *dst, const double *v)}}]{\setlength{\rightskip}{0pt plus 5cm}static void eina\+\_\+vector2\+\_\+array\+\_\+set (
\begin{DoxyParamCaption}
\item[{{\bf Eina\+\_\+\+Vector2} $\ast$}]{dst, }
\item[{const double $\ast$}]{v}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [static]}}\hypertarget{group__Eina__Vector2_gadb3dfcc2a843cdde59422f90037b7e54}{}\label{group__Eina__Vector2_gadb3dfcc2a843cdde59422f90037b7e54}


Set array to vector. 


\begin{DoxyParams}{Parameters}
{\em dst} & The resulting vector. \\
\hline
{\em v} & The the array\mbox{[}2\mbox{]} for set.\\
\hline
\end{DoxyParams}
Set to vector first 2 elements from array.

\begin{DoxySince}{Since}
1.\+17 
\end{DoxySince}
\index{Vectors in floating point@{Vectors in floating point}!eina\+\_\+vector2\+\_\+copy@{eina\+\_\+vector2\+\_\+copy}}
\index{eina\+\_\+vector2\+\_\+copy@{eina\+\_\+vector2\+\_\+copy}!Vectors in floating point@{Vectors in floating point}}
\subsubsection[{\texorpdfstring{eina\+\_\+vector2\+\_\+copy(\+Eina\+\_\+\+Vector2 $\ast$dst, const Eina\+\_\+\+Vector2 $\ast$src)}{eina_vector2_copy(Eina_Vector2 *dst, const Eina_Vector2 *src)}}]{\setlength{\rightskip}{0pt plus 5cm}static void eina\+\_\+vector2\+\_\+copy (
\begin{DoxyParamCaption}
\item[{{\bf Eina\+\_\+\+Vector2} $\ast$}]{dst, }
\item[{const {\bf Eina\+\_\+\+Vector2} $\ast$}]{src}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [static]}}\hypertarget{group__Eina__Vector2_ga08b62668951b03dcd65a9cad60794e79}{}\label{group__Eina__Vector2_ga08b62668951b03dcd65a9cad60794e79}


Copy vector. 


\begin{DoxyParams}{Parameters}
{\em dst} & The vector copy. \\
\hline
{\em src} & The vector for copy.\\
\hline
\end{DoxyParams}
\begin{DoxySince}{Since}
1.\+17 
\end{DoxySince}
\index{Vectors in floating point@{Vectors in floating point}!eina\+\_\+vector2\+\_\+negate@{eina\+\_\+vector2\+\_\+negate}}
\index{eina\+\_\+vector2\+\_\+negate@{eina\+\_\+vector2\+\_\+negate}!Vectors in floating point@{Vectors in floating point}}
\subsubsection[{\texorpdfstring{eina\+\_\+vector2\+\_\+negate(\+Eina\+\_\+\+Vector2 $\ast$out, const Eina\+\_\+\+Vector2 $\ast$v)}{eina_vector2_negate(Eina_Vector2 *out, const Eina_Vector2 *v)}}]{\setlength{\rightskip}{0pt plus 5cm}static void eina\+\_\+vector2\+\_\+negate (
\begin{DoxyParamCaption}
\item[{{\bf Eina\+\_\+\+Vector2} $\ast$}]{out, }
\item[{const {\bf Eina\+\_\+\+Vector2} $\ast$}]{v}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [static]}}\hypertarget{group__Eina__Vector2_ga3cf4fe1c9072de09501140127038a52b}{}\label{group__Eina__Vector2_ga3cf4fe1c9072de09501140127038a52b}


Make negative vector. 


\begin{DoxyParams}{Parameters}
{\em out} & The resulting vector. \\
\hline
{\em v} & The current vector.\\
\hline
\end{DoxyParams}
\begin{DoxySince}{Since}
1.\+17 
\end{DoxySince}
\index{Vectors in floating point@{Vectors in floating point}!eina\+\_\+vector2\+\_\+add@{eina\+\_\+vector2\+\_\+add}}
\index{eina\+\_\+vector2\+\_\+add@{eina\+\_\+vector2\+\_\+add}!Vectors in floating point@{Vectors in floating point}}
\subsubsection[{\texorpdfstring{eina\+\_\+vector2\+\_\+add(\+Eina\+\_\+\+Vector2 $\ast$out, const Eina\+\_\+\+Vector2 $\ast$a, const Eina\+\_\+\+Vector2 $\ast$b)}{eina_vector2_add(Eina_Vector2 *out, const Eina_Vector2 *a, const Eina_Vector2 *b)}}]{\setlength{\rightskip}{0pt plus 5cm}static void eina\+\_\+vector2\+\_\+add (
\begin{DoxyParamCaption}
\item[{{\bf Eina\+\_\+\+Vector2} $\ast$}]{out, }
\item[{const {\bf Eina\+\_\+\+Vector2} $\ast$}]{a, }
\item[{const {\bf Eina\+\_\+\+Vector2} $\ast$}]{b}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [static]}}\hypertarget{group__Eina__Vector2_ga918611a5f9c68549c98bf39e771610e6}{}\label{group__Eina__Vector2_ga918611a5f9c68549c98bf39e771610e6}


Add two vectors. 


\begin{DoxyParams}{Parameters}
{\em out} & The resulting vector. \\
\hline
{\em a} & The first member of the add. \\
\hline
{\em b} & The second member of the add.\\
\hline
\end{DoxyParams}
\begin{DoxySince}{Since}
1.\+17 
\end{DoxySince}
\index{Vectors in floating point@{Vectors in floating point}!eina\+\_\+vector2\+\_\+subtract@{eina\+\_\+vector2\+\_\+subtract}}
\index{eina\+\_\+vector2\+\_\+subtract@{eina\+\_\+vector2\+\_\+subtract}!Vectors in floating point@{Vectors in floating point}}
\subsubsection[{\texorpdfstring{eina\+\_\+vector2\+\_\+subtract(\+Eina\+\_\+\+Vector2 $\ast$out, const Eina\+\_\+\+Vector2 $\ast$a, const Eina\+\_\+\+Vector2 $\ast$b)}{eina_vector2_subtract(Eina_Vector2 *out, const Eina_Vector2 *a, const Eina_Vector2 *b)}}]{\setlength{\rightskip}{0pt plus 5cm}static void eina\+\_\+vector2\+\_\+subtract (
\begin{DoxyParamCaption}
\item[{{\bf Eina\+\_\+\+Vector2} $\ast$}]{out, }
\item[{const {\bf Eina\+\_\+\+Vector2} $\ast$}]{a, }
\item[{const {\bf Eina\+\_\+\+Vector2} $\ast$}]{b}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [static]}}\hypertarget{group__Eina__Vector2_ga4845f984cd94138f6fcd848ba6496172}{}\label{group__Eina__Vector2_ga4845f984cd94138f6fcd848ba6496172}


Subtract two vectors. 


\begin{DoxyParams}{Parameters}
{\em out} & The resulting vector \\
\hline
{\em a} & The first member of the subtract \\
\hline
{\em b} & The second member of the subtract\\
\hline
\end{DoxyParams}
\begin{DoxySince}{Since}
1.\+17 
\end{DoxySince}
\index{Vectors in floating point@{Vectors in floating point}!eina\+\_\+vector2\+\_\+scale@{eina\+\_\+vector2\+\_\+scale}}
\index{eina\+\_\+vector2\+\_\+scale@{eina\+\_\+vector2\+\_\+scale}!Vectors in floating point@{Vectors in floating point}}
\subsubsection[{\texorpdfstring{eina\+\_\+vector2\+\_\+scale(\+Eina\+\_\+\+Vector2 $\ast$out, const Eina\+\_\+\+Vector2 $\ast$v, double scale)}{eina_vector2_scale(Eina_Vector2 *out, const Eina_Vector2 *v, double scale)}}]{\setlength{\rightskip}{0pt plus 5cm}static void eina\+\_\+vector2\+\_\+scale (
\begin{DoxyParamCaption}
\item[{{\bf Eina\+\_\+\+Vector2} $\ast$}]{out, }
\item[{const {\bf Eina\+\_\+\+Vector2} $\ast$}]{v, }
\item[{double}]{scale}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [static]}}\hypertarget{group__Eina__Vector2_gab606d190ccc07e533b7758cccdd80277}{}\label{group__Eina__Vector2_gab606d190ccc07e533b7758cccdd80277}


Scale vector. 


\begin{DoxyParams}{Parameters}
{\em out} & The resulting vector. \\
\hline
{\em v} & The vector for scale. \\
\hline
{\em scale} & The scale value.\\
\hline
\end{DoxyParams}
\begin{DoxySince}{Since}
1.\+17 
\end{DoxySince}
\index{Vectors in floating point@{Vectors in floating point}!eina\+\_\+vector2\+\_\+dot\+\_\+product@{eina\+\_\+vector2\+\_\+dot\+\_\+product}}
\index{eina\+\_\+vector2\+\_\+dot\+\_\+product@{eina\+\_\+vector2\+\_\+dot\+\_\+product}!Vectors in floating point@{Vectors in floating point}}
\subsubsection[{\texorpdfstring{eina\+\_\+vector2\+\_\+dot\+\_\+product(const Eina\+\_\+\+Vector2 $\ast$a, const Eina\+\_\+\+Vector2 $\ast$b)}{eina_vector2_dot_product(const Eina_Vector2 *a, const Eina_Vector2 *b)}}]{\setlength{\rightskip}{0pt plus 5cm}static double eina\+\_\+vector2\+\_\+dot\+\_\+product (
\begin{DoxyParamCaption}
\item[{const {\bf Eina\+\_\+\+Vector2} $\ast$}]{a, }
\item[{const {\bf Eina\+\_\+\+Vector2} $\ast$}]{b}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [static]}}\hypertarget{group__Eina__Vector2_ga971dd932689516a71b6e94cb8eb60537}{}\label{group__Eina__Vector2_ga971dd932689516a71b6e94cb8eb60537}


Return the dot product of the two vectors. 


\begin{DoxyParams}{Parameters}
{\em a} & The first member. \\
\hline
{\em b} & The secondt member. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The dot product.
\end{DoxyReturn}
\begin{DoxySince}{Since}
1.\+17 
\end{DoxySince}
\index{Vectors in floating point@{Vectors in floating point}!eina\+\_\+vector2\+\_\+length\+\_\+get@{eina\+\_\+vector2\+\_\+length\+\_\+get}}
\index{eina\+\_\+vector2\+\_\+length\+\_\+get@{eina\+\_\+vector2\+\_\+length\+\_\+get}!Vectors in floating point@{Vectors in floating point}}
\subsubsection[{\texorpdfstring{eina\+\_\+vector2\+\_\+length\+\_\+get(const Eina\+\_\+\+Vector2 $\ast$v)}{eina_vector2_length_get(const Eina_Vector2 *v)}}]{\setlength{\rightskip}{0pt plus 5cm}static double eina\+\_\+vector2\+\_\+length\+\_\+get (
\begin{DoxyParamCaption}
\item[{const {\bf Eina\+\_\+\+Vector2} $\ast$}]{v}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [static]}}\hypertarget{group__Eina__Vector2_ga102e39574ace00b0acf85108bdf7b0cc}{}\label{group__Eina__Vector2_ga102e39574ace00b0acf85108bdf7b0cc}


Return the length of the given vector. 


\begin{DoxyParams}{Parameters}
{\em v} & The vector. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The length.
\end{DoxyReturn}
\begin{DoxySince}{Since}
1.\+17 
\end{DoxySince}
\index{Vectors in floating point@{Vectors in floating point}!eina\+\_\+vector2\+\_\+length\+\_\+square\+\_\+get@{eina\+\_\+vector2\+\_\+length\+\_\+square\+\_\+get}}
\index{eina\+\_\+vector2\+\_\+length\+\_\+square\+\_\+get@{eina\+\_\+vector2\+\_\+length\+\_\+square\+\_\+get}!Vectors in floating point@{Vectors in floating point}}
\subsubsection[{\texorpdfstring{eina\+\_\+vector2\+\_\+length\+\_\+square\+\_\+get(const Eina\+\_\+\+Vector2 $\ast$v)}{eina_vector2_length_square_get(const Eina_Vector2 *v)}}]{\setlength{\rightskip}{0pt plus 5cm}static double eina\+\_\+vector2\+\_\+length\+\_\+square\+\_\+get (
\begin{DoxyParamCaption}
\item[{const {\bf Eina\+\_\+\+Vector2} $\ast$}]{v}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [static]}}\hypertarget{group__Eina__Vector2_gab37b4d279190a8a55b2aa764345707e1}{}\label{group__Eina__Vector2_gab37b4d279190a8a55b2aa764345707e1}


Return the length in square of the given vector. 


\begin{DoxyParams}{Parameters}
{\em v} & The vector. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The length in square.
\end{DoxyReturn}
\begin{DoxySince}{Since}
1.\+17 
\end{DoxySince}
\index{Vectors in floating point@{Vectors in floating point}!eina\+\_\+vector2\+\_\+distance\+\_\+get@{eina\+\_\+vector2\+\_\+distance\+\_\+get}}
\index{eina\+\_\+vector2\+\_\+distance\+\_\+get@{eina\+\_\+vector2\+\_\+distance\+\_\+get}!Vectors in floating point@{Vectors in floating point}}
\subsubsection[{\texorpdfstring{eina\+\_\+vector2\+\_\+distance\+\_\+get(const Eina\+\_\+\+Vector2 $\ast$a, const Eina\+\_\+\+Vector2 $\ast$b)}{eina_vector2_distance_get(const Eina_Vector2 *a, const Eina_Vector2 *b)}}]{\setlength{\rightskip}{0pt plus 5cm}static double eina\+\_\+vector2\+\_\+distance\+\_\+get (
\begin{DoxyParamCaption}
\item[{const {\bf Eina\+\_\+\+Vector2} $\ast$}]{a, }
\item[{const {\bf Eina\+\_\+\+Vector2} $\ast$}]{b}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [static]}}\hypertarget{group__Eina__Vector2_gaf91977a7970d27a27834a0d07cd0559f}{}\label{group__Eina__Vector2_gaf91977a7970d27a27834a0d07cd0559f}


Return the distance between of two vectors. 


\begin{DoxyParams}{Parameters}
{\em a} & The first vector. \\
\hline
{\em b} & The second vector. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The distance.
\end{DoxyReturn}
\begin{DoxySince}{Since}
1.\+17 
\end{DoxySince}
\index{Vectors in floating point@{Vectors in floating point}!eina\+\_\+vector2\+\_\+distance\+\_\+square\+\_\+get@{eina\+\_\+vector2\+\_\+distance\+\_\+square\+\_\+get}}
\index{eina\+\_\+vector2\+\_\+distance\+\_\+square\+\_\+get@{eina\+\_\+vector2\+\_\+distance\+\_\+square\+\_\+get}!Vectors in floating point@{Vectors in floating point}}
\subsubsection[{\texorpdfstring{eina\+\_\+vector2\+\_\+distance\+\_\+square\+\_\+get(const Eina\+\_\+\+Vector2 $\ast$a, const Eina\+\_\+\+Vector2 $\ast$b)}{eina_vector2_distance_square_get(const Eina_Vector2 *a, const Eina_Vector2 *b)}}]{\setlength{\rightskip}{0pt plus 5cm}static double eina\+\_\+vector2\+\_\+distance\+\_\+square\+\_\+get (
\begin{DoxyParamCaption}
\item[{const {\bf Eina\+\_\+\+Vector2} $\ast$}]{a, }
\item[{const {\bf Eina\+\_\+\+Vector2} $\ast$}]{b}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [static]}}\hypertarget{group__Eina__Vector2_ga9a96d5f73a222b35329e17e15c4312d0}{}\label{group__Eina__Vector2_ga9a96d5f73a222b35329e17e15c4312d0}


Return the distance in square between of two vectors. 


\begin{DoxyParams}{Parameters}
{\em a} & The first vector. \\
\hline
{\em b} & The second vector. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The distance in square.
\end{DoxyReturn}
\begin{DoxySince}{Since}
1.\+17 
\end{DoxySince}
\index{Vectors in floating point@{Vectors in floating point}!eina\+\_\+vector2\+\_\+normalize@{eina\+\_\+vector2\+\_\+normalize}}
\index{eina\+\_\+vector2\+\_\+normalize@{eina\+\_\+vector2\+\_\+normalize}!Vectors in floating point@{Vectors in floating point}}
\subsubsection[{\texorpdfstring{eina\+\_\+vector2\+\_\+normalize(\+Eina\+\_\+\+Vector2 $\ast$out, const Eina\+\_\+\+Vector2 $\ast$v)}{eina_vector2_normalize(Eina_Vector2 *out, const Eina_Vector2 *v)}}]{\setlength{\rightskip}{0pt plus 5cm}static void eina\+\_\+vector2\+\_\+normalize (
\begin{DoxyParamCaption}
\item[{{\bf Eina\+\_\+\+Vector2} $\ast$}]{out, }
\item[{const {\bf Eina\+\_\+\+Vector2} $\ast$}]{v}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [static]}}\hypertarget{group__Eina__Vector2_ga0a9192aff21abd1306e74efc9ea4c940}{}\label{group__Eina__Vector2_ga0a9192aff21abd1306e74efc9ea4c940}


normalize vector. 


\begin{DoxyParams}{Parameters}
{\em out} & The resulting vector. \\
\hline
{\em v} & The vector for normalize.\\
\hline
\end{DoxyParams}
\begin{DoxySince}{Since}
1.\+17 
\end{DoxySince}
\index{Vectors in floating point@{Vectors in floating point}!eina\+\_\+vector2\+\_\+transform@{eina\+\_\+vector2\+\_\+transform}}
\index{eina\+\_\+vector2\+\_\+transform@{eina\+\_\+vector2\+\_\+transform}!Vectors in floating point@{Vectors in floating point}}
\subsubsection[{\texorpdfstring{eina\+\_\+vector2\+\_\+transform(\+Eina\+\_\+\+Vector2 $\ast$out, const Eina\+\_\+\+Matrix2 $\ast$m, const Eina\+\_\+\+Vector2 $\ast$v)}{eina_vector2_transform(Eina_Vector2 *out, const Eina_Matrix2 *m, const Eina_Vector2 *v)}}]{\setlength{\rightskip}{0pt plus 5cm}static void eina\+\_\+vector2\+\_\+transform (
\begin{DoxyParamCaption}
\item[{{\bf Eina\+\_\+\+Vector2} $\ast$}]{out, }
\item[{const {\bf Eina\+\_\+\+Matrix2} $\ast$}]{m, }
\item[{const {\bf Eina\+\_\+\+Vector2} $\ast$}]{v}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [static]}}\hypertarget{group__Eina__Vector2_gaab36c2dccdb9e6a78872d6f4169290f3}{}\label{group__Eina__Vector2_gaab36c2dccdb9e6a78872d6f4169290f3}


Transform vector. 


\begin{DoxyParams}{Parameters}
{\em out} & The resulting vector. \\
\hline
{\em m} & The matrix for transform. \\
\hline
{\em v} & The ector for transform.\\
\hline
\end{DoxyParams}
\begin{DoxySince}{Since}
1.\+17 
\end{DoxySince}
\index{Vectors in floating point@{Vectors in floating point}!eina\+\_\+vector2\+\_\+homogeneous\+\_\+position\+\_\+transform@{eina\+\_\+vector2\+\_\+homogeneous\+\_\+position\+\_\+transform}}
\index{eina\+\_\+vector2\+\_\+homogeneous\+\_\+position\+\_\+transform@{eina\+\_\+vector2\+\_\+homogeneous\+\_\+position\+\_\+transform}!Vectors in floating point@{Vectors in floating point}}
\subsubsection[{\texorpdfstring{eina\+\_\+vector2\+\_\+homogeneous\+\_\+position\+\_\+transform(\+Eina\+\_\+\+Vector2 $\ast$out, const Eina\+\_\+\+Matrix3 $\ast$m, const Eina\+\_\+\+Vector2 $\ast$v)}{eina_vector2_homogeneous_position_transform(Eina_Vector2 *out, const Eina_Matrix3 *m, const Eina_Vector2 *v)}}]{\setlength{\rightskip}{0pt plus 5cm}static void eina\+\_\+vector2\+\_\+homogeneous\+\_\+position\+\_\+transform (
\begin{DoxyParamCaption}
\item[{{\bf Eina\+\_\+\+Vector2} $\ast$}]{out, }
\item[{const {\bf Eina\+\_\+\+Matrix3} $\ast$}]{m, }
\item[{const {\bf Eina\+\_\+\+Vector2} $\ast$}]{v}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [static]}}\hypertarget{group__Eina__Vector2_ga56fbeafe7f42fa04443b8442fc38d539}{}\label{group__Eina__Vector2_ga56fbeafe7f42fa04443b8442fc38d539}


Homogeneous position transform vector. 


\begin{DoxyParams}{Parameters}
{\em out} & The resulting vector. \\
\hline
{\em m} & The matrix for transform. \\
\hline
{\em v} & The ector for transform.\\
\hline
\end{DoxyParams}
\begin{DoxySince}{Since}
1.\+17 
\end{DoxySince}
\index{Vectors in floating point@{Vectors in floating point}!eina\+\_\+vector2\+\_\+homogeneous\+\_\+direction\+\_\+transform@{eina\+\_\+vector2\+\_\+homogeneous\+\_\+direction\+\_\+transform}}
\index{eina\+\_\+vector2\+\_\+homogeneous\+\_\+direction\+\_\+transform@{eina\+\_\+vector2\+\_\+homogeneous\+\_\+direction\+\_\+transform}!Vectors in floating point@{Vectors in floating point}}
\subsubsection[{\texorpdfstring{eina\+\_\+vector2\+\_\+homogeneous\+\_\+direction\+\_\+transform(\+Eina\+\_\+\+Vector2 $\ast$out, const Eina\+\_\+\+Matrix3 $\ast$m, const Eina\+\_\+\+Vector2 $\ast$v)}{eina_vector2_homogeneous_direction_transform(Eina_Vector2 *out, const Eina_Matrix3 *m, const Eina_Vector2 *v)}}]{\setlength{\rightskip}{0pt plus 5cm}static void eina\+\_\+vector2\+\_\+homogeneous\+\_\+direction\+\_\+transform (
\begin{DoxyParamCaption}
\item[{{\bf Eina\+\_\+\+Vector2} $\ast$}]{out, }
\item[{const {\bf Eina\+\_\+\+Matrix3} $\ast$}]{m, }
\item[{const {\bf Eina\+\_\+\+Vector2} $\ast$}]{v}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [static]}}\hypertarget{group__Eina__Vector2_ga664bc9c76e55fa30fefe15caef744007}{}\label{group__Eina__Vector2_ga664bc9c76e55fa30fefe15caef744007}


Homogeneous direction ransform vector. 


\begin{DoxyParams}{Parameters}
{\em out} & The resulting vector. \\
\hline
{\em m} & The matrix for transform. \\
\hline
{\em v} & The ector for transform.\\
\hline
\end{DoxyParams}
\begin{DoxySince}{Since}
1.\+17 
\end{DoxySince}
