\hypertarget{classMeshComparePlugin}{}\section{Mesh\+Compare\+Plugin Class Reference}
\label{classMeshComparePlugin}\index{Mesh\+Compare\+Plugin@{Mesh\+Compare\+Plugin}}
Inheritance diagram for Mesh\+Compare\+Plugin\+:\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[height=10.000000cm]{classMeshComparePlugin}
\end{center}
\end{figure}
\subsection*{Public Slots}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{classMeshComparePlugin_a78c2d949b801224c236780aebea7ef95}\label{classMeshComparePlugin_a78c2d949b801224c236780aebea7ef95}} 
Q\+String {\bfseries version} ()
\end{DoxyCompactItemize}
\subsection*{Signals}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{classMeshComparePlugin_a523b80cdcdc2e0b3fbf95a4a6af2979e}\label{classMeshComparePlugin_a523b80cdcdc2e0b3fbf95a4a6af2979e}} 
void {\bfseries update\+View} ()
\item 
\mbox{\Hypertarget{classMeshComparePlugin_a81f4dcc8addc9a01256d6a85b234cf76}\label{classMeshComparePlugin_a81f4dcc8addc9a01256d6a85b234cf76}} 
void {\bfseries updated\+Object} (int \+\_\+id, const \hyperlink{classUpdateType}{Update\+Type} \&\+\_\+type)
\item 
\mbox{\Hypertarget{classMeshComparePlugin_aeaa356354065a52bc2d2aacddc64cd8a}\label{classMeshComparePlugin_aeaa356354065a52bc2d2aacddc64cd8a}} 
void {\bfseries set\+Slot\+Description} (Q\+String \+\_\+slot\+Name, Q\+String \+\_\+slot\+Description, Q\+String\+List \+\_\+parameters, Q\+String\+List \+\_\+descriptions)
\item 
\mbox{\Hypertarget{classMeshComparePlugin_a0ee90baa341d6f936b2ef2e5bbc7115d}\label{classMeshComparePlugin_a0ee90baa341d6f936b2ef2e5bbc7115d}} 
void {\bfseries log} (\hyperlink{LoggingInterface_8hh_a595b2880f3ae74561ba390e3fd8c0e7c}{Logtype} \+\_\+type, Q\+String \+\_\+message)
\item 
\mbox{\Hypertarget{classMeshComparePlugin_a4dfa56c0d5d3fd68cac0c5ab0d4ef7c2}\label{classMeshComparePlugin_a4dfa56c0d5d3fd68cac0c5ab0d4ef7c2}} 
void {\bfseries log} (Q\+String \+\_\+message)
\item 
\mbox{\Hypertarget{classMeshComparePlugin_a8b8f602848961f3fcbb1358f8f3fb2b7}\label{classMeshComparePlugin_a8b8f602848961f3fcbb1358f8f3fb2b7}} 
void {\bfseries add\+Toolbox} (Q\+String \+\_\+name, Q\+Widget $\ast$\+\_\+widget, Q\+Icon $\ast$\+\_\+icon)
\item 
\mbox{\Hypertarget{classMeshComparePlugin_ad4b8680fd6b6c871236ec4d33587d166}\label{classMeshComparePlugin_ad4b8680fd6b6c871236ec4d33587d166}} 
void {\bfseries create\+Backup} (int \+\_\+id, Q\+String \+\_\+name, \hyperlink{classUpdateType}{Update\+Type} \+\_\+type=\hyperlink{group__DefaultUpdateTypes_ga4ce39b8d60eb78ada5080d032c9463a8}{U\+P\+D\+A\+T\+E\+\_\+\+A\+LL})
\item 
\mbox{\Hypertarget{classMeshComparePlugin_a7aa3c98dffcbd51fe1e4984d960b7fdf}\label{classMeshComparePlugin_a7aa3c98dffcbd51fe1e4984d960b7fdf}} 
void {\bfseries plugin\+Exists} (Q\+String \+\_\+plugin\+Name, bool \&\+\_\+exists)
\end{DoxyCompactItemize}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
Q\+String \hyperlink{classMeshComparePlugin_a19955be82757ccd205f057f24583f918}{name} ()
\begin{DoxyCompactList}\small\item\em Return a name for the plugin. \end{DoxyCompactList}\item 
Q\+String \hyperlink{classMeshComparePlugin_a398cffd4794ac9d8f7349f4b2c20e6b2}{description} ()
\begin{DoxyCompactList}\small\item\em Return a description of what the plugin is doing. \end{DoxyCompactList}\item 
void \hyperlink{classMeshComparePlugin_a4ddf66d24d949da96263b48a5a9d3db2}{compare} (int \+\_\+source\+Id, int \+\_\+target\+Id, bool \+\_\+compute\+Dist=true, bool \+\_\+compute\+Normal=true, bool \+\_\+compute\+Gauss=true, bool \+\_\+compute\+Mean=true)
\item 
\mbox{\Hypertarget{classMeshComparePlugin_a5095ab7d75f5ebaaa0c07005b64f395b}\label{classMeshComparePlugin_a5095ab7d75f5ebaaa0c07005b64f395b}} 
double \hyperlink{classMeshComparePlugin_a5095ab7d75f5ebaaa0c07005b64f395b}{last\+Maximal\+Distance} ()
\begin{DoxyCompactList}\small\item\em Get the maximal distance of the last comparison (-\/1, if no comparison performed so far) \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classMeshComparePlugin_ace3e917f074448e6fea6430cfd970ecb}\label{classMeshComparePlugin_ace3e917f074448e6fea6430cfd970ecb}} 
double \hyperlink{classMeshComparePlugin_ace3e917f074448e6fea6430cfd970ecb}{last\+Maximal\+Normal\+Deviation} ()
\begin{DoxyCompactList}\small\item\em Get the maximal normal deviation of the last comparison in degree (-\/1, if no comparison performed so far) \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classMeshComparePlugin_abd202149b5aefb375020854f3419769b}\label{classMeshComparePlugin_abd202149b5aefb375020854f3419769b}} 
double \hyperlink{classMeshComparePlugin_abd202149b5aefb375020854f3419769b}{last\+Maximal\+Mean\+Curvature\+Deviation} ()
\begin{DoxyCompactList}\small\item\em Get the maximal mean curvature deviation of the last comparison (-\/1, if no comparison performed so far) \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classMeshComparePlugin_a81c13f1a55aeb67e297273e90fee9926}\label{classMeshComparePlugin_a81c13f1a55aeb67e297273e90fee9926}} 
double \hyperlink{classMeshComparePlugin_a81c13f1a55aeb67e297273e90fee9926}{last\+Maximal\+Gauss\+Curvature\+Deviation} ()
\begin{DoxyCompactList}\small\item\em Get the maximal gauss curvature deviation of the last comparison (-\/1, if no comparison performed so far) \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Private Slots}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{classMeshComparePlugin_ae63b2f99d30fd176210807f1707bcee2}\label{classMeshComparePlugin_ae63b2f99d30fd176210807f1707bcee2}} 
void {\bfseries initialize\+Plugin} ()
\item 
\mbox{\Hypertarget{classMeshComparePlugin_a948ff2fc2f5460b021ecf5f76827feae}\label{classMeshComparePlugin_a948ff2fc2f5460b021ecf5f76827feae}} 
void {\bfseries plugins\+Initialized} ()
\item 
\mbox{\Hypertarget{classMeshComparePlugin_a798b5671960116ee3ee5d65be72e5d75}\label{classMeshComparePlugin_a798b5671960116ee3ee5d65be72e5d75}} 
void \hyperlink{classMeshComparePlugin_a798b5671960116ee3ee5d65be72e5d75}{compare\+Button} ()
\begin{DoxyCompactList}\small\item\em Triggers comparison of the selected meshes. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classMeshComparePlugin_a4422e8115a692adb2ad33b2bcbaf2303}\label{classMeshComparePlugin_a4422e8115a692adb2ad33b2bcbaf2303}} 
void \hyperlink{classMeshComparePlugin_a4422e8115a692adb2ad33b2bcbaf2303}{slot\+Clear} ()
\begin{DoxyCompactList}\small\item\em Clears the visualization. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classMeshComparePlugin_a237211548eee014e6bcfd118b8a27496}\label{classMeshComparePlugin_a237211548eee014e6bcfd118b8a27496}} 
void \hyperlink{classMeshComparePlugin_a237211548eee014e6bcfd118b8a27496}{slot\+Object\+Updated} (int \+\_\+identifier, const \hyperlink{classUpdateType}{Update\+Type} \&\+\_\+type)
\begin{DoxyCompactList}\small\item\em Called when an object gets updated. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classMeshComparePlugin_a12419aa2ce5d1d2a21961139c461393d}\label{classMeshComparePlugin_a12419aa2ce5d1d2a21961139c461393d}} 
void {\bfseries nogui\+Supported} ()
\item 
\mbox{\Hypertarget{classMeshComparePlugin_ad115ea720a45012bd4512c4713d6bf52}\label{classMeshComparePlugin_ad115ea720a45012bd4512c4713d6bf52}} 
void \hyperlink{classMeshComparePlugin_ad115ea720a45012bd4512c4713d6bf52}{slot\+Clamp\+Box} (bool \+\_\+checked)
\begin{DoxyCompactList}\small\item\em If the checkbox is changed to be checked, the values in the labels will be written into the spin boxes. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Private Member Functions}
\begin{DoxyCompactItemize}
\item 
void \hyperlink{classMeshComparePlugin_a8c2395bf9c2c34210ad5c631c6cce947}{visualize\+Data} (const std\+::vector$<$ double $>$ \&\+\_\+data, double \+\_\+max\+Value, \hyperlink{classACG_1_1SceneGraph_1_1PointNode}{A\+C\+G\+::\+Scene\+Graph\+::\+Point\+Node} $\ast$\+\_\+pnode)
\begin{DoxyCompactList}\small\item\em Visualize data. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Private Attributes}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{classMeshComparePlugin_a2c863433fd955d1726fabadffb80a5e0}\label{classMeshComparePlugin_a2c863433fd955d1726fabadffb80a5e0}} 
\hyperlink{classMeshCompareToolbarWidget}{Mesh\+Compare\+Toolbar\+Widget} $\ast$ \hyperlink{classMeshComparePlugin_a2c863433fd955d1726fabadffb80a5e0}{tool\+\_\+}
\begin{DoxyCompactList}\small\item\em The toolbar widget of this plugin. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classMeshComparePlugin_a942d2b06aebf76cbbf7400e1575b4173}\label{classMeshComparePlugin_a942d2b06aebf76cbbf7400e1575b4173}} 
double \hyperlink{classMeshComparePlugin_a942d2b06aebf76cbbf7400e1575b4173}{maximal\+Distance\+\_\+}
\begin{DoxyCompactList}\small\item\em Last maximal computed distance. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classMeshComparePlugin_aa4d53e94cf96759eb1f0ff5f77ba7eb2}\label{classMeshComparePlugin_aa4d53e94cf96759eb1f0ff5f77ba7eb2}} 
double \hyperlink{classMeshComparePlugin_aa4d53e94cf96759eb1f0ff5f77ba7eb2}{max\+Normal\+Deviation\+\_\+}
\begin{DoxyCompactList}\small\item\em Last maximal computed normal deviation in degree. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classMeshComparePlugin_a853194bdd9836281fe1bd6fbe273c9ab}\label{classMeshComparePlugin_a853194bdd9836281fe1bd6fbe273c9ab}} 
double \hyperlink{classMeshComparePlugin_a853194bdd9836281fe1bd6fbe273c9ab}{max\+Mean\+Curvature\+Dev\+\_\+}
\begin{DoxyCompactList}\small\item\em Last maximal mean curvature deviation. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classMeshComparePlugin_a3c84c899efc2141ee3959edf3f9a3835}\label{classMeshComparePlugin_a3c84c899efc2141ee3959edf3f9a3835}} 
double \hyperlink{classMeshComparePlugin_a3c84c899efc2141ee3959edf3f9a3835}{max\+Gauss\+Curvature\+Dev\+\_\+}
\begin{DoxyCompactList}\small\item\em Last maximal gauss curvature deviation. \end{DoxyCompactList}\end{DoxyCompactItemize}


