\hypertarget{a00341}{\section{Remeshing\+:\+:Base\+Remesher\+T$<$ Mesh $>$ Class Template Reference}
\label{a00341}\index{Remeshing\+::\+Base\+Remesher\+T$<$ Mesh $>$@{Remeshing\+::\+Base\+Remesher\+T$<$ Mesh $>$}}
}
Inheritance diagram for Remeshing\+:\+:Base\+Remesher\+T$<$ Mesh $>$\+:\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[height=2.000000cm]{a00341}
\end{center}
\end{figure}
\subsection*{Public Types}
\begin{DoxyCompactItemize}
\item 
\hypertarget{a00341_ae1a4e0b029172c9d85f6c2d3ab22d712}{enum {\bfseries Selection} \{ {\bfseries V\+E\+R\+T\+E\+X\+\_\+\+S\+E\+L\+E\+C\+T\+I\+O\+N}, 
{\bfseries F\+A\+C\+E\+\_\+\+S\+E\+L\+E\+C\+T\+I\+O\+N}
 \}}\label{a00341_ae1a4e0b029172c9d85f6c2d3ab22d712}

\item 
\hypertarget{a00341_a6b4c10ca6e7ca65f04bfa7e1a99d52b1}{typedef \hyperlink{a00994_a15372f27edf521d8e9028e2abccae342}{Mesh\+::\+Scalar} {\bfseries Scalar}}\label{a00341_a6b4c10ca6e7ca65f04bfa7e1a99d52b1}

\item 
\hypertarget{a00341_a5007502bfe7a11bc703fae042e9c391c}{typedef \hyperlink{a00994_aed10fb4dfb536b53a5e20c8f2442eadf}{Mesh\+::\+Point} {\bfseries Point}}\label{a00341_a5007502bfe7a11bc703fae042e9c391c}

\item 
\hypertarget{a00341_aea61a5acc990bcce8d9250c0050ff1f5}{typedef Mesh\+::\+Edge\+Handle {\bfseries Edge\+Handle}}\label{a00341_aea61a5acc990bcce8d9250c0050ff1f5}

\item 
\hypertarget{a00341_aa499c2885f484c0f5f8173dd5ca57ff7}{typedef \hyperlink{a00994_a0fc18e13d70825938274e3faf7b55e01}{Mesh\+::\+Vertex\+Handle} {\bfseries Vertex\+Handle}}\label{a00341_aa499c2885f484c0f5f8173dd5ca57ff7}

\end{DoxyCompactItemize}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\hypertarget{a00341_a2965dcd5ce7815419b8a49123ffa7158}{{\bfseries Base\+Remesher\+T} (\hyperlink{a01335}{Mesh} \&\+\_\+mesh, \hyperlink{a01024}{Progress\+Emitter} $\ast$\+\_\+progress=N\+U\+L\+L)}\label{a00341_a2965dcd5ce7815419b8a49123ffa7158}

\item 
\hypertarget{a00341_a00cf4aa929325e8679ab466a2db14d9a}{void {\bfseries remesh} (unsigned int \+\_\+iters, unsigned int \+\_\+area\+\_\+iters, bool \+\_\+use\+\_\+projection=true, Selection \+\_\+selection=V\+E\+R\+T\+E\+X\+\_\+\+S\+E\+L\+E\+C\+T\+I\+O\+N)}\label{a00341_a00cf4aa929325e8679ab466a2db14d9a}

\end{DoxyCompactItemize}
\subsection*{Protected Types}
\begin{DoxyCompactItemize}
\item 
\hypertarget{a00341_ae8b25f60c8c91778210cb6e6057aff13}{typedef \hyperlink{a00925}{Open\+Mesh\+Triangle\+B\+S\+P\+T}\\*
$<$ \hyperlink{a01335}{Mesh} $>$ {\bfseries B\+S\+P}}\label{a00341_ae8b25f60c8c91778210cb6e6057aff13}

\end{DoxyCompactItemize}
\subsection*{Protected Member Functions}
\begin{DoxyCompactItemize}
\item 
\hypertarget{a00341_ac08017d3abdb49b912ae01d4f0c338f1}{void \hyperlink{a00341_ac08017d3abdb49b912ae01d4f0c338f1}{prepare\+\_\+vertex\+\_\+selection} ()}\label{a00341_ac08017d3abdb49b912ae01d4f0c338f1}

\begin{DoxyCompactList}\small\item\em prepare for remeshing only selected vertices (if no vertex was selected, remesh whole mesh) \end{DoxyCompactList}\item 
\hypertarget{a00341_accf5f23e871bdc1926fa4bfe59b26849}{void \hyperlink{a00341_accf5f23e871bdc1926fa4bfe59b26849}{prepare\+\_\+face\+\_\+selection} ()}\label{a00341_accf5f23e871bdc1926fa4bfe59b26849}

\begin{DoxyCompactList}\small\item\em prepare for remeshing only vertices which are fully surrounded by selected faces (if no face was selected, remesh whole mesh) \end{DoxyCompactList}\item 
\hypertarget{a00341_a7c08562c0cfe6f63985a9287d02efd38}{void {\bfseries remeshh} (unsigned int \+\_\+iters, unsigned int \+\_\+aiters, bool \+\_\+proj)}\label{a00341_a7c08562c0cfe6f63985a9287d02efd38}

\item 
\hypertarget{a00341_ac40903b87ec4c489cdc29417ef5df02e}{void {\bfseries cleanup} ()}\label{a00341_ac40903b87ec4c489cdc29417ef5df02e}

\item 
\hypertarget{a00341_afb068478a4f037763054f4ec447ad447}{virtual void {\bfseries init\+\_\+reference} ()}\label{a00341_afb068478a4f037763054f4ec447ad447}

