\hypertarget{a00911}{\section{O\+M\+Property\+Visualizer$<$ Mesh\+T $>$ Class Template Reference}
\label{a00911}\index{O\+M\+Property\+Visualizer$<$ Mesh\+T $>$@{O\+M\+Property\+Visualizer$<$ Mesh\+T $>$}}
}
Inheritance diagram for O\+M\+Property\+Visualizer$<$ Mesh\+T $>$\+:\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[height=1.117764cm]{a00911}
\end{center}
\end{figure}
\subsection*{Classes}
\begin{DoxyCompactItemize}
\item 
class \hyperlink{a00466}{Copy\+Property}
\end{DoxyCompactItemize}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\hypertarget{a00911_af5e4185ce0fc146fa8db8092266a9fce}{{\bfseries O\+M\+Property\+Visualizer} (Mesh\+T $\ast$\+\_\+mesh, \hyperlink{a01033}{Property\+Info} \+\_\+property\+Info)}\label{a00911_af5e4185ce0fc146fa8db8092266a9fce}

\item 
virtual void \hyperlink{a00911_ab65cff35528ed4c7cfff02c444f60ce6}{visualize} (bool \+\_\+set\+Draw\+Mode, Q\+Widget $\ast$\+\_\+widget)
\begin{DoxyCompactList}\small\item\em Visualizes the property. \end{DoxyCompactList}\item 
virtual void \hyperlink{a00911_ad2b376392ad165e56a01d25336622086}{remove\+Property} ()
\begin{DoxyCompactList}\small\item\em Removes the property. \end{DoxyCompactList}\item 
virtual void \hyperlink{a00911_a027f04bed5745fc80263a9da964c22a9}{duplicate\+Property} ()
\begin{DoxyCompactList}\small\item\em Duplicates the property. \end{DoxyCompactList}\item 
virtual void \hyperlink{a00911_a390408f9ea5653eece5660bbf308494e}{clear} ()
\begin{DoxyCompactList}\small\item\em Clears the property. \end{DoxyCompactList}\item 
unsigned int \hyperlink{a00911_ada1ef586045686c33b810738d00e11dd}{get\+Closest\+Primitive\+Id} (unsigned int \+\_\+face, \hyperlink{a03336_ae4a56bb6b65d7f966934982a1e370213}{A\+C\+G\+::\+Vec3d} \&\+\_\+hit\+Point)
\begin{DoxyCompactList}\small\item\em Returns the I\+D of the closest primitive. \end{DoxyCompactList}\item 
virtual Q\+String \hyperlink{a00911_a71a04dc64ec6ee746e3fd2a7751ee85e}{get\+Property\+Text} (unsigned int index)
\begin{DoxyCompactList}\small\item\em Returns the value of a property in text form. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Protected Member Functions}
\begin{DoxyCompactItemize}
\item 
\hypertarget{a00911_a72866e60501a4b1c5393c382528f30b4}{virtual void {\bfseries visualize\+Face\+Prop} (bool \+\_\+set\+Draw\+Mode=true)}\label{a00911_a72866e60501a4b1c5393c382528f30b4}

\item 
\hypertarget{a00911_acf83e783644d413572223ea5e24cf8fa}{virtual void {\bfseries visualize\+Edge\+Prop} (bool \+\_\+set\+Draw\+Mode=true)}\label{a00911_acf83e783644d413572223ea5e24cf8fa}

\item 
\hypertarget{a00911_ac1f1163d3eb09ef7476175b9bef1cc51}{virtual void {\bfseries visualize\+Halfedge\+Prop} (bool \+\_\+set\+Draw\+Mode=true)}\label{a00911_ac1f1163d3eb09ef7476175b9bef1cc51}

\item 
\hypertarget{a00911_a57f68005ce6e8febcb3f0f38a602a406}{virtual void {\bfseries visualize\+Vertex\+Prop} (bool \+\_\+set\+Draw\+Mode=true)}\label{a00911_a57f68005ce6e8febcb3f0f38a602a406}

