\hypertarget{a07600}{}\section{A\+CG\+:\+:Bezier\+CurveT$<$ Point $>$ Class Template Reference}
\label{a07600}\index{A\+C\+G\+::\+Bezier\+Curve\+T$<$ Point $>$@{A\+C\+G\+::\+Bezier\+Curve\+T$<$ Point $>$}}


{\ttfamily \#include $<$Open\+Flipper/libs\+\_\+required/\+A\+C\+G/\+Math/\+Bezier\+Curve\+T.\+hh$>$}

Inheritance diagram for A\+CG\+:\+:Bezier\+CurveT$<$ Point $>$\+:\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[height=2.000000cm]{a07600}
\end{center}
\end{figure}
\subsection*{Public Types}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{a07600_a029b043ddaa616bbe438facb28bf0286}\label{a07600_a029b043ddaa616bbe438facb28bf0286}} 
typedef Point\+::value\+\_\+type {\bfseries Scalar}
\item 
\mbox{\Hypertarget{a07600_a9226374efc5370764c97c491cb716a2e}\label{a07600_a9226374efc5370764c97c491cb716a2e}} 
typedef \hyperlink{a07600}{Bezier\+CurveT}$<$ Point $>$ {\bfseries Self}
\item 
\mbox{\Hypertarget{a07600_a0b8a2411b78782a7099eb2ea32c2c44b}\label{a07600_a0b8a2411b78782a7099eb2ea32c2c44b}} 
typedef std\+::vector$<$ Point $>$ {\bfseries Base}
\end{DoxyCompactItemize}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{a07600_af411feb197598cb7c4aab1d2387e7ddb}\label{a07600_af411feb197598cb7c4aab1d2387e7ddb}} 
\hyperlink{a07600_af411feb197598cb7c4aab1d2387e7ddb}{Bezier\+CurveT} ()
\begin{DoxyCompactList}\small\item\em constructor \end{DoxyCompactList}\item 
\mbox{\Hypertarget{a07600_a01555da2e8a77be3ec4f4dbb4dc3fc0a}\label{a07600_a01555da2e8a77be3ec4f4dbb4dc3fc0a}} 
\hyperlink{a07600_a01555da2e8a77be3ec4f4dbb4dc3fc0a}{$\sim$\+Bezier\+CurveT} ()
\begin{DoxyCompactList}\small\item\em destructor \end{DoxyCompactList}\item 
\mbox{\Hypertarget{a07600_a89c4e33a15a0e68c2fb61187c937fe26}\label{a07600_a89c4e33a15a0e68c2fb61187c937fe26}} 
unsigned int \hyperlink{a07600_a89c4e33a15a0e68c2fb61187c937fe26}{degree} () const
\begin{DoxyCompactList}\small\item\em return degree (= size()-\/1) \end{DoxyCompactList}\item 
\mbox{\Hypertarget{a07600_aa485772fea262742ba45ac21686d190c}\label{a07600_aa485772fea262742ba45ac21686d190c}} 
Point \hyperlink{a07600_aa485772fea262742ba45ac21686d190c}{operator()} (Scalar \+\_\+t) const
\begin{DoxyCompactList}\small\item\em evaluate curve at parameter \+\_\+t using de\+Casteljau \end{DoxyCompactList}\item 
void \hyperlink{a07600_a910ddc959e6d0e6af47ba314ac6a97f9}{subdivide} (Scalar \+\_\+t, \hyperlink{a07600}{Self} \&\+\_\+curve0, \hyperlink{a07600}{Self} \&\+\_\+curve1) const
\end{DoxyCompactItemize}


\subsection{Detailed Description}
\subsubsection*{template$<$class Point$>$\newline
class A\+C\+G\+::\+Bezier\+Curve\+T$<$ Point $>$}

Bezier curve. Derived from std\+::vector$<$Vector$<$\+Scalar, Dimension$>$$>$. 

Definition at line 77 of file Bezier\+Curve\+T.\+hh.



\subsection{Member Function Documentation}
\mbox{\Hypertarget{a07600_a910ddc959e6d0e6af47ba314ac6a97f9}\label{a07600_a910ddc959e6d0e6af47ba314ac6a97f9}} 
\index{A\+C\+G\+::\+Bezier\+CurveT@{A\+C\+G\+::\+Bezier\+CurveT}!subdivide@{subdivide}}
\index{subdivide@{subdivide}!A\+C\+G\+::\+Bezier\+CurveT@{A\+C\+G\+::\+Bezier\+CurveT}}
\subsubsection{\texorpdfstring{subdivide()}{subdivide()}}
{\footnotesize\ttfamily template$<$class Point $>$ \\
void \hyperlink{a07600}{A\+C\+G\+::\+Bezier\+CurveT}$<$ Point $>$\+::subdivide (\begin{DoxyParamCaption}\item[{Scalar}]{\+\_\+t,  }\item[{\hyperlink{a07600}{Self} \&}]{\+\_\+curve0,  }\item[{\hyperlink{a07600}{Self} \&}]{\+\_\+curve1 }\end{DoxyParamCaption}) const}

subdivide curve at parameter \+\_\+t, store the two resulting curves in \+\_\+curve0, \+\_\+curve1 

Definition at line 98 of file Bezier\+Curve\+T\+\_\+impl.\+hh.



The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize}
\item 
Open\+Flipper/libs\+\_\+required/\+A\+C\+G/\+Math/Bezier\+Curve\+T.\+hh\item 
Open\+Flipper/libs\+\_\+required/\+A\+C\+G/\+Math/Bezier\+Curve\+T\+\_\+impl.\+hh\end{DoxyCompactItemize}