\item 
\hypertarget{a00341_a32161943a389ee210bd73a071f098bd4}{virtual void {\bfseries delete\+\_\+reference} ()}\label{a00341_a32161943a389ee210bd73a071f098bd4}

\item 
\hypertarget{a00341_a568a9c12709f613de47b166c86c8b3d5}{virtual void {\bfseries project\+\_\+to\+\_\+reference} (Vertex\+Handle \+\_\+vh) const }\label{a00341_a568a9c12709f613de47b166c86c8b3d5}

\item 
\hypertarget{a00341_af86e996d55b117958386eff3590f248b}{void {\bfseries split\+\_\+long\+\_\+edges} ()}\label{a00341_af86e996d55b117958386eff3590f248b}

\item 
\hypertarget{a00341_a9cad45e5c5dfab48832429594397d069}{void {\bfseries collapse\+\_\+short\+\_\+edges} ()}\label{a00341_a9cad45e5c5dfab48832429594397d069}

\item 
\hypertarget{a00341_aa10c262634c0479d1f9c785c72e46f35}{void {\bfseries flip\+\_\+edges} ()}\label{a00341_aa10c262634c0479d1f9c785c72e46f35}

\item 
\hypertarget{a00341_a367ba3df06e9befd8c00ce9e9b6fb08e}{void {\bfseries tangential\+\_\+smoothing} (bool \+\_\+use\+\_\+projection)}\label{a00341_a367ba3df06e9befd8c00ce9e9b6fb08e}

\item 
\hypertarget{a00341_aa1e73e67247a6deac82a60c1fec562b5}{void {\bfseries balanace\+\_\+area} (unsigned int \+\_\+iters, bool \+\_\+use\+\_\+projection)}\label{a00341_aa1e73e67247a6deac82a60c1fec562b5}

\item 
\hypertarget{a00341_ac74ad8550b3fcc516ca0bb1bbc9272c1}{void {\bfseries remove\+\_\+caps} ()}\label{a00341_ac74ad8550b3fcc516ca0bb1bbc9272c1}

\item 
\hypertarget{a00341_a489f738c78888b1e3e2b0bb83aaccde2}{virtual bool {\bfseries is\+\_\+too\+\_\+long} (Vertex\+Handle \+\_\+v0, Vertex\+Handle \+\_\+v1) const =0}\label{a00341_a489f738c78888b1e3e2b0bb83aaccde2}

\item 
\hypertarget{a00341_aa9d99f27f3c2797f4de3df748d1901d8}{virtual bool {\bfseries is\+\_\+too\+\_\+short} (Vertex\+Handle \+\_\+v0, Vertex\+Handle \+\_\+v1) const =0}\label{a00341_aa9d99f27f3c2797f4de3df748d1901d8}

\end{DoxyCompactItemize}
\subsection*{Protected Attributes}
\begin{DoxyCompactItemize}
\item 
\hypertarget{a00341_a6a2455fb61754b96b6acac8e9f006ab9}{\hyperlink{a01335}{Mesh} \& {\bfseries mesh\+\_\+}}\label{a00341_a6a2455fb61754b96b6acac8e9f006ab9}

\item 
\hypertarget{a00341_af0d07afc046400e21c804a3a161ca02d}{\hyperlink{a01335}{Mesh} $\ast$ {\bfseries refmesh\+\_\+}}\label{a00341_af0d07afc046400e21c804a3a161ca02d}

\item 
\hypertarget{a00341_a82c318df481550ef60209e86bde97000}{\hyperlink{a00925}{B\+S\+P} $\ast$ {\bfseries bsp\+\_\+}}\label{a00341_a82c318df481550ef60209e86bde97000}

\item 
\hypertarget{a00341_aa2e97fc55427dad24bb9686491a1667e}{bool {\bfseries nothing\+\_\+selected\+\_\+}}\label{a00341_aa2e97fc55427dad24bb9686491a1667e}

\item 
\hypertarget{a00341_a094c75d85f75576c270b915706132588}{\hyperlink{a01470}{Open\+Mesh\+::\+V\+Prop\+Handle\+T}$<$ int $>$ {\bfseries valences\+\_\+}}\label{a00341_a094c75d85f75576c270b915706132588}

\item 
\hypertarget{a00341_af7e74bec838758071ab736b3347d002c}{\hyperlink{a01470}{Open\+Mesh\+::\+V\+Prop\+Handle\+T}$<$ Point $>$ {\bfseries update\+\_\+}}\label{a00341_af7e74bec838758071ab736b3347d002c}

\item 
\hypertarget{a00341_a838f5b1b511c8b1206580818ead1188c}{\hyperlink{a01470}{Open\+Mesh\+::\+V\+Prop\+Handle\+T}$<$ Scalar $>$ {\bfseries area\+\_\+}}\label{a00341_a838f5b1b511c8b1206580818ead1188c}

\item 
\hypertarget{a00341_ad48d5f67fb2a6de70edfddc7815c54bf}{\hyperlink{a01024}{Progress\+Emitter} $\ast$ {\bfseries progress\+\_\+}}\label{a00341_ad48d5f67fb2a6de70edfddc7815c54bf}

\end{DoxyCompactItemize}


\subsection{Detailed Description}
\subsubsection*{template$<$class Mesh$>$class Remeshing\+::\+Base\+Remesher\+T$<$ Mesh $>$}



Definition at line 86 of file Base\+Remesher\+T.\+hh.



The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize}
\item 
Plugin-\/\+Remesher/\+Algorithms/Base\+Remesher\+T.\+hh\item 
Plugin-\/\+Remesher/\+Algorithms/Base\+Remesher\+T.\+cc\end{DoxyCompactItemize}