\item 
\hypertarget{a00911_a7e2dc3ab4fe9af380eaba4ed8df33444}{{\footnotesize template$<$typename Prop\+Type $>$ }\\void {\bfseries remove\+Property\+\_\+stage1} ()}\label{a00911_a7e2dc3ab4fe9af380eaba4ed8df33444}

\item 
\hypertarget{a00911_a170f320311e65653fc185fecd41b6d3a}{{\footnotesize template$<$typename Prop\+Type $>$ }\\void {\bfseries remove\+Property\+\_\+stage2} ()}\label{a00911_a170f320311e65653fc185fecd41b6d3a}

\item 
\hypertarget{a00911_accc58b4483ac37e19d0860b71f2b3d2f}{{\footnotesize template$<$typename Prop\+Type $>$ }\\void {\bfseries duplicate\+Property\+\_\+stage1} ()}\label{a00911_accc58b4483ac37e19d0860b71f2b3d2f}

\item 
\hypertarget{a00911_acf3e7da979f0f9cc51f250d801806904}{{\footnotesize template$<$typename Prop\+Handle , typename Iterator $>$ }\\void {\bfseries duplicate\+Property\+\_\+stage2} (Iterator first, Iterator last)}\label{a00911_acf3e7da979f0f9cc51f250d801806904}

\item 
\hypertarget{a00911_a81649909d7d5b0c56e581e9384c82ef2}{virtual void {\bfseries clear\+Face\+Prop} ()}\label{a00911_a81649909d7d5b0c56e581e9384c82ef2}

\item 
\hypertarget{a00911_a94fdc624291d4076499ec2efb062b75c}{virtual void {\bfseries clear\+Edge\+Prop} ()}\label{a00911_a94fdc624291d4076499ec2efb062b75c}

\item 
\hypertarget{a00911_a1b83562f44e3342b5cbb90ebc198996b}{virtual void {\bfseries clear\+Halfedge\+Prop} ()}\label{a00911_a1b83562f44e3342b5cbb90ebc198996b}

\item 
\hypertarget{a00911_ad5e7c7cd15b63710f08b48cc8a30e580}{virtual void {\bfseries clear\+Vertex\+Prop} ()}\label{a00911_ad5e7c7cd15b63710f08b48cc8a30e580}

\item 
\hypertarget{a00911_a9e0214577feecb2933b1404d106a9cb7}{virtual void {\bfseries set\+Face\+Property\+From\+Text} (unsigned int index, Q\+String text)}\label{a00911_a9e0214577feecb2933b1404d106a9cb7}

\item 
\hypertarget{a00911_ad08b58ec80d4c325db7e175963c9655e}{virtual void {\bfseries set\+Edge\+Property\+From\+Text} (unsigned int index, Q\+String text)}\label{a00911_ad08b58ec80d4c325db7e175963c9655e}

\item 
\hypertarget{a00911_a08712bd6d9547bf0ed808449a33fe978}{virtual void {\bfseries set\+Halfedge\+Property\+From\+Text} (unsigned int index, Q\+String text)}\label{a00911_a08712bd6d9547bf0ed808449a33fe978}

\item 
\hypertarget{a00911_a7145ba09719db63ab3744acdb2531f5e}{virtual void {\bfseries set\+Vertex\+Property\+From\+Text} (unsigned int index, Q\+String text)}\label{a00911_a7145ba09719db63ab3744acdb2531f5e}

\item 
\hypertarget{a00911_a199d9b8fd390b1e2210b114159430eba}{\hyperlink{a03368_a3b7e6dba036bbefcc461f05db4f7694b}{Open\+Mesh\+::\+Vec4f} {\bfseries convert\+Color} (Q\+Color color)}\label{a00911_a199d9b8fd390b1e2210b114159430eba}

\item 
virtual void \hyperlink{a00911_a676cb51a02a115f5bb5a56097cde194d}{set\+Property\+From\+Text} (unsigned int index, Q\+String text)
\begin{DoxyCompactList}\small\item\em Returns the value of a property in text form. \end{DoxyCompactList}\item 
\hypertarget{a00911_aec61f3fe7c32f097553549b82d579da7}{virtual int \hyperlink{a00911_aec61f3fe7c32f097553549b82d579da7}{get\+Entity\+Count} ()}\label{a00911_aec61f3fe7c32f097553549b82d579da7}

\begin{DoxyCompactList}\small\item\em Returns the number of entities. \end{DoxyCompactList}\item 
\hypertarget{a00911_add3df8e2d32d48058939a53efbfdbf6e}{virtual Q\+String \hyperlink{a00911_add3df8e2d32d48058939a53efbfdbf6e}{get\+Header} ()}\label{a00911_add3df8e2d32d48058939a53efbfdbf6e}

\begin{DoxyCompactList}\small\item\em Returns the header for saving. \end{DoxyCompactList}\item 
\hypertarget{a00911_aad03fff76d1ebcb461fedf0d909641ee}{unsigned int {\bfseries get\+Closest\+Face\+Id} (unsigned int \+\_\+face, \hyperlink{a03336_ae4a56bb6b65d7f966934982a1e370213}{A\+C\+G\+::\+Vec3d} \&\+\_\+hit\+Point)}\label{a00911_aad03fff76d1ebcb461fedf0d909641ee}

\item 
\hypertarget{a00911_a68f5f66c11b32c11f9762886898095e4}{unsigned int {\bfseries get\+Closest\+Edge\+Id} (unsigned int \+\_\+face, \hyperlink{a03336_ae4a56bb6b65d7f966934982a1e370213}{A\+C\+G\+::\+Vec3d} \&\+\_\+hit\+Point)}\label{a00911_a68f5f66c11b32c11f9762886898095e4}

\item 
\hypertarget{a00911_ac34dd26610e2135e0871cd6c2632e4f6}{unsigned int {\bfseries get\+Closest\+Halfedge\+Id} (unsigned int \+\_\+face, \hyperlink{a03336_ae4a56bb6b65d7f966934982a1e370213}{A\+C\+G\+::\+Vec3d} \&\+\_\+hit\+Point)}\label{a00911_ac34dd26610e2135e0871cd6c2632e4f6}

\item 
\hypertarget{a00911_ae78321db87e9cb70f78b5621de3252eb}{unsigned int {\bfseries get\+Closest\+Vertex\+Id} (unsigned int \+\_\+face, \hyperlink{a03336_ae4a56bb6b65d7f966934982a1e370213}{A\+C\+G\+::\+Vec3d} \&\+\_\+hit\+Point)}\label{a00911_ae78321db87e9cb70f78b5621de3252eb}

\item 
\hypertarget{a00911_a7c56ad16126145dc9a2cd4b3dfd78f22}{{\footnotesize template$<$typename Inner\+Type $>$ }\\Q\+String {\bfseries get\+Property\+Text\+\_\+} (unsigned int index)}\label{a00911_a7c56ad16126145dc9a2cd4b3dfd78f22}

\end{DoxyCompactItemize}
\subsection*{Protected Attributes}
\begin{DoxyCompactItemize}
\item 
\hypertarget{a00911_a3f4aca58c9e6bc926463a94b9efb7e74}{Mesh\+T $\ast$ {\bfseries mesh}}\label{a00911_a3f4aca58c9e6bc926463a94b9efb7e74}

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


\subsection{Detailed Description}
\subsubsection*{template$<$typename Mesh\+T$>$class O\+M\+Property\+Visualizer$<$ Mesh\+T $>$}



Definition at line 61 of file O\+M\+Property\+Visualizer.\+hh.



