\hypertarget{a08988}{}\section{Open\+Mesh\+:\+:Decimater\+:\+:Mod\+QuadricT$<$ MeshT $>$ Class Template Reference}
\label{a08988}\index{Open\+Mesh\+::\+Decimater\+::\+Mod\+Quadric\+T$<$ Mesh\+T $>$@{Open\+Mesh\+::\+Decimater\+::\+Mod\+Quadric\+T$<$ Mesh\+T $>$}}


Mesh decimation module computing collapse priority based on error quadrics.  




{\ttfamily \#include $<$Open\+Flipper/libs\+\_\+required/\+Open\+Mesh/src/\+Open\+Mesh/\+Tools/\+Decimater/\+Mod\+Quadric\+T.\+hh$>$}

Inheritance diagram for Open\+Mesh\+:\+:Decimater\+:\+:Mod\+QuadricT$<$ MeshT $>$\+:\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[height=3.000000cm]{a08988}
\end{center}
\end{figure}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{a08988_a5e58f0092957dcffd14d6ecb6778cc55}\label{a08988_a5e58f0092957dcffd14d6ecb6778cc55}} 
{\bfseries D\+E\+C\+I\+M\+A\+T\+I\+N\+G\+\_\+\+M\+O\+D\+U\+LE} (\hyperlink{a08988}{Mod\+QuadricT}, MeshT, Quadric)
\item 
\hyperlink{a08988_a133497b5da2d4164a2caaa694af2c64a}{Mod\+QuadricT} (MeshT \&\+\_\+mesh)
\item 
\mbox{\Hypertarget{a08988_ab61e337c3cea0e7c1e796207ec8bd7e0}\label{a08988_ab61e337c3cea0e7c1e796207ec8bd7e0}} 
virtual \hyperlink{a08988_ab61e337c3cea0e7c1e796207ec8bd7e0}{$\sim$\+Mod\+QuadricT} ()
\begin{DoxyCompactList}\small\item\em Destructor. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{a08988_aeeff135f4141c2f231f1428a974d7c0d}\label{a08988_aeeff135f4141c2f231f1428a974d7c0d}} 
virtual void \hyperlink{a08988_aeeff135f4141c2f231f1428a974d7c0d}{initialize} (void)
\begin{DoxyCompactList}\small\item\em Initalize the module and prepare the mesh for decimation. \end{DoxyCompactList}\item 
virtual float \hyperlink{a08988_af831bbc194faf3a3c346bd215f01f413}{collapse\+\_\+priority} (const \hyperlink{a08928}{Collapse\+Info} \&\+\_\+ci)
\item 
\mbox{\Hypertarget{a08988_acc01feeb26061855e79480a035068c0c}\label{a08988_acc01feeb26061855e79480a035068c0c}} 
virtual void \hyperlink{a08988_acc01feeb26061855e79480a035068c0c}{postprocess\+\_\+collapse} (const \hyperlink{a08928}{Collapse\+Info} \&\+\_\+ci)
\begin{DoxyCompactList}\small\item\em Post-\/process halfedge collapse (accumulate quadrics) \end{DoxyCompactList}\item 
\mbox{\Hypertarget{a08988_a31113d67dcd8953edef8377572e0b173}\label{a08988_a31113d67dcd8953edef8377572e0b173}} 
void \hyperlink{a08988_a31113d67dcd8953edef8377572e0b173}{set\+\_\+error\+\_\+tolerance\+\_\+factor} (double \+\_\+factor)
\begin{DoxyCompactList}\small\item\em set the percentage of maximum quadric error \end{DoxyCompactList}\item 
void \hyperlink{a08988_a7fb01ec4e21be8b62d5c299b7126ce99}{set\+\_\+max\+\_\+err} (double \+\_\+err, bool \+\_\+binary=true)
\item 
void \hyperlink{a08988_af4f40b99ab088afe24cf10e9b3cda469}{unset\+\_\+max\+\_\+err} (void)
\item 
\mbox{\Hypertarget{a08988_adc91dc465e147abb93d23dec75920156}\label{a08988_adc91dc465e147abb93d23dec75920156}} 
double \hyperlink{a08988_adc91dc465e147abb93d23dec75920156}{max\+\_\+err} () const
\begin{DoxyCompactList}\small\item\em Return value of max. allowed error. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Private Attributes}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{a08988_a5d19c4f2a2ba1cda94316f22917e5f43}\label{a08988_a5d19c4f2a2ba1cda94316f22917e5f43}} 
double {\bfseries max\+\_\+err\+\_\+}
\item 
\mbox{\Hypertarget{a08988_add365e115cd723bd90f7a4dcf36746b3}\label{a08988_add365e115cd723bd90f7a4dcf36746b3}} 
\hyperlink{a08876}{V\+Prop\+HandleT}$<$ \hyperlink{a08432}{Geometry\+::\+QuadricT}$<$ double $>$ $>$ {\bfseries quadrics\+\_\+}
\end{DoxyCompactItemize}
\subsection*{Additional Inherited Members}


