\hypertarget{a00785}{\section{Open\+Mesh\+:\+:Subdivider\+:\+:Uniform\+:\+:Longest\+Edge\+T$<$ Mesh\+Type, Real\+Type $>$ Class Template Reference}
\label{a00785}\index{Open\+Mesh\+::\+Subdivider\+::\+Uniform\+::\+Longest\+Edge\+T$<$ Mesh\+Type, Real\+Type $>$@{Open\+Mesh\+::\+Subdivider\+::\+Uniform\+::\+Longest\+Edge\+T$<$ Mesh\+Type, Real\+Type $>$}}
}


{\ttfamily \#include $<$libs\+\_\+required/\+Open\+Mesh/src/\+Open\+Mesh/\+Tools/\+Subdivider/\+Uniform/\+Longest\+Edge\+T.\+hh$>$}

Inheritance diagram for Open\+Mesh\+:\+:Subdivider\+:\+:Uniform\+:\+:Longest\+Edge\+T$<$ Mesh\+Type, Real\+Type $>$\+:\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[height=3.000000cm]{a00785}
\end{center}
\end{figure}
\subsection*{Public Types}
\begin{DoxyCompactItemize}
\item 
\hypertarget{a00785_ad29c40f3adbb8d27e1dc7b9a6e7c380c}{typedef Real\+Type {\bfseries real\+\_\+t}}\label{a00785_ad29c40f3adbb8d27e1dc7b9a6e7c380c}

\item 
\hypertarget{a00785_a8c727c6d732be3d34baee72afc5ab822}{typedef Mesh\+Type {\bfseries mesh\+\_\+t}}\label{a00785_a8c727c6d732be3d34baee72afc5ab822}

\item 
\hypertarget{a00785_af35a3b15e8c6893b99c995972777ae90}{typedef \hyperlink{a01257}{Subdivider\+T}$<$ mesh\+\_\+t, \\*
real\+\_\+t $>$ {\bfseries parent\+\_\+t}}\label{a00785_af35a3b15e8c6893b99c995972777ae90}

\item 
\hypertarget{a00785_ace17b8d9ec6a212275c2d25dc128c81c}{typedef std\+::vector\\*
$<$ std\+::vector$<$ real\+\_\+t $>$ $>$ {\bfseries weights\+\_\+t}}\label{a00785_ace17b8d9ec6a212275c2d25dc128c81c}

\item 
\hypertarget{a00785_a7dfdb07debd8e0bcd3133a28f5ba86d1}{typedef std\+::vector$<$ real\+\_\+t $>$ {\bfseries weight\+\_\+t}}\label{a00785_a7dfdb07debd8e0bcd3133a28f5ba86d1}

\item 
\hypertarget{a00785_ad40663d180c47ef016582a8843329465}{typedef std\+::pair$<$ typename \\*
mesh\+\_\+t\+::\+Edge\+Handle, real\+\_\+t $>$ {\bfseries queue\+Element}}\label{a00785_ad40663d180c47ef016582a8843329465}

\end{DoxyCompactItemize}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\hypertarget{a00785_afffa088e8220f07f00d4016fad24144a}{{\bfseries Longest\+Edge\+T} (mesh\+\_\+t \&\+\_\+m)}\label{a00785_afffa088e8220f07f00d4016fad24144a}

\item 
\hypertarget{a00785_a4163e027b013a4195c353cf83ea7f0b4}{const char $\ast$ \hyperlink{a00785_a4163e027b013a4195c353cf83ea7f0b4}{name} () const }\label{a00785_a4163e027b013a4195c353cf83ea7f0b4}

\begin{DoxyCompactList}\small\item\em Return name of subdivision algorithm. \end{DoxyCompactList}\item 
\hypertarget{a00785_ad234a798b7522ed457283bc2099128a0}{void {\bfseries set\+\_\+max\+\_\+edge\+\_\+length} (double \+\_\+value)}\label{a00785_ad234a798b7522ed457283bc2099128a0}

\end{DoxyCompactItemize}
\subsection*{Protected Member Functions}
\begin{DoxyCompactItemize}
\item 
\hypertarget{a00785_a148e2fcd262625cec18244ba337e3ace}{bool \hyperlink{a00785_a148e2fcd262625cec18244ba337e3ace}{prepare} (mesh\+\_\+t \&\+\_\+m)}\label{a00785_a148e2fcd262625cec18244ba337e3ace}

\begin{DoxyCompactList}\small\item\em Prepare mesh, e.\+g. add properties. \end{DoxyCompactList}\item 
\hypertarget{a00785_a227a1bae357bc040507232393a4231a7}{bool \hyperlink{a00785_a227a1bae357bc040507232393a4231a7}{cleanup} (mesh\+\_\+t \&\+\_\+m)}\label{a00785_a227a1bae357bc040507232393a4231a7}

\begin{DoxyCompactList}\small\item\em Cleanup mesh after usage, e.\+g. remove added properties. \end{DoxyCompactList}\item 
\hypertarget{a00785_a98d1a40c83b9b5ece9c0c467ca6cc588}{bool \hyperlink{a00785_a98d1a40c83b9b5ece9c0c467ca6cc588}{subdivide} (Mesh\+Type \&\+\_\+m, size\+\_\+t \+\_\+n, const bool \+\_\+update\+\_\+points=true)}\label{a00785_a98d1a40c83b9b5ece9c0c467ca6cc588}

\begin{DoxyCompactList}\small\item\em Subdivide mesh {\ttfamily \+\_\+m} {\ttfamily \+\_\+n} times. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Private Attributes}
\begin{DoxyCompactItemize}
\item 
\hypertarget{a00785_afdd9086965794426afd4bb13018d8102}{real\+\_\+t {\bfseries max\+\_\+edge\+\_\+length\+\_\+squared\+\_\+}}\label{a00785_afdd9086965794426afd4bb13018d8102}

\end{DoxyCompactItemize}


\subsection{Detailed Description}
\subsubsection*{template$<$typename Mesh\+Type, typename Real\+Type = float$>$class Open\+Mesh\+::\+Subdivider\+::\+Uniform\+::\+Longest\+Edge\+T$<$ Mesh\+Type, Real\+Type $>$}

Uniform \hyperlink{a00785}{Longest\+Edge\+T} subdivision algorithm

Very simple algorithm splitting all edges which are longer than given via set\+\_\+max\+\_\+edge\+\_\+length(). The split is always performed on the longest edge in the mesh. 

Definition at line 105 of file Longest\+Edge\+T.\+hh.



The documentation for this class was generated from the following file\+:\begin{DoxyCompactItemize}
\item 
libs\+\_\+required/\+Open\+Mesh/src/\+Open\+Mesh/\+Tools/\+Subdivider/\+Uniform/\hyperlink{a02068}{Longest\+Edge\+T.\+hh}\end{DoxyCompactItemize}