\subsection{Detailed Description}


Definition at line 68 of file Mesh\+Compare\+Plugin.\+hh.



\subsection{Member Function Documentation}
\mbox{\Hypertarget{classMeshComparePlugin_a4ddf66d24d949da96263b48a5a9d3db2}\label{classMeshComparePlugin_a4ddf66d24d949da96263b48a5a9d3db2}} 
\index{Mesh\+Compare\+Plugin@{Mesh\+Compare\+Plugin}!compare@{compare}}
\index{compare@{compare}!Mesh\+Compare\+Plugin@{Mesh\+Compare\+Plugin}}
\subsubsection{\texorpdfstring{compare()}{compare()}}
{\footnotesize\ttfamily void Mesh\+Compare\+Plugin\+::compare (\begin{DoxyParamCaption}\item[{int}]{\+\_\+source\+Id,  }\item[{int}]{\+\_\+target\+Id,  }\item[{bool}]{\+\_\+compute\+Dist = {\ttfamily true},  }\item[{bool}]{\+\_\+compute\+Normal = {\ttfamily true},  }\item[{bool}]{\+\_\+compute\+Gauss = {\ttfamily true},  }\item[{bool}]{\+\_\+compute\+Mean = {\ttfamily true} }\end{DoxyParamCaption})}