\subsection{Member Function Documentation}
\hypertarget{a00911_a390408f9ea5653eece5660bbf308494e}{\index{O\+M\+Property\+Visualizer@{O\+M\+Property\+Visualizer}!clear@{clear}}
\index{clear@{clear}!O\+M\+Property\+Visualizer@{O\+M\+Property\+Visualizer}}
\subsubsection[{clear}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename Mesh\+T $>$ void {\bf O\+M\+Property\+Visualizer}$<$ Mesh\+T $>$\+::clear (
\begin{DoxyParamCaption}
\item[{void}]{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [virtual]}}}\label{a00911_a390408f9ea5653eece5660bbf308494e}


Clears the property. 

This method clears the property by releasing the colors of the mesh. 

Reimplemented from \hyperlink{a01048_a46b96d36d7e87c95338b9bf16590f42c}{Property\+Visualizer}.



Reimplemented in \hyperlink{a00916_a039fce26f70cde86cd6b4468aa021acc}{O\+M\+Property\+Visualizer\+Vector2$<$ Mesh\+T, Vector\+Type $>$}, and \hyperlink{a00915_ac8342152d622faaefd1cd4886470ef8e}{O\+M\+Property\+Visualizer\+Vector$<$ Mesh\+T $>$}.



Definition at line 339 of file O\+M\+Property\+Visualizer\+T.\+cc.

\hypertarget{a00911_a027f04bed5745fc80263a9da964c22a9}{\index{O\+M\+Property\+Visualizer@{O\+M\+Property\+Visualizer}!duplicate\+Property@{duplicate\+Property}}
\index{duplicate\+Property@{duplicate\+Property}!O\+M\+Property\+Visualizer@{O\+M\+Property\+Visualizer}}
\subsubsection[{duplicate\+Property}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename Mesh\+T$>$ virtual void {\bf O\+M\+Property\+Visualizer}$<$ Mesh\+T $>$\+::duplicate\+Property (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}}\label{a00911_a027f04bed5745fc80263a9da964c22a9}


Duplicates the property. 

This will duplicate the property. 

Reimplemented from \hyperlink{a01048_a0ef33f9678bbb847349f0d7112d623fa}{Property\+Visualizer}.



Reimplemented in \hyperlink{a00916_a9d0622f587263297b3dff0341e3b9e78}{O\+M\+Property\+Visualizer\+Vector2$<$ Mesh\+T, Vector\+Type $>$}, \hyperlink{a00915_a847aa01668894d3a8ba6cc6922dac35b}{O\+M\+Property\+Visualizer\+Vector$<$ Mesh\+T $>$}, \hyperlink{a00913_adf3a61a3b17c186df0913dfc2ed5e820}{O\+M\+Property\+Visualizer\+Double$<$ Mesh\+T $>$}, \hyperlink{a00914_a22bf220a596155448d46c36e1117afa1}{O\+M\+Property\+Visualizer\+Integer$<$ Mesh\+T, T $>$}, and \hyperlink{a00912_af58986fe1042b71fd206a464e7d78d3c}{O\+M\+Property\+Visualizer\+Boolean$<$ Mesh\+T $>$}.



Definition at line 88 of file O\+M\+Property\+Visualizer.\+hh.

\hypertarget{a00911_ada1ef586045686c33b810738d00e11dd}{\index{O\+M\+Property\+Visualizer@{O\+M\+Property\+Visualizer}!get\+Closest\+Primitive\+Id@{get\+Closest\+Primitive\+Id}}
\index{get\+Closest\+Primitive\+Id@{get\+Closest\+Primitive\+Id}!O\+M\+Property\+Visualizer@{O\+M\+Property\+Visualizer}}
\subsubsection[{get\+Closest\+Primitive\+Id}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename Mesh\+T $>$ unsigned int {\bf O\+M\+Property\+Visualizer}$<$ Mesh\+T $>$\+::get\+Closest\+Primitive\+Id (
\begin{DoxyParamCaption}
\item[{unsigned int}]{\+\_\+face, }
\item[{{\bf A\+C\+G\+::\+Vec3d} \&}]{\+\_\+hit\+Point}
\end{DoxyParamCaption}
)}}\label{a00911_ada1ef586045686c33b810738d00e11dd}


Returns the I\+D of the closest primitive. 


\begin{DoxyParams}{Parameters}
{\em \+\_\+face} & The face that was hit. \\
\hline
{\em \+\_\+hit\+Point} & The position where the face was hit. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The I\+D of the primitive that is closest to the hitpoint.
\end{DoxyReturn}
This method is used for picking. For some entities it might be convenient to not pick them directly but pick faces instead. Then, this method iterates over the entities adjacent to the face and return the one that is closest to the actual hit point. 

Definition at line 206 of file O\+M\+Property\+Visualizer\+T.\+cc.

\hypertarget{a00911_a71a04dc64ec6ee746e3fd2a7751ee85e}{\index{O\+M\+Property\+Visualizer@{O\+M\+Property\+Visualizer}!get\+Property\+Text@{get\+Property\+Text}}
\index{get\+Property\+Text@{get\+Property\+Text}!O\+M\+Property\+Visualizer@{O\+M\+Property\+Visualizer}}
\subsubsection[{get\+Property\+Text}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename Mesh\+T $>$ Q\+String {\bf O\+M\+Property\+Visualizer}$<$ Mesh\+T $>$\+::get\+Property\+Text (
\begin{DoxyParamCaption}
\item[{unsigned int}]{i}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [virtual]}}}\label{a00911_a71a04dc64ec6ee746e3fd2a7751ee85e}


Returns the value of a property in text form. 


\begin{DoxyParams}{Parameters}
{\em i} & The id of the entity whose property we want to know. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The property value in text form. 
\end{DoxyReturn}


Implements \hyperlink{a01048_a58ba1a684654e1427a8d58408fb5c5e4}{Property\+Visualizer}.



Reimplemented in \hyperlink{a00916_af39fdf93459d09d1401d86349fe7b3d6}{O\+M\+Property\+Visualizer\+Vector2$<$ Mesh\+T, Vector\+Type $>$}, \hyperlink{a00915_a39bce112841087ffcae5cf9c5be1217e}{O\+M\+Property\+Visualizer\+Vector$<$ Mesh\+T $>$}, \hyperlink{a00917_ae3dd472512b732810dc6539190393722}{O\+M\+Property\+Visualizer\+Vector\+Field\+Difference$<$ Mesh\+T $>$}, \hyperlink{a00914_a42e993590ecd1508456f059169e63be6}{O\+M\+Property\+Visualizer\+Integer$<$ Mesh\+T, T $>$}, \hyperlink{a00913_a4d4ab420da16ebd5bd16de5130d281aa}{O\+M\+Property\+Visualizer\+Double$<$ Mesh\+T $>$}, and \hyperlink{a00912_a057f9d33931f8eebca297368e7491157}{O\+M\+Property\+Visualizer\+Boolean$<$ Mesh\+T $>$}.



Definition at line 148 of file O\+M\+Property\+Visualizer\+T.\+cc.

\hypertarget{a00911_ad2b376392ad165e56a01d25336622086}{\index{O\+M\+Property\+Visualizer@{O\+M\+Property\+Visualizer}!remove\+Property@{remove\+Property}}
\index{remove\+Property@{remove\+Property}!O\+M\+Property\+Visualizer@{O\+M\+Property\+Visualizer}}
\subsubsection[{remove\+Property}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename Mesh\+T$>$ virtual void {\bf O\+M\+Property\+Visualizer}$<$ Mesh\+T $>$\+::remove\+Property (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}}\label{a00911_ad2b376392ad165e56a01d25336622086}


Removes the property. 

This will remove the property from the mesh. After this method the \hyperlink{a01048}{Property\+Visualizer} should be deleted. 

Reimplemented from \hyperlink{a01048_afbc5419dc5f0f69e5b7bc6372d3fa55f}{Property\+Visualizer}.



Reimplemented in \hyperlink{a00916_abe82aff9bf9c160b122c4de879d871b9}{O\+M\+Property\+Visualizer\+Vector2$<$ Mesh\+T, Vector\+Type $>$}, \hyperlink{a00915_a824c75ff545e9a62c560a9a96410f887}{O\+M\+Property\+Visualizer\+Vector$<$ Mesh\+T $>$}, \hyperlink{a00917_a76ede3bde8e589363c3b5334d1259618}{O\+M\+Property\+Visualizer\+Vector\+Field\+Difference$<$ Mesh\+T $>$}, \hyperlink{a00913_a4c78c39fd901886adb30c082ed6876e2}{O\+M\+Property\+Visualizer\+Double$<$ Mesh\+T $>$}, \hyperlink{a00914_aaa1d773e620f55f8a2d39e983a587e93}{O\+M\+Property\+Visualizer\+Integer$<$ Mesh\+T, T $>$}, and \hyperlink{a00912_a48c68d8eeb7f3f9444ac0c0cce810826}{O\+M\+Property\+Visualizer\+Boolean$<$ Mesh\+T $>$}.



Definition at line 81 of file O\+M\+Property\+Visualizer.\+hh.

\hypertarget{a00911_a676cb51a02a115f5bb5a56097cde194d}{\index{O\+M\+Property\+Visualizer@{O\+M\+Property\+Visualizer}!set\+Property\+From\+Text@{set\+Property\+From\+Text}}
\index{set\+Property\+From\+Text@{set\+Property\+From\+Text}!O\+M\+Property\+Visualizer@{O\+M\+Property\+Visualizer}}
\subsubsection[{set\+Property\+From\+Text}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename Mesh\+T $>$ void {\bf O\+M\+Property\+Visualizer}$<$ Mesh\+T $>$\+::set\+Property\+From\+Text (
\begin{DoxyParamCaption}
\item[{unsigned int}]{index, }
\item[{Q\+String}]{text}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [protected]}, {\ttfamily [virtual]}}}\label{a00911_a676cb51a02a115f5bb5a56097cde194d}


Returns the value of a property in text form. 


\begin{DoxyParams}{Parameters}
{\em index} & The id of the entity whose property should be set. \\
\hline
{\em text} & The value in text form.\\
\hline
\end{DoxyParams}
This method sets the porperty of a given entity by transforming the text into the correct type. This is used when a property is loaded from a file. 

Implements \hyperlink{a01048_ae47166f4ac6b7ad65003eb71081b5432}{Property\+Visualizer}.



Definition at line 155 of file O\+M\+Property\+Visualizer\+T.\+cc.

\hypertarget{a00911_ab65cff35528ed4c7cfff02c444f60ce6}{\index{O\+M\+Property\+Visualizer@{O\+M\+Property\+Visualizer}!visualize@{visualize}}
\index{visualize@{visualize}!O\+M\+Property\+Visualizer@{O\+M\+Property\+Visualizer}}
\subsubsection[{visualize}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename Mesh\+T $>$ void {\bf O\+M\+Property\+Visualizer}$<$ Mesh\+T $>$\+::visualize (
\begin{DoxyParamCaption}
\item[{bool}]{\+\_\+set\+Draw\+Mode, }
\item[{Q\+Widget $\ast$}]{\+\_\+widget}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [virtual]}}}\label{a00911_ab65cff35528ed4c7cfff02c444f60ce6}


Visualizes the property. 

To visualize the property this method calls the corresponding visualization method visualize\+Face\+Prop, -\/\+Edge\+Prop, -\/\+Halfedge\+Prop or -\/\+Vertex\+Prop depending on the entity type of the property. 

Reimplemented from \hyperlink{a01048_ac05734a8520842cfaa5d194adcdaea86}{Property\+Visualizer}.



Definition at line 309 of file O\+M\+Property\+Visualizer\+T.\+cc.



The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize}
\item 
Plugin-\/\+Property\+Vis/\+Open\+Mesh/O\+M\+Property\+Visualizer.\+hh\item 
Plugin-\/\+Property\+Vis/\+Open\+Mesh/O\+M\+Property\+Visualizer\+T.\+cc\end{DoxyCompactItemize}