\subsection{Detailed Description}
\subsubsection*{template$<$class MeshT$>$\newline
class Open\+Mesh\+::\+Decimater\+::\+Mod\+Quadric\+T$<$ Mesh\+T $>$}

Mesh decimation module computing collapse priority based on error quadrics. 

This module can be used as a binary and non-\/binary module. 

Definition at line 75 of file Mod\+Quadric\+T.\+hh.



\subsection{Constructor \& Destructor Documentation}
\mbox{\Hypertarget{a08988_a133497b5da2d4164a2caaa694af2c64a}\label{a08988_a133497b5da2d4164a2caaa694af2c64a}} 
\index{Open\+Mesh\+::\+Decimater\+::\+Mod\+QuadricT@{Open\+Mesh\+::\+Decimater\+::\+Mod\+QuadricT}!Mod\+QuadricT@{Mod\+QuadricT}}
\index{Mod\+QuadricT@{Mod\+QuadricT}!Open\+Mesh\+::\+Decimater\+::\+Mod\+QuadricT@{Open\+Mesh\+::\+Decimater\+::\+Mod\+QuadricT}}
\subsubsection{\texorpdfstring{Mod\+Quadric\+T()}{ModQuadricT()}}
{\footnotesize\ttfamily template$<$class MeshT$>$ \\
\hyperlink{a08988}{Open\+Mesh\+::\+Decimater\+::\+Mod\+QuadricT}$<$ MeshT $>$\+::\hyperlink{a08988}{Mod\+QuadricT} (\begin{DoxyParamCaption}\item[{MeshT \&}]{\+\_\+mesh }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}

Constructor 

Definition at line 88 of file Mod\+Quadric\+T.\+hh.



\subsection{Member Function Documentation}
\mbox{\Hypertarget{a08988_af831bbc194faf3a3c346bd215f01f413}\label{a08988_af831bbc194faf3a3c346bd215f01f413}} 
\index{Open\+Mesh\+::\+Decimater\+::\+Mod\+QuadricT@{Open\+Mesh\+::\+Decimater\+::\+Mod\+QuadricT}!collapse\+\_\+priority@{collapse\+\_\+priority}}
\index{collapse\+\_\+priority@{collapse\+\_\+priority}!Open\+Mesh\+::\+Decimater\+::\+Mod\+QuadricT@{Open\+Mesh\+::\+Decimater\+::\+Mod\+QuadricT}}
\subsubsection{\texorpdfstring{collapse\+\_\+priority()}{collapse\_priority()}}
{\footnotesize\ttfamily template$<$class MeshT$>$ \\
virtual float \hyperlink{a08988}{Open\+Mesh\+::\+Decimater\+::\+Mod\+QuadricT}$<$ MeshT $>$\+::collapse\+\_\+priority (\begin{DoxyParamCaption}\item[{const \hyperlink{a08928}{Collapse\+Info} \&}]{\+\_\+ci }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}

Compute collapse priority based on error quadrics.

\begin{DoxySeeAlso}{See also}
\hyperlink{a08956_acb81c6b9a752741fce2366ca605cd14c}{Mod\+Base\+T\+::collapse\+\_\+priority()} for return values 

\hyperlink{a08988_a7fb01ec4e21be8b62d5c299b7126ce99}{set\+\_\+max\+\_\+err()} 
\end{DoxySeeAlso}


Reimplemented from \hyperlink{a08956_acb81c6b9a752741fce2366ca605cd14c}{Open\+Mesh\+::\+Decimater\+::\+Mod\+Base\+T$<$ Mesh\+T $>$}.



Reimplemented in \hyperlink{a08408_a627c9486bf8c3975363e4053a3d8c323}{Mod\+Balancer\+T$<$ D $>$}.



Definition at line 113 of file Mod\+Quadric\+T.\+hh.

\mbox{\Hypertarget{a08988_a7fb01ec4e21be8b62d5c299b7126ce99}\label{a08988_a7fb01ec4e21be8b62d5c299b7126ce99}} 
\index{Open\+Mesh\+::\+Decimater\+::\+Mod\+QuadricT@{Open\+Mesh\+::\+Decimater\+::\+Mod\+QuadricT}!set\+\_\+max\+\_\+err@{set\+\_\+max\+\_\+err}}
\index{set\+\_\+max\+\_\+err@{set\+\_\+max\+\_\+err}!Open\+Mesh\+::\+Decimater\+::\+Mod\+QuadricT@{Open\+Mesh\+::\+Decimater\+::\+Mod\+QuadricT}}
\subsubsection{\texorpdfstring{set\+\_\+max\+\_\+err()}{set\_max\_err()}}
{\footnotesize\ttfamily template$<$class MeshT$>$ \\
void \hyperlink{a08988}{Open\+Mesh\+::\+Decimater\+::\+Mod\+QuadricT}$<$ MeshT $>$\+::set\+\_\+max\+\_\+err (\begin{DoxyParamCaption}\item[{double}]{\+\_\+err,  }\item[{bool}]{\+\_\+binary = {\ttfamily true} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}

Set maximum quadric error constraint and enable binary mode. 
\begin{DoxyParams}{Parameters}
{\em \+\_\+err} & Maximum error allowed \\
\hline
{\em \+\_\+binary} & Let the module work in non-\/binary mode in spite of the enabled constraint. \\
\hline
\end{DoxyParams}
\begin{DoxySeeAlso}{See also}
\hyperlink{a08988_af4f40b99ab088afe24cf10e9b3cda469}{unset\+\_\+max\+\_\+err()} 
\end{DoxySeeAlso}


Definition at line 153 of file Mod\+Quadric\+T.\+hh.

\mbox{\Hypertarget{a08988_af4f40b99ab088afe24cf10e9b3cda469}\label{a08988_af4f40b99ab088afe24cf10e9b3cda469}} 
\index{Open\+Mesh\+::\+Decimater\+::\+Mod\+QuadricT@{Open\+Mesh\+::\+Decimater\+::\+Mod\+QuadricT}!unset\+\_\+max\+\_\+err@{unset\+\_\+max\+\_\+err}}
\index{unset\+\_\+max\+\_\+err@{unset\+\_\+max\+\_\+err}!Open\+Mesh\+::\+Decimater\+::\+Mod\+QuadricT@{Open\+Mesh\+::\+Decimater\+::\+Mod\+QuadricT}}
\subsubsection{\texorpdfstring{unset\+\_\+max\+\_\+err()}{unset\_max\_err()}}
{\footnotesize\ttfamily template$<$class MeshT$>$ \\
void \hyperlink{a08988}{Open\+Mesh\+::\+Decimater\+::\+Mod\+QuadricT}$<$ MeshT $>$\+::unset\+\_\+max\+\_\+err (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}

Unset maximum quadric error constraint and restore non-\/binary mode. \begin{DoxySeeAlso}{See also}
\hyperlink{a08988_a7fb01ec4e21be8b62d5c299b7126ce99}{set\+\_\+max\+\_\+err()} 
\end{DoxySeeAlso}


Definition at line 161 of file Mod\+Quadric\+T.\+hh.



The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize}
\item 
Open\+Flipper/libs\+\_\+required/\+Open\+Mesh/src/\+Open\+Mesh/\+Tools/\+Decimater/\hyperlink{a02237}{Mod\+Quadric\+T.\+hh}\item 
Open\+Flipper/libs\+\_\+required/\+Open\+Mesh/src/\+Open\+Mesh/\+Tools/\+Decimater/\hyperlink{a02240}{Mod\+Quadric\+T\+\_\+impl.\+hh}\end{DoxyCompactItemize}