Compares two meshes. Use the two getter functions to retrieve the maximal deviations.

The source will be the reference. The difference will be rendered as points on the target mesh.


\begin{DoxyParams}{Parameters}
{\em \+\_\+source\+Id} & Id of the reference mesh \\
\hline
{\em \+\_\+target\+Id} & Id of the mesh that should be compared to the reference mesh. \\
\hline
{\em \+\_\+compute\+Dist} & Compute distance between meshes \\
\hline
{\em \+\_\+compute\+Normal} & Compute normal deviation between meshes \\
\hline
{\em \+\_\+compute\+Gauss} & Compute gauss curvature deviation between meshes \\
\hline
{\em \+\_\+compute\+Mean} & Compute mean curvature deviation between meshes \\
\hline
\end{DoxyParams}


Definition at line 219 of file Mesh\+Compare\+Plugin.\+cc.

\mbox{\Hypertarget{classMeshComparePlugin_a398cffd4794ac9d8f7349f4b2c20e6b2}\label{classMeshComparePlugin_a398cffd4794ac9d8f7349f4b2c20e6b2}} 
\index{Mesh\+Compare\+Plugin@{Mesh\+Compare\+Plugin}!description@{description}}
\index{description@{description}!Mesh\+Compare\+Plugin@{Mesh\+Compare\+Plugin}}
\subsubsection{\texorpdfstring{description()}{description()}}
{\footnotesize\ttfamily Q\+String Mesh\+Compare\+Plugin\+::description (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}



Return a description of what the plugin is doing. 

This function has to return a basic description of the plugin 

Implements \hyperlink{classBaseInterface_a43f0d3612695b53c848c14f48fea9a7a}{Base\+Interface}.



Definition at line 109 of file Mesh\+Compare\+Plugin.\+hh.

\mbox{\Hypertarget{classMeshComparePlugin_a19955be82757ccd205f057f24583f918}\label{classMeshComparePlugin_a19955be82757ccd205f057f24583f918}} 
\index{Mesh\+Compare\+Plugin@{Mesh\+Compare\+Plugin}!name@{name}}
\index{name@{name}!Mesh\+Compare\+Plugin@{Mesh\+Compare\+Plugin}}
\subsubsection{\texorpdfstring{name()}{name()}}
{\footnotesize\ttfamily Q\+String Mesh\+Compare\+Plugin\+::name (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}



Return a name for the plugin. 

This Function has to return the name of the plugin. 

Implements \hyperlink{classBaseInterface_a2b351aa6ef0eb368bce735e243235958}{Base\+Interface}.



Definition at line 108 of file Mesh\+Compare\+Plugin.\+hh.

\mbox{\Hypertarget{classMeshComparePlugin_a8c2395bf9c2c34210ad5c631c6cce947}\label{classMeshComparePlugin_a8c2395bf9c2c34210ad5c631c6cce947}} 
\index{Mesh\+Compare\+Plugin@{Mesh\+Compare\+Plugin}!visualize\+Data@{visualize\+Data}}
\index{visualize\+Data@{visualize\+Data}!Mesh\+Compare\+Plugin@{Mesh\+Compare\+Plugin}}
\subsubsection{\texorpdfstring{visualize\+Data()}{visualizeData()}}
{\footnotesize\ttfamily void Mesh\+Compare\+Plugin\+::visualize\+Data (\begin{DoxyParamCaption}\item[{const std\+::vector$<$ double $>$ \&}]{\+\_\+data,  }\item[{double}]{\+\_\+max\+Value,  }\item[{\hyperlink{classACG_1_1SceneGraph_1_1PointNode}{A\+C\+G\+::\+Scene\+Graph\+::\+Point\+Node} $\ast$}]{\+\_\+pnode }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}}



Visualize data. 

This function visualizes the data via rendering points and pushes it to the histogram.


\begin{DoxyParams}{Parameters}
{\em \+\_\+data} & Vector of data points \\
\hline
{\em \+\_\+max\+Value} & Maximal value found in the data \\
\hline
{\em \+\_\+pnode} & The point node that will be used to visualize the data \\
\hline
\end{DoxyParams}


Definition at line 435 of file Mesh\+Compare\+Plugin.\+cc.



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