\hypertarget{a01204}{\section{Smoother\+Plugin Class Reference}
\label{a01204}\index{Smoother\+Plugin@{Smoother\+Plugin}}
}


{\ttfamily \#include $<$Plugin-\/\+Smoother/\+Smoother\+Plugin.\+hh$>$}

Inheritance diagram for Smoother\+Plugin\+:\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[height=12.000000cm]{a01204}
\end{center}
\end{figure}
\subsection*{Public Slots}
\begin{DoxyCompactItemize}
\item 
\hypertarget{a01204_a25565a2236d1fb6046f807820b888f03}{Q\+String {\bfseries version} ()}\label{a01204_a25565a2236d1fb6046f807820b888f03}

\item 
void \hyperlink{a01204_ace05010c1445b553c96bc794804a5fdd}{simple\+Laplace} (int \+\_\+iterations)
\begin{DoxyCompactList}\small\item\em simple\+Laplace \end{DoxyCompactList}\item 
\hypertarget{a01204_a25565a2236d1fb6046f807820b888f03}{Q\+String {\bfseries version} ()}\label{a01204_a25565a2236d1fb6046f807820b888f03}

\item 
\hypertarget{a01204_a25565a2236d1fb6046f807820b888f03}{Q\+String {\bfseries version} ()}\label{a01204_a25565a2236d1fb6046f807820b888f03}

\end{DoxyCompactItemize}
\begin{Indent}{\bf Scripting Functions}\par
\begin{DoxyCompactItemize}
\item 
void \hyperlink{a01204_aaa8e4a561c6d423559a5dd6cc5e4b45b}{smooth} (int \+\_\+object\+Id, int \+\_\+iterations, Q\+String \+\_\+direction, Q\+String \+\_\+continuity, double \+\_\+max\+Distance=-\/1.\+0, bool \+\_\+respect\+Features=true)
\begin{DoxyCompactList}\small\item\em smooth an object \end{DoxyCompactList}\end{DoxyCompactItemize}
\end{Indent}
\subsection*{Signals}
\begin{DoxyCompactItemize}
\item 
\hypertarget{a01204_a48fb31cf0d2d610573051b0b81735b2c}{void {\bfseries update\+View} ()}\label{a01204_a48fb31cf0d2d610573051b0b81735b2c}

\item 
\hypertarget{a01204_aea6f4351f0747d995567c429e2927ca5}{void {\bfseries updated\+Object} (int \+\_\+identifier, const \hyperlink{a01393}{Update\+Type} \&\+\_\+type)}\label{a01204_aea6f4351f0747d995567c429e2927ca5}

\item 
\hypertarget{a01204_af2a072038aff87175b0fce1d3cb423f0}{void {\bfseries log} (\hyperlink{a02444_a595b2880f3ae74561ba390e3fd8c0e7c}{Logtype} \+\_\+type, Q\+String \+\_\+message)}\label{a01204_af2a072038aff87175b0fce1d3cb423f0}

\item 
\hypertarget{a01204_a8f5cbda98d85c89703480c1a81f76fb1}{void {\bfseries log} (Q\+String \+\_\+message)}\label{a01204_a8f5cbda98d85c89703480c1a81f76fb1}

\item 
\hypertarget{a01204_a86134303128cb3bd9c94b16eedd88555}{void {\bfseries add\+Toolbox} (Q\+String \+\_\+name, Q\+Widget $\ast$\+\_\+widget)}\label{a01204_a86134303128cb3bd9c94b16eedd88555}

\item 
\hypertarget{a01204_a48fb31cf0d2d610573051b0b81735b2c}{void {\bfseries update\+View} ()}\label{a01204_a48fb31cf0d2d610573051b0b81735b2c}

\item 
\hypertarget{a01204_a92d2dc3d4950a94614c2a634e8a1796c}{void {\bfseries updated\+Object} (int \+\_\+id, const \hyperlink{a01393}{Update\+Type} \&\+\_\+type)}\label{a01204_a92d2dc3d4950a94614c2a634e8a1796c}

\item 
\hypertarget{a01204_ab664473acc2c836e6a7b0ed2f7279026}{void {\bfseries set\+Slot\+Description} (Q\+String \+\_\+slot\+Name, Q\+String \+\_\+slot\+Description, Q\+String\+List \+\_\+parameters, Q\+String\+List \+\_\+descriptions)}\label{a01204_ab664473acc2c836e6a7b0ed2f7279026}

\item 
\hypertarget{a01204_af2a072038aff87175b0fce1d3cb423f0}{void {\bfseries log} (\hyperlink{a02444_a595b2880f3ae74561ba390e3fd8c0e7c}{Logtype} \+\_\+type, Q\+String \+\_\+message)}\label{a01204_af2a072038aff87175b0fce1d3cb423f0}

\item 
\hypertarget{a01204_a8f5cbda98d85c89703480c1a81f76fb1}{void {\bfseries log} (Q\+String \+\_\+message)}\label{a01204_a8f5cbda98d85c89703480c1a81f76fb1}

\item 
\hypertarget{a01204_ae8946789b7d63f2ab85c817857253cf6}{void {\bfseries add\+Toolbox} (Q\+String \+\_\+name, Q\+Widget $\ast$\+\_\+widget, Q\+Icon $\ast$\+\_\+icon)}\label{a01204_ae8946789b7d63f2ab85c817857253cf6}

\item 
\hypertarget{a01204_a82522768a26c0d7b8077765688e531bb}{void {\bfseries script\+Info} (Q\+String \+\_\+function\+Name)}\label{a01204_a82522768a26c0d7b8077765688e531bb}

\item 
\hypertarget{a01204_a780b1308bae02ed6d07e4777aa754e90}{void {\bfseries create\+Backup} (int \+\_\+id, Q\+String \+\_\+name, \hyperlink{a01393}{Update\+Type} \+\_\+type=\hyperlink{a03407_ga4ce39b8d60eb78ada5080d032c9463a8}{U\+P\+D\+A\+T\+E\+\_\+\+A\+L\+L})}\label{a01204_a780b1308bae02ed6d07e4777aa754e90}

\item 
\hypertarget{a01204_a48fb31cf0d2d610573051b0b81735b2c}{void {\bfseries update\+View} ()}\label{a01204_a48fb31cf0d2d610573051b0b81735b2c}

\item 
\hypertarget{a01204_a2cf3e1f4dc77641f6c47e039801f0314}{void {\bfseries updated\+Object} (int, const \hyperlink{a01393}{Update\+Type} \&)}\label{a01204_a2cf3e1f4dc77641f6c47e039801f0314}

\item 
\hypertarget{a01204_ab664473acc2c836e6a7b0ed2f7279026}{void {\bfseries set\+Slot\+Description} (Q\+String \+\_\+slot\+Name, Q\+String \+\_\+slot\+Description, Q\+String\+List \+\_\+parameters, Q\+String\+List \+\_\+descriptions)}\label{a01204_ab664473acc2c836e6a7b0ed2f7279026}

\item 
\hypertarget{a01204_af2a072038aff87175b0fce1d3cb423f0}{void {\bfseries log} (\hyperlink{a02444_a595b2880f3ae74561ba390e3fd8c0e7c}{Logtype} \+\_\+type, Q\+String \+\_\+message)}\label{a01204_af2a072038aff87175b0fce1d3cb423f0}

\item 
\hypertarget{a01204_a8f5cbda98d85c89703480c1a81f76fb1}{void {\bfseries log} (Q\+String \+\_\+message)}\label{a01204_a8f5cbda98d85c89703480c1a81f76fb1}

\item 
\hypertarget{a01204_ae8946789b7d63f2ab85c817857253cf6}{void {\bfseries add\+Toolbox} (Q\+String \+\_\+name, Q\+Widget $\ast$\+\_\+widget, Q\+Icon $\ast$\+\_\+icon)}\label{a01204_ae8946789b7d63f2ab85c817857253cf6}

\item 
\hypertarget{a01204_a780b1308bae02ed6d07e4777aa754e90}{void {\bfseries create\+Backup} (int \+\_\+id, Q\+String \+\_\+name, \hyperlink{a01393}{Update\+Type} \+\_\+type=\hyperlink{a03407_ga4ce39b8d60eb78ada5080d032c9463a8}{U\+P\+D\+A\+T\+E\+\_\+\+A\+L\+L})}\label{a01204_a780b1308bae02ed6d07e4777aa754e90}

\item 
\hypertarget{a01204_a82522768a26c0d7b8077765688e531bb}{void {\bfseries script\+Info} (Q\+String \+\_\+function\+Name)}\label{a01204_a82522768a26c0d7b8077765688e531bb}

\end{DoxyCompactItemize}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
Q\+String \hyperlink{a01204_a47e0b61cc8695c3cd5e1abdd62ab0d69}{name} ()
\begin{DoxyCompactList}\small\item\em Return a name for the plugin. \end{DoxyCompactList}\item 
Q\+String \hyperlink{a01204_a563f0454d1b416932c46a9288db2f57e}{description} ()
\begin{DoxyCompactList}\small\item\em Return a description of what the plugin is doing. \end{DoxyCompactList}\item 
Q\+String \hyperlink{a01204_a47e0b61cc8695c3cd5e1abdd62ab0d69}{name} ()
\begin{DoxyCompactList}\small\item\em Return a name for the plugin. \end{DoxyCompactList}\item 
Q\+String \hyperlink{a01204_a563f0454d1b416932c46a9288db2f57e}{description} ()
\begin{DoxyCompactList}\small\item\em Return a description of what the plugin is doing. \end{DoxyCompactList}\item 
\hypertarget{a01204_aefa69523e0f9b1b98a819736bfdf126c}{\hyperlink{a01204_aefa69523e0f9b1b98a819736bfdf126c}{Smoother\+Plugin} ()}\label{a01204_aefa69523e0f9b1b98a819736bfdf126c}

\begin{DoxyCompactList}\small\item\em default constructor \end{DoxyCompactList}\item 
\hypertarget{a01204_aa037816d3592488c4ad743a727a28241}{\hyperlink{a01204_aa037816d3592488c4ad743a727a28241}{$\sim$\+Smoother\+Plugin} ()}\label{a01204_aa037816d3592488c4ad743a727a28241}

\begin{DoxyCompactList}\small\item\em default destructor \end{DoxyCompactList}\item 
\hypertarget{a01204_a47e0b61cc8695c3cd5e1abdd62ab0d69}{Q\+String \hyperlink{a01204_a47e0b61cc8695c3cd5e1abdd62ab0d69}{name} ()}\label{a01204_a47e0b61cc8695c3cd5e1abdd62ab0d69}

\begin{DoxyCompactList}\small\item\em Name of the Plugin. \end{DoxyCompactList}\item 
\hypertarget{a01204_a563f0454d1b416932c46a9288db2f57e}{Q\+String \hyperlink{a01204_a563f0454d1b416932c46a9288db2f57e}{description} ()}\label{a01204_a563f0454d1b416932c46a9288db2f57e}

\begin{DoxyCompactList}\small\item\em Description of the Plugin. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Private Types}
\begin{DoxyCompactItemize}
\item 
\hypertarget{a01204_aff241a0375b07f3e674bcd8a53fe17f3}{typedef \\*
\hyperlink{a00746}{Open\+Mesh\+::\+Smoother\+::\+Jacobi\+Laplace\+Smoother\+T}\\*
$<$ \hyperlink{a02425_a41cbba34c91d41c5325cc019b097ad91}{Tri\+Mesh} $>$ {\bfseries Smoother\+Type}}\label{a01204_aff241a0375b07f3e674bcd8a53fe17f3}

\end{DoxyCompactItemize}
\subsection*{Private Slots}
\begin{DoxyCompactItemize}
\item 
\hypertarget{a01204_abf44d05382e172aa2aff93031eb02b67}{void {\bfseries initialize\+Plugin} ()}\label{a01204_abf44d05382e172aa2aff93031eb02b67}

\item 
void \hyperlink{a01204_aa1921cbedff24c0b01d45a9890af5c84}{simple\+Laplace} ()
\begin{DoxyCompactList}\small\item\em simple\+Laplace \end{DoxyCompactList}\item 
\hypertarget{a01204_aa1921cbedff24c0b01d45a9890af5c84}{void {\bfseries simple\+Laplace} ()}\label{a01204_aa1921cbedff24c0b01d45a9890af5c84}

\item 
\hypertarget{a01204_abf44d05382e172aa2aff93031eb02b67}{void {\bfseries initialize\+Plugin} ()}\label{a01204_abf44d05382e172aa2aff93031eb02b67}

\item 
void \hyperlink{a01204_a8e6d224c64f664afbedb9316d28e32f3}{plugins\+Initialized} ()
\begin{DoxyCompactList}\small\item\em Set the scripting slot descriptions. \end{DoxyCompactList}\item 
\hypertarget{a01204_abf44d05382e172aa2aff93031eb02b67}{void {\bfseries initialize\+Plugin} ()}\label{a01204_abf44d05382e172aa2aff93031eb02b67}

\item 
\hypertarget{a01204_a8e6d224c64f664afbedb9316d28e32f3}{void \hyperlink{a01204_a8e6d224c64f664afbedb9316d28e32f3}{plugins\+Initialized} ()}\label{a01204_a8e6d224c64f664afbedb9316d28e32f3}

\begin{DoxyCompactList}\small\item\em Second initialization stage. \end{DoxyCompactList}\item 
\hypertarget{a01204_ae3dd6921fb6713bac521aacd369e3ba9}{void \hyperlink{a01204_ae3dd6921fb6713bac521aacd369e3ba9}{nogui\+Supported} ()}\label{a01204_ae3dd6921fb6713bac521aacd369e3ba9}

\begin{DoxyCompactList}\small\item\em Tell system that this plugin runs without ui. \end{DoxyCompactList}\item 
void \hyperlink{a01204_aeff1a2d91eab94a9275c675dbcfbfad4}{slot\+\_\+smooth} ()
\begin{DoxyCompactList}\small\item\em Slot connected to the smooth button in the toolbox. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Private Attributes}
\begin{DoxyCompactItemize}
\item 
\hypertarget{a01204_ae8739b32abce7aed26946c4c162c43e9}{Q\+Spin\+Box $\ast$ \hyperlink{a01204_ae8739b32abce7aed26946c4c162c43e9}{iterations\+Spinbox\+\_\+}}\label{a01204_ae8739b32abce7aed26946c4c162c43e9}

\begin{DoxyCompactList}\small\item\em Spin\+Box for Number of iterations. \end{DoxyCompactList}\item 
\hypertarget{a01204_a4efc72d078adf30fd86c59c931a1bfc4}{\hyperlink{a01206}{Smoother\+Toolbar\+Widget} $\ast$ \hyperlink{a01204_a4efc72d078adf30fd86c59c931a1bfc4}{tool\+\_\+}}\label{a01204_a4efc72d078adf30fd86c59c931a1bfc4}

\begin{DoxyCompactList}\small\item\em Widget for Toolbox. \end{DoxyCompactList}\item 
\hypertarget{a01204_ad89f29963de60177b860cfef3cf0265e}{Q\+Icon $\ast$ {\bfseries tool\+Icon\+\_\+}}\label{a01204_ad89f29963de60177b860cfef3cf0265e}

\end{DoxyCompactItemize}
\subsection*{Additional Inherited Members}


\subsection{Detailed Description}
Plugin for Smoother Support 

Definition at line 9 of file Smoother\+Plugin.\+hh.



\subsection{Member Function Documentation}
\hypertarget{a01204_a563f0454d1b416932c46a9288db2f57e}{\index{Smoother\+Plugin@{Smoother\+Plugin}!description@{description}}
\index{description@{description}!Smoother\+Plugin@{Smoother\+Plugin}}
\subsubsection[{description}]{\setlength{\rightskip}{0pt plus 5cm}Q\+String Smoother\+Plugin\+::description (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}}\label{a01204_a563f0454d1b416932c46a9288db2f57e}


Return a description of what the plugin is doing. 

This function has to return a basic description of the plugin 

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



Definition at line 34 of file Smoother\+Plugin.\+hh.

\hypertarget{a01204_a563f0454d1b416932c46a9288db2f57e}{\index{Smoother\+Plugin@{Smoother\+Plugin}!description@{description}}
\index{description@{description}!Smoother\+Plugin@{Smoother\+Plugin}}
\subsubsection[{description}]{\setlength{\rightskip}{0pt plus 5cm}Q\+String Smoother\+Plugin\+::description (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}}\label{a01204_a563f0454d1b416932c46a9288db2f57e}


Return a description of what the plugin is doing. 

This function has to return a basic description of the plugin 

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



Definition at line 103 of file Smoother\+Plugin.\+hh.

\hypertarget{a01204_a47e0b61cc8695c3cd5e1abdd62ab0d69}{\index{Smoother\+Plugin@{Smoother\+Plugin}!name@{name}}
\index{name@{name}!Smoother\+Plugin@{Smoother\+Plugin}}
\subsubsection[{name}]{\setlength{\rightskip}{0pt plus 5cm}Q\+String Smoother\+Plugin\+::name (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}}\label{a01204_a47e0b61cc8695c3cd5e1abdd62ab0d69}


Return a name for the plugin. 

This Function has to return the name of the plugin. 

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



Definition at line 33 of file Smoother\+Plugin.\+hh.

\hypertarget{a01204_a47e0b61cc8695c3cd5e1abdd62ab0d69}{\index{Smoother\+Plugin@{Smoother\+Plugin}!name@{name}}
\index{name@{name}!Smoother\+Plugin@{Smoother\+Plugin}}
\subsubsection[{name}]{\setlength{\rightskip}{0pt plus 5cm}Q\+String Smoother\+Plugin\+::name (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}}\label{a01204_a47e0b61cc8695c3cd5e1abdd62ab0d69}


Return a name for the plugin. 

This Function has to return the name of the plugin. 

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



Definition at line 102 of file Smoother\+Plugin.\+hh.

\hypertarget{a01204_a8e6d224c64f664afbedb9316d28e32f3}{\index{Smoother\+Plugin@{Smoother\+Plugin}!plugins\+Initialized@{plugins\+Initialized}}
\index{plugins\+Initialized@{plugins\+Initialized}!Smoother\+Plugin@{Smoother\+Plugin}}
\subsubsection[{plugins\+Initialized}]{\setlength{\rightskip}{0pt plus 5cm}void Smoother\+Plugin\+::plugins\+Initialized (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [private]}, {\ttfamily [slot]}}}\label{a01204_a8e6d224c64f664afbedb9316d28e32f3}


Set the scripting slot descriptions. 



Definition at line 102 of file Smoother\+Plugin.\+cc.

\hypertarget{a01204_aa1921cbedff24c0b01d45a9890af5c84}{\index{Smoother\+Plugin@{Smoother\+Plugin}!simple\+Laplace@{simple\+Laplace}}
\index{simple\+Laplace@{simple\+Laplace}!Smoother\+Plugin@{Smoother\+Plugin}}
\subsubsection[{simple\+Laplace}]{\setlength{\rightskip}{0pt plus 5cm}void Smoother\+Plugin\+::simple\+Laplace (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [private]}, {\ttfamily [slot]}}}\label{a01204_aa1921cbedff24c0b01d45a9890af5c84}


simple\+Laplace 

Smooth mesh using the Laplace operator with uniform weights. 

Definition at line 78 of file Smoother\+Plugin.\+cc.

\hypertarget{a01204_ace05010c1445b553c96bc794804a5fdd}{\index{Smoother\+Plugin@{Smoother\+Plugin}!simple\+Laplace@{simple\+Laplace}}
\index{simple\+Laplace@{simple\+Laplace}!Smoother\+Plugin@{Smoother\+Plugin}}
\subsubsection[{simple\+Laplace}]{\setlength{\rightskip}{0pt plus 5cm}void Smoother\+Plugin\+::simple\+Laplace (
\begin{DoxyParamCaption}
\item[{int}]{\+\_\+iterations}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [slot]}}}\label{a01204_ace05010c1445b553c96bc794804a5fdd}


simple\+Laplace 

Smooth mesh using the Laplace operator with uniform weights.


\begin{DoxyParams}{Parameters}
{\em \+\_\+iterations} & Number of iterations \\
\hline
\end{DoxyParams}


Definition at line 132 of file Smoother\+Plugin.\+cc.

\hypertarget{a01204_aeff1a2d91eab94a9275c675dbcfbfad4}{\index{Smoother\+Plugin@{Smoother\+Plugin}!slot\+\_\+smooth@{slot\+\_\+smooth}}
\index{slot\+\_\+smooth@{slot\+\_\+smooth}!Smoother\+Plugin@{Smoother\+Plugin}}
\subsubsection[{slot\+\_\+smooth}]{\setlength{\rightskip}{0pt plus 5cm}void Smoother\+Plugin\+::slot\+\_\+smooth (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [private]}, {\ttfamily [slot]}}}\label{a01204_aeff1a2d91eab94a9275c675dbcfbfad4}


Slot connected to the smooth button in the toolbox. 

Smooth all target objects.

Parameters for the smoothing are retrieved from the toolbox 

Definition at line 130 of file Smoother\+Plugin.\+cc.

\hypertarget{a01204_aaa8e4a561c6d423559a5dd6cc5e4b45b}{\index{Smoother\+Plugin@{Smoother\+Plugin}!smooth@{smooth}}
\index{smooth@{smooth}!Smoother\+Plugin@{Smoother\+Plugin}}
\subsubsection[{smooth}]{\setlength{\rightskip}{0pt plus 5cm}void Smoother\+Plugin\+::smooth (
\begin{DoxyParamCaption}
\item[{int}]{\+\_\+object\+Id, }
\item[{int}]{\+\_\+iterations, }
\item[{Q\+String}]{\+\_\+direction, }
\item[{Q\+String}]{\+\_\+continuity, }
\item[{double}]{\+\_\+max\+Distance = {\ttfamily -\/1.0}, }
\item[{bool}]{\+\_\+respect\+Features = {\ttfamily true}}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [slot]}}}\label{a01204_aaa8e4a561c6d423559a5dd6cc5e4b45b}


smooth an object 


\begin{DoxyParams}{Parameters}
{\em \+\_\+object\+Id} & Id of the object that should be smoothed \\
\hline
{\em \+\_\+iterations} & Number of iterations \\
\hline
{\em \+\_\+direction} & Tangential or normal? \\
\hline
{\em \+\_\+continuity} & Continuity selection \\
\hline
{\em \+\_\+max\+Distance} & Maximal distance after smoothing \\
\hline
{\em \+\_\+respect\+Features} & Keep features \\
\hline
\end{DoxyParams}


Definition at line 243 of file Smoother\+Plugin.\+cc.



The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize}
\item 
Open\+Flipper/\+Documentation/\+Developer\+Help\+Sources/example/Smoother\+Plugin.\+hh\item 
Open\+Flipper/\+Documentation/\+Developer\+Help\+Sources/example/Smoother\+Plugin.\+cc\end{DoxyCompactItemize}
