\doxysubsubsection{Bezier Curve}
\hypertarget{group__Eina__Bezier__Group}{}\label{group__Eina__Bezier__Group}\index{Bezier Curve@{Bezier Curve}}
\doxysubsubsubsubsection*{Data Structures}
\begin{DoxyCompactItemize}
\item 
struct \mbox{\hyperlink{struct__Eina__Bezier}{\+\_\+\+Eina\+\_\+\+Bezier}}
\end{DoxyCompactItemize}
\doxysubsubsubsubsection*{Typedefs}
\begin{DoxyCompactItemize}
\item 
\Hypertarget{group__Eina__Bezier__Group_gae7355b5d4e854353bb91e04565978f50}\label{group__Eina__Bezier__Group_gae7355b5d4e854353bb91e04565978f50} 
typedef struct \mbox{\hyperlink{struct__Eina__Bezier}{\+\_\+\+Eina\+\_\+\+Bezier}} {\bfseries Eina\+\_\+\+Bezier}
\begin{DoxyCompactList}\small\item\em Floating point cubic bezier curve. \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsubsubsubsection*{Functions}
\begin{DoxyCompactItemize}
\item 
\mbox{\hyperlink{group__Eina__Types__Group_ga6ac08753ba12bc9c7a0390cf67868f4f}{EINA\+\_\+\+API}} void \mbox{\hyperlink{group__Eina__Bezier__Group_ga92be1b2384e6812f1e5b3a9eb486ffd3}{eina\+\_\+bezier\+\_\+values\+\_\+set}} (\mbox{\hyperlink{group__Eina__Bezier__Group_gae7355b5d4e854353bb91e04565978f50}{Eina\+\_\+\+Bezier}} \texorpdfstring{$\ast$}{*}b, double start\+\_\+x, double start\+\_\+y, double ctrl\+\_\+start\+\_\+x, double ctrl\+\_\+start\+\_\+y, double ctrl\+\_\+end\+\_\+x, double ctrl\+\_\+end\+\_\+y, double end\+\_\+x, double end\+\_\+y)
\begin{DoxyCompactList}\small\item\em Sets the values of the points of the given floating point cubic bezier curve. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__Eina__Types__Group_ga6ac08753ba12bc9c7a0390cf67868f4f}{EINA\+\_\+\+API}} void \mbox{\hyperlink{group__Eina__Bezier__Group_ga3a47281a7f30205a897a342e3625b593}{eina\+\_\+bezier\+\_\+values\+\_\+get}} (const \mbox{\hyperlink{group__Eina__Bezier__Group_gae7355b5d4e854353bb91e04565978f50}{Eina\+\_\+\+Bezier}} \texorpdfstring{$\ast$}{*}b, double \texorpdfstring{$\ast$}{*}start\+\_\+x, double \texorpdfstring{$\ast$}{*}start\+\_\+y, double \texorpdfstring{$\ast$}{*}ctrl\+\_\+start\+\_\+x, double \texorpdfstring{$\ast$}{*}ctrl\+\_\+start\+\_\+y, double \texorpdfstring{$\ast$}{*}ctrl\+\_\+end\+\_\+x, double \texorpdfstring{$\ast$}{*}ctrl\+\_\+end\+\_\+y, double \texorpdfstring{$\ast$}{*}end\+\_\+x, double \texorpdfstring{$\ast$}{*}end\+\_\+y)
\begin{DoxyCompactList}\small\item\em Gets the values of the points of the given floating point cubic bezier curve. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__Eina__Types__Group_ga6ac08753ba12bc9c7a0390cf67868f4f}{EINA\+\_\+\+API}} double \mbox{\hyperlink{group__Eina__Bezier__Group_gae7f91ec1f8f4dba24c0116aa4211527b}{eina\+\_\+bezier\+\_\+length\+\_\+get}} (const \mbox{\hyperlink{group__Eina__Bezier__Group_gae7355b5d4e854353bb91e04565978f50}{Eina\+\_\+\+Bezier}} \texorpdfstring{$\ast$}{*}b)
\begin{DoxyCompactList}\small\item\em Calculates the approximate length of the given floating point cubic bezier curve. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__Eina__Types__Group_ga6ac08753ba12bc9c7a0390cf67868f4f}{EINA\+\_\+\+API}} double \mbox{\hyperlink{group__Eina__Bezier__Group_ga83fe28eed613593cc171665d33a2765d}{eina\+\_\+bezier\+\_\+t\+\_\+at}} (const \mbox{\hyperlink{group__Eina__Bezier__Group_gae7355b5d4e854353bb91e04565978f50}{Eina\+\_\+\+Bezier}} \texorpdfstring{$\ast$}{*}b, double len)
\begin{DoxyCompactList}\small\item\em Returns the relative position on a bezier at a given length. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__Eina__Types__Group_ga6ac08753ba12bc9c7a0390cf67868f4f}{EINA\+\_\+\+API}} void \mbox{\hyperlink{group__Eina__Bezier__Group_gafc246b36ec3eec58d17b1473384ea347}{eina\+\_\+bezier\+\_\+point\+\_\+at}} (const \mbox{\hyperlink{group__Eina__Bezier__Group_gae7355b5d4e854353bb91e04565978f50}{Eina\+\_\+\+Bezier}} \texorpdfstring{$\ast$}{*}b, double t, double \texorpdfstring{$\ast$}{*}px, double \texorpdfstring{$\ast$}{*}py)
\begin{DoxyCompactList}\small\item\em Gets the point on the bezier curve at position t. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__Eina__Types__Group_ga6ac08753ba12bc9c7a0390cf67868f4f}{EINA\+\_\+\+API}} double \mbox{\hyperlink{group__Eina__Bezier__Group_ga8451ade04c4895480b73f4b3d53a2ba9}{eina\+\_\+bezier\+\_\+angle\+\_\+at}} (const \mbox{\hyperlink{group__Eina__Bezier__Group_gae7355b5d4e854353bb91e04565978f50}{Eina\+\_\+\+Bezier}} \texorpdfstring{$\ast$}{*}b, double t)
\begin{DoxyCompactList}\small\item\em Determines the slope of the bezier at a given position. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__Eina__Types__Group_ga6ac08753ba12bc9c7a0390cf67868f4f}{EINA\+\_\+\+API}} void \mbox{\hyperlink{group__Eina__Bezier__Group_ga312e3630665600591754c9d47c8432ba}{eina\+\_\+bezier\+\_\+split\+\_\+at\+\_\+length}} (const \mbox{\hyperlink{group__Eina__Bezier__Group_gae7355b5d4e854353bb91e04565978f50}{Eina\+\_\+\+Bezier}} \texorpdfstring{$\ast$}{*}b, double len, \mbox{\hyperlink{group__Eina__Bezier__Group_gae7355b5d4e854353bb91e04565978f50}{Eina\+\_\+\+Bezier}} \texorpdfstring{$\ast$}{*}left, \mbox{\hyperlink{group__Eina__Bezier__Group_gae7355b5d4e854353bb91e04565978f50}{Eina\+\_\+\+Bezier}} \texorpdfstring{$\ast$}{*}right)
\begin{DoxyCompactList}\small\item\em Splits the bezier at a given length. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__Eina__Types__Group_ga6ac08753ba12bc9c7a0390cf67868f4f}{EINA\+\_\+\+API}} void \mbox{\hyperlink{group__Eina__Bezier__Group_gaa5e472b3fa6b10997d0e92ea56207e5e}{eina\+\_\+bezier\+\_\+bounds\+\_\+get}} (const \mbox{\hyperlink{group__Eina__Bezier__Group_gae7355b5d4e854353bb91e04565978f50}{Eina\+\_\+\+Bezier}} \texorpdfstring{$\ast$}{*}b, double \texorpdfstring{$\ast$}{*}x, double \texorpdfstring{$\ast$}{*}y, double \texorpdfstring{$\ast$}{*}w, double \texorpdfstring{$\ast$}{*}h)
\begin{DoxyCompactList}\small\item\em Calculates the bounding box for the bezier. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__Eina__Types__Group_ga6ac08753ba12bc9c7a0390cf67868f4f}{EINA\+\_\+\+API}} void \mbox{\hyperlink{group__Eina__Bezier__Group_ga1bea2c1cc1b9acd9dee6edf8a8c2750d}{eina\+\_\+bezier\+\_\+on\+\_\+interval}} (\mbox{\hyperlink{group__Eina__Bezier__Group_gae7355b5d4e854353bb91e04565978f50}{Eina\+\_\+\+Bezier}} \texorpdfstring{$\ast$}{*}b, double t0, double t1, \mbox{\hyperlink{group__Eina__Bezier__Group_gae7355b5d4e854353bb91e04565978f50}{Eina\+\_\+\+Bezier}} \texorpdfstring{$\ast$}{*}result)
\begin{DoxyCompactList}\small\item\em Finds the bezier between the given interval. \end{DoxyCompactList}\end{DoxyCompactItemize}


\doxysubsubsubsection{Detailed Description}




\doxysubsubsubsection{Function Documentation}
\Hypertarget{group__Eina__Bezier__Group_ga92be1b2384e6812f1e5b3a9eb486ffd3}\label{group__Eina__Bezier__Group_ga92be1b2384e6812f1e5b3a9eb486ffd3} 
\index{Bezier Curve@{Bezier Curve}!eina\_bezier\_values\_set@{eina\_bezier\_values\_set}}
\index{eina\_bezier\_values\_set@{eina\_bezier\_values\_set}!Bezier Curve@{Bezier Curve}}
\doxysubsubsubsubsection{\texorpdfstring{eina\_bezier\_values\_set()}{eina\_bezier\_values\_set()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Eina__Types__Group_ga6ac08753ba12bc9c7a0390cf67868f4f}{EINA\+\_\+\+API}} void eina\+\_\+bezier\+\_\+values\+\_\+set (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Eina__Bezier__Group_gae7355b5d4e854353bb91e04565978f50}{Eina\+\_\+\+Bezier}} \texorpdfstring{$\ast$}{*}}]{b,  }\item[{double}]{start\+\_\+x,  }\item[{double}]{start\+\_\+y,  }\item[{double}]{ctrl\+\_\+start\+\_\+x,  }\item[{double}]{ctrl\+\_\+start\+\_\+y,  }\item[{double}]{ctrl\+\_\+end\+\_\+x,  }\item[{double}]{ctrl\+\_\+end\+\_\+y,  }\item[{double}]{end\+\_\+x,  }\item[{double}]{end\+\_\+y }\end{DoxyParamCaption})}



Sets the values of the points of the given floating point cubic bezier curve. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ out}}  & {\em b} & The floating point bezier. \\
\hline
\mbox{\texttt{ in}}  & {\em start\+\_\+x} & The x coordinate of the start point. \\
\hline
\mbox{\texttt{ in}}  & {\em start\+\_\+y} & The y coordinate of the start point. \\
\hline
\mbox{\texttt{ in}}  & {\em ctrl\+\_\+start\+\_\+x} & The x coordinate of the 1st control point. \\
\hline
\mbox{\texttt{ in}}  & {\em ctrl\+\_\+start\+\_\+y} & The y coordinate of the 1st control point. \\
\hline
\mbox{\texttt{ in}}  & {\em ctrl\+\_\+end\+\_\+x} & The X coordinate of the 2nd control point. \\
\hline
\mbox{\texttt{ in}}  & {\em ctrl\+\_\+end\+\_\+y} & The Y coordinate of the 2nd control point. \\
\hline
\mbox{\texttt{ in}}  & {\em end\+\_\+x} & The X coordinate of the end point. \\
\hline
\mbox{\texttt{ in}}  & {\em end\+\_\+y} & The Y coordinate of the end point.\\
\hline
\end{DoxyParams}
{\ttfamily b}. No check is done on {\ttfamily b}. \begin{DoxySince}{Since}
1.\+16 
\end{DoxySince}
\Hypertarget{group__Eina__Bezier__Group_ga3a47281a7f30205a897a342e3625b593}\label{group__Eina__Bezier__Group_ga3a47281a7f30205a897a342e3625b593} 
\index{Bezier Curve@{Bezier Curve}!eina\_bezier\_values\_get@{eina\_bezier\_values\_get}}
\index{eina\_bezier\_values\_get@{eina\_bezier\_values\_get}!Bezier Curve@{Bezier Curve}}
\doxysubsubsubsubsection{\texorpdfstring{eina\_bezier\_values\_get()}{eina\_bezier\_values\_get()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Eina__Types__Group_ga6ac08753ba12bc9c7a0390cf67868f4f}{EINA\+\_\+\+API}} void eina\+\_\+bezier\+\_\+values\+\_\+get (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{group__Eina__Bezier__Group_gae7355b5d4e854353bb91e04565978f50}{Eina\+\_\+\+Bezier}} \texorpdfstring{$\ast$}{*}}]{b,  }\item[{double \texorpdfstring{$\ast$}{*}}]{start\+\_\+x,  }\item[{double \texorpdfstring{$\ast$}{*}}]{start\+\_\+y,  }\item[{double \texorpdfstring{$\ast$}{*}}]{ctrl\+\_\+start\+\_\+x,  }\item[{double \texorpdfstring{$\ast$}{*}}]{ctrl\+\_\+start\+\_\+y,  }\item[{double \texorpdfstring{$\ast$}{*}}]{ctrl\+\_\+end\+\_\+x,  }\item[{double \texorpdfstring{$\ast$}{*}}]{ctrl\+\_\+end\+\_\+y,  }\item[{double \texorpdfstring{$\ast$}{*}}]{end\+\_\+x,  }\item[{double \texorpdfstring{$\ast$}{*}}]{end\+\_\+y }\end{DoxyParamCaption})}



Gets the values of the points of the given floating point cubic bezier curve. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em b} & The floating point bezier. \\
\hline
\mbox{\texttt{ out}}  & {\em start\+\_\+x} & x coordinate of start point. \\
\hline
\mbox{\texttt{ out}}  & {\em start\+\_\+y} & y coordinate of start point. \\
\hline
\mbox{\texttt{ out}}  & {\em ctrl\+\_\+start\+\_\+x} & x coordinate of 1st control point. \\
\hline
\mbox{\texttt{ out}}  & {\em ctrl\+\_\+start\+\_\+y} & y coordinate of 1st control point. \\
\hline
\mbox{\texttt{ out}}  & {\em ctrl\+\_\+end\+\_\+x} & x coordinate of 2nd control point. \\
\hline
\mbox{\texttt{ out}}  & {\em ctrl\+\_\+end\+\_\+y} & y coordinate of 2nd control point. \\
\hline
\mbox{\texttt{ out}}  & {\em end\+\_\+x} & x coordinate of end point. \\
\hline
\mbox{\texttt{ out}}  & {\em end\+\_\+y} & y coordinate of end point.\\
\hline
\end{DoxyParams}
{\ttfamily b}. No check is done on {\ttfamily b}. \begin{DoxySince}{Since}
1.\+16 
\end{DoxySince}
\Hypertarget{group__Eina__Bezier__Group_gae7f91ec1f8f4dba24c0116aa4211527b}\label{group__Eina__Bezier__Group_gae7f91ec1f8f4dba24c0116aa4211527b} 
\index{Bezier Curve@{Bezier Curve}!eina\_bezier\_length\_get@{eina\_bezier\_length\_get}}
\index{eina\_bezier\_length\_get@{eina\_bezier\_length\_get}!Bezier Curve@{Bezier Curve}}
\doxysubsubsubsubsection{\texorpdfstring{eina\_bezier\_length\_get()}{eina\_bezier\_length\_get()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Eina__Types__Group_ga6ac08753ba12bc9c7a0390cf67868f4f}{EINA\+\_\+\+API}} double eina\+\_\+bezier\+\_\+length\+\_\+get (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{group__Eina__Bezier__Group_gae7355b5d4e854353bb91e04565978f50}{Eina\+\_\+\+Bezier}} \texorpdfstring{$\ast$}{*}}]{b }\end{DoxyParamCaption})}



Calculates the approximate length of the given floating point cubic bezier curve. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em b} & The floating point bezier. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The bezier\textquotesingle{}s length.
\end{DoxyReturn}
The curve length is approximated using the Alpha max plus beta min algorithm, which is designed to give fast results with a maximum error of less than 7\% compared with the correct value.

No check is done on {\ttfamily b}. \begin{DoxySince}{Since}
1.\+16 
\end{DoxySince}


Referenced by \mbox{\hyperlink{group__Eina__Bezier__Group_ga83fe28eed613593cc171665d33a2765d}{eina\+\_\+bezier\+\_\+t\+\_\+at()}}.

\Hypertarget{group__Eina__Bezier__Group_ga83fe28eed613593cc171665d33a2765d}\label{group__Eina__Bezier__Group_ga83fe28eed613593cc171665d33a2765d} 
\index{Bezier Curve@{Bezier Curve}!eina\_bezier\_t\_at@{eina\_bezier\_t\_at}}
\index{eina\_bezier\_t\_at@{eina\_bezier\_t\_at}!Bezier Curve@{Bezier Curve}}
\doxysubsubsubsubsection{\texorpdfstring{eina\_bezier\_t\_at()}{eina\_bezier\_t\_at()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Eina__Types__Group_ga6ac08753ba12bc9c7a0390cf67868f4f}{EINA\+\_\+\+API}} double eina\+\_\+bezier\+\_\+t\+\_\+at (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{group__Eina__Bezier__Group_gae7355b5d4e854353bb91e04565978f50}{Eina\+\_\+\+Bezier}} \texorpdfstring{$\ast$}{*}}]{b,  }\item[{double}]{len }\end{DoxyParamCaption})}



Returns the relative position on a bezier at a given length. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em b} & The floating point bezier. \\
\hline
\mbox{\texttt{ in}}  & {\em len} & The length along the bezier curve. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The relative position from 0.\+0 to 1.\+0.
\end{DoxyReturn}
Calculates the proportional location on {\ttfamily b} as a number from 0.\+0 to 1.\+0 that corresponds to a distance {\ttfamily len} along it. Returns 1.\+0 if {\ttfamily len} is equal or greater than the bezier\textquotesingle{}s length.

No check is done on {\ttfamily b}.

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


References \mbox{\hyperlink{group__Eina__Bezier__Group_gae7f91ec1f8f4dba24c0116aa4211527b}{eina\+\_\+bezier\+\_\+length\+\_\+get()}}, and \mbox{\hyperlink{group__Eina__Tools__Group_ga6bee37244b675b83d6a4f044a7a3d1e8}{EINA\+\_\+\+DBL\+\_\+\+EQ}}.



Referenced by \mbox{\hyperlink{group__Eina__Bezier__Group_ga312e3630665600591754c9d47c8432ba}{eina\+\_\+bezier\+\_\+split\+\_\+at\+\_\+length()}}.

\Hypertarget{group__Eina__Bezier__Group_gafc246b36ec3eec58d17b1473384ea347}\label{group__Eina__Bezier__Group_gafc246b36ec3eec58d17b1473384ea347} 
\index{Bezier Curve@{Bezier Curve}!eina\_bezier\_point\_at@{eina\_bezier\_point\_at}}
\index{eina\_bezier\_point\_at@{eina\_bezier\_point\_at}!Bezier Curve@{Bezier Curve}}
\doxysubsubsubsubsection{\texorpdfstring{eina\_bezier\_point\_at()}{eina\_bezier\_point\_at()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Eina__Types__Group_ga6ac08753ba12bc9c7a0390cf67868f4f}{EINA\+\_\+\+API}} void eina\+\_\+bezier\+\_\+point\+\_\+at (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{group__Eina__Bezier__Group_gae7355b5d4e854353bb91e04565978f50}{Eina\+\_\+\+Bezier}} \texorpdfstring{$\ast$}{*}}]{b,  }\item[{double}]{t,  }\item[{double \texorpdfstring{$\ast$}{*}}]{px,  }\item[{double \texorpdfstring{$\ast$}{*}}]{py }\end{DoxyParamCaption})}



Gets the point on the bezier curve at position t. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em b} & The floating point bezier. \\
\hline
\mbox{\texttt{ in}}  & {\em t} & The floating point position between 0.\+0 and 1.\+0. \\
\hline
\mbox{\texttt{ out}}  & {\em px} & The corresponding point\textquotesingle{}s X coordinate. \\
\hline
\mbox{\texttt{ out}}  & {\em py} & The corresponding point\textquotesingle{}s Y coordinate.\\
\hline
\end{DoxyParams}
No check is done on {\ttfamily b}. \begin{DoxySince}{Since}
1.\+16 
\end{DoxySince}


References \mbox{\hyperlink{struct__Eina__Bezier_a2d5ade333f1b2d05d4ab433340ba6ab3}{\+\_\+\+Eina\+\_\+\+Bezier\+::x}}, and \mbox{\hyperlink{struct__Eina__Bezier_a12fa1ca693d5c446038b18c96769cac6}{\+\_\+\+Eina\+\_\+\+Bezier\+::y}}.

\Hypertarget{group__Eina__Bezier__Group_ga8451ade04c4895480b73f4b3d53a2ba9}\label{group__Eina__Bezier__Group_ga8451ade04c4895480b73f4b3d53a2ba9} 
\index{Bezier Curve@{Bezier Curve}!eina\_bezier\_angle\_at@{eina\_bezier\_angle\_at}}
\index{eina\_bezier\_angle\_at@{eina\_bezier\_angle\_at}!Bezier Curve@{Bezier Curve}}
\doxysubsubsubsubsection{\texorpdfstring{eina\_bezier\_angle\_at()}{eina\_bezier\_angle\_at()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Eina__Types__Group_ga6ac08753ba12bc9c7a0390cf67868f4f}{EINA\+\_\+\+API}} double eina\+\_\+bezier\+\_\+angle\+\_\+at (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{group__Eina__Bezier__Group_gae7355b5d4e854353bb91e04565978f50}{Eina\+\_\+\+Bezier}} \texorpdfstring{$\ast$}{*}}]{b,  }\item[{double}]{t }\end{DoxyParamCaption})}



Determines the slope of the bezier at a given position. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em b} & The floating point bezier. \\
\hline
\mbox{\texttt{ out}}  & {\em t} & The position along the bezier between 0.\+0 and 1.\+0.\\
\hline
\end{DoxyParams}
No check is done on {\ttfamily b}. \begin{DoxySince}{Since}
1.\+16 
\end{DoxySince}
\Hypertarget{group__Eina__Bezier__Group_ga312e3630665600591754c9d47c8432ba}\label{group__Eina__Bezier__Group_ga312e3630665600591754c9d47c8432ba} 
\index{Bezier Curve@{Bezier Curve}!eina\_bezier\_split\_at\_length@{eina\_bezier\_split\_at\_length}}
\index{eina\_bezier\_split\_at\_length@{eina\_bezier\_split\_at\_length}!Bezier Curve@{Bezier Curve}}
\doxysubsubsubsubsection{\texorpdfstring{eina\_bezier\_split\_at\_length()}{eina\_bezier\_split\_at\_length()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Eina__Types__Group_ga6ac08753ba12bc9c7a0390cf67868f4f}{EINA\+\_\+\+API}} void eina\+\_\+bezier\+\_\+split\+\_\+at\+\_\+length (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{group__Eina__Bezier__Group_gae7355b5d4e854353bb91e04565978f50}{Eina\+\_\+\+Bezier}} \texorpdfstring{$\ast$}{*}}]{b,  }\item[{double}]{len,  }\item[{\mbox{\hyperlink{group__Eina__Bezier__Group_gae7355b5d4e854353bb91e04565978f50}{Eina\+\_\+\+Bezier}} \texorpdfstring{$\ast$}{*}}]{left,  }\item[{\mbox{\hyperlink{group__Eina__Bezier__Group_gae7355b5d4e854353bb91e04565978f50}{Eina\+\_\+\+Bezier}} \texorpdfstring{$\ast$}{*}}]{right }\end{DoxyParamCaption})}



Splits the bezier at a given length. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em b} & The floating point bezier. \\
\hline
\mbox{\texttt{ in}}  & {\em len} & The length along the bezier to make the split. \\
\hline
\mbox{\texttt{ out}}  & {\em left} & The resultant split\textquotesingle{}s left portion of the bezier. \\
\hline
\mbox{\texttt{ out}}  & {\em right} & The resultant split\textquotesingle{}s right portion of the bezier.\\
\hline
\end{DoxyParams}
No check is done on {\ttfamily b}. \begin{DoxySince}{Since}
1.\+16 
\end{DoxySince}


References \mbox{\hyperlink{group__Eina__Bezier__Group_ga83fe28eed613593cc171665d33a2765d}{eina\+\_\+bezier\+\_\+t\+\_\+at()}}.

\Hypertarget{group__Eina__Bezier__Group_gaa5e472b3fa6b10997d0e92ea56207e5e}\label{group__Eina__Bezier__Group_gaa5e472b3fa6b10997d0e92ea56207e5e} 
\index{Bezier Curve@{Bezier Curve}!eina\_bezier\_bounds\_get@{eina\_bezier\_bounds\_get}}
\index{eina\_bezier\_bounds\_get@{eina\_bezier\_bounds\_get}!Bezier Curve@{Bezier Curve}}
\doxysubsubsubsubsection{\texorpdfstring{eina\_bezier\_bounds\_get()}{eina\_bezier\_bounds\_get()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Eina__Types__Group_ga6ac08753ba12bc9c7a0390cf67868f4f}{EINA\+\_\+\+API}} void eina\+\_\+bezier\+\_\+bounds\+\_\+get (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{group__Eina__Bezier__Group_gae7355b5d4e854353bb91e04565978f50}{Eina\+\_\+\+Bezier}} \texorpdfstring{$\ast$}{*}}]{b,  }\item[{double \texorpdfstring{$\ast$}{*}}]{x,  }\item[{double \texorpdfstring{$\ast$}{*}}]{y,  }\item[{double \texorpdfstring{$\ast$}{*}}]{w,  }\item[{double \texorpdfstring{$\ast$}{*}}]{h }\end{DoxyParamCaption})}



Calculates the bounding box for the bezier. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em b} & The floating point bezier. \\
\hline
\mbox{\texttt{ out}}  & {\em x} & The X coordinate of the bounding box. \\
\hline
\mbox{\texttt{ out}}  & {\em y} & The Y coordinate of the bounding box. \\
\hline
\mbox{\texttt{ out}}  & {\em w} & The width of the bounding box. \\
\hline
\mbox{\texttt{ out}}  & {\em h} & The height of the bounding box.\\
\hline
\end{DoxyParams}
No check is done on {\ttfamily b}. \begin{DoxySince}{Since}
1.\+17 
\end{DoxySince}
\Hypertarget{group__Eina__Bezier__Group_ga1bea2c1cc1b9acd9dee6edf8a8c2750d}\label{group__Eina__Bezier__Group_ga1bea2c1cc1b9acd9dee6edf8a8c2750d} 
\index{Bezier Curve@{Bezier Curve}!eina\_bezier\_on\_interval@{eina\_bezier\_on\_interval}}
\index{eina\_bezier\_on\_interval@{eina\_bezier\_on\_interval}!Bezier Curve@{Bezier Curve}}
\doxysubsubsubsubsection{\texorpdfstring{eina\_bezier\_on\_interval()}{eina\_bezier\_on\_interval()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Eina__Types__Group_ga6ac08753ba12bc9c7a0390cf67868f4f}{EINA\+\_\+\+API}} void eina\+\_\+bezier\+\_\+on\+\_\+interval (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Eina__Bezier__Group_gae7355b5d4e854353bb91e04565978f50}{Eina\+\_\+\+Bezier}} \texorpdfstring{$\ast$}{*}}]{b,  }\item[{double}]{t0,  }\item[{double}]{t1,  }\item[{\mbox{\hyperlink{group__Eina__Bezier__Group_gae7355b5d4e854353bb91e04565978f50}{Eina\+\_\+\+Bezier}} \texorpdfstring{$\ast$}{*}}]{result }\end{DoxyParamCaption})}



Finds the bezier between the given interval. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em b} & The floating point bezier. \\
\hline
\mbox{\texttt{ in}}  & {\em t0} & The start of the interval. \\
\hline
\mbox{\texttt{ in}}  & {\em t1} & The end of the interval. \\
\hline
\mbox{\texttt{ out}}  & {\em result} & The resulting bezier.\\
\hline
\end{DoxyParams}
No check is done on {\ttfamily b}. \begin{DoxySince}{Since}
1.\+17 
\end{DoxySince}


References \mbox{\hyperlink{group__Eina__Tools__Group_ga6bee37244b675b83d6a4f044a7a3d1e8}{EINA\+\_\+\+DBL\+\_\+\+EQ}}.

