\hypertarget{classPolyLinePlugin}{}\section{Poly\+Line\+Plugin Class Reference}
\label{classPolyLinePlugin}\index{Poly\+Line\+Plugin@{Poly\+Line\+Plugin}}


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

Inheritance diagram for Poly\+Line\+Plugin\+:\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[height=12.000000cm]{classPolyLinePlugin}
\end{center}
\end{figure}
\subsection*{Public Types}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{classPolyLinePlugin_ad598b66b5db16ecc491d38e3d80f2c9b}\label{classPolyLinePlugin_ad598b66b5db16ecc491d38e3d80f2c9b}} 
enum \hyperlink{classPolyLinePlugin_ad598b66b5db16ecc491d38e3d80f2c9b}{Edit\+Mode} \{ \newline
{\bfseries P\+L\+\_\+\+N\+O\+NE} =0, 
{\bfseries P\+L\+\_\+\+I\+N\+S\+E\+RT} =1, 
{\bfseries P\+L\+\_\+\+I\+N\+S\+E\+R\+T\+C\+I\+R\+C\+LE}, 
{\bfseries P\+L\+\_\+\+I\+N\+S\+E\+R\+T\+S\+P\+L\+I\+NE}, 
\newline
{\bfseries P\+L\+\_\+\+D\+E\+L\+E\+TE}, 
{\bfseries P\+L\+\_\+\+M\+O\+VE}, 
{\bfseries P\+L\+\_\+\+S\+P\+L\+IT}, 
{\bfseries P\+L\+\_\+\+M\+E\+R\+GE}, 
\newline
{\bfseries P\+L\+\_\+\+S\+M\+A\+R\+T\+\_\+\+M\+O\+VE}, 
{\bfseries P\+L\+\_\+\+C\+O\+P\+Y\+\_\+\+P\+A\+S\+TE}
 \}\begin{DoxyCompactList}\small\item\em Edit Mode of \hyperlink{classPolyLinePlugin}{Poly\+Line\+Plugin}. \end{DoxyCompactList}
\end{DoxyCompactItemize}
\subsection*{Public Slots}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{classPolyLinePlugin_a0c9e9443b712b35be45c0f4a849fdc46}\label{classPolyLinePlugin_a0c9e9443b712b35be45c0f4a849fdc46}} 
void {\bfseries slot\+Enable\+Pick\+Mode} (Q\+String \+\_\+name)
\item 
\mbox{\Hypertarget{classPolyLinePlugin_a33126e07a95322cadad43501545b5680}\label{classPolyLinePlugin_a33126e07a95322cadad43501545b5680}} 
Q\+String {\bfseries version} ()
\item 
\mbox{\Hypertarget{classPolyLinePlugin_aa622aac886dd46bed5f7f51e87d709e3}\label{classPolyLinePlugin_aa622aac886dd46bed5f7f51e87d709e3}} 
void {\bfseries create\+Circle\+\_\+create\+UI} (int \+\_\+poly\+Line\+Object\+ID)
\item 
\mbox{\Hypertarget{classPolyLinePlugin_a380ae40ef793303b5a7e685023616511}\label{classPolyLinePlugin_a380ae40ef793303b5a7e685023616511}} 
void {\bfseries create\+Spline\+\_\+create\+UI} (int \+\_\+poly\+Line\+Object\+ID)
\end{DoxyCompactItemize}
\subsection*{Signals}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{classPolyLinePlugin_a32c78d4783f0bd785438f7ecccd80c49}\label{classPolyLinePlugin_a32c78d4783f0bd785438f7ecccd80c49}} 
void {\bfseries update\+View} ()
\item 
\mbox{\Hypertarget{classPolyLinePlugin_a1bc2a1d4dd6f28d9bbdb660ee3f9880a}\label{classPolyLinePlugin_a1bc2a1d4dd6f28d9bbdb660ee3f9880a}} 
void {\bfseries updated\+Object} (int \+\_\+identifier, const \hyperlink{classUpdateType}{Update\+Type} \&\+\_\+type)
\item 
\mbox{\Hypertarget{classPolyLinePlugin_a29ecace97df688602d0ef90f5e4bfde2}\label{classPolyLinePlugin_a29ecace97df688602d0ef90f5e4bfde2}} 
void {\bfseries node\+Visibility\+Changed} (int \+\_\+id)
\item 
\mbox{\Hypertarget{classPolyLinePlugin_a723f980862e29f582891b007cbdc2726}\label{classPolyLinePlugin_a723f980862e29f582891b007cbdc2726}} 
void {\bfseries add\+Pick\+Mode} (const std\+::string \&\+\_\+mode)
\item 
\mbox{\Hypertarget{classPolyLinePlugin_a216eeb95f835d62d29b5e05f24b325ac}\label{classPolyLinePlugin_a216eeb95f835d62d29b5e05f24b325ac}} 
void {\bfseries add\+Hidden\+Pick\+Mode} (const std\+::string \&\+\_\+mode)
\item 
\mbox{\Hypertarget{classPolyLinePlugin_ad3144b8b3da9e8ce150c292f589d4c45}\label{classPolyLinePlugin_ad3144b8b3da9e8ce150c292f589d4c45}} 
void {\bfseries set\+Pick\+Mode\+Toolbar} (const std\+::string \&\+\_\+mode, Q\+Tool\+Bar $\ast$\+\_\+toolbar)
\item 
\mbox{\Hypertarget{classPolyLinePlugin_ace11102cd863aa458c75f5917d7d144e}\label{classPolyLinePlugin_ace11102cd863aa458c75f5917d7d144e}} 
void {\bfseries set\+Pick\+Mode\+Mouse\+Tracking} (const std\+::string \&\+\_\+mode, bool \+\_\+mouse\+Tracking)
\item 
\mbox{\Hypertarget{classPolyLinePlugin_ae7cbbfe6903f3438c5c101c20f1ac38a}\label{classPolyLinePlugin_ae7cbbfe6903f3438c5c101c20f1ac38a}} 
void {\bfseries log} (\hyperlink{LoggingInterface_8hh_a595b2880f3ae74561ba390e3fd8c0e7c}{Logtype} \+\_\+type, Q\+String \+\_\+message)
\item 
\mbox{\Hypertarget{classPolyLinePlugin_a2a086b4c5c993d4801f1d9fd24ab358a}\label{classPolyLinePlugin_a2a086b4c5c993d4801f1d9fd24ab358a}} 
void {\bfseries log} (Q\+String \+\_\+message)
\item 
\mbox{\Hypertarget{classPolyLinePlugin_abed7b9924e375e3eb39b25bc34699485}\label{classPolyLinePlugin_abed7b9924e375e3eb39b25bc34699485}} 
void {\bfseries add\+Toolbar} (Q\+Tool\+Bar $\ast$\+\_\+toolbar)
\item 
\mbox{\Hypertarget{classPolyLinePlugin_a64e6e893de1179d0f6e53150bf79e2d3}\label{classPolyLinePlugin_a64e6e893de1179d0f6e53150bf79e2d3}} 
void {\bfseries get\+Tool\+Bar} (Q\+String \+\_\+name, Q\+Tool\+Bar $\ast$\&\+\_\+toolbar)
\item 
\mbox{\Hypertarget{classPolyLinePlugin_a572941711f9b45f2db3a7ca7d44b943f}\label{classPolyLinePlugin_a572941711f9b45f2db3a7ca7d44b943f}} 
void {\bfseries script\+Info} (Q\+String \+\_\+function\+Name)
\item 
\mbox{\Hypertarget{classPolyLinePlugin_a271a0a77d135569b664e1fcfaf446c17}\label{classPolyLinePlugin_a271a0a77d135569b664e1fcfaf446c17}} 
void {\bfseries add\+Toolbox} (Q\+String \+\_\+name, Q\+Widget $\ast$\+\_\+widget, Q\+Icon $\ast$\+\_\+icon)
\item 
\mbox{\Hypertarget{classPolyLinePlugin_a55f07ada04e4f23e349842f0fc34d90f}\label{classPolyLinePlugin_a55f07ada04e4f23e349842f0fc34d90f}} 
void {\bfseries delete\+Object} (int \+\_\+id)
\item 
\mbox{\Hypertarget{classPolyLinePlugin_a5bb72ce6547bb7a5d03b1942c315bf11}\label{classPolyLinePlugin_a5bb72ce6547bb7a5d03b1942c315bf11}} 
void {\bfseries add\+Empty\+Object} (\hyperlink{classDataType}{Data\+Type} \+\_\+type, int \&\+\_\+id)
\item 
\mbox{\Hypertarget{classPolyLinePlugin_af6a87fe1c198a5b655be1f6a433f7fc5}\label{classPolyLinePlugin_af6a87fe1c198a5b655be1f6a433f7fc5}} 
void {\bfseries register\+Key} (int \+\_\+key, Qt\+::\+Keyboard\+Modifiers \+\_\+modifiers, Q\+String \+\_\+description, bool \+\_\+multi\+Use=false)
\item 
\mbox{\Hypertarget{classPolyLinePlugin_ae16e72329cc6ce7a97edda6a63f40b91}\label{classPolyLinePlugin_ae16e72329cc6ce7a97edda6a63f40b91}} 
void {\bfseries show\+Status\+Message} (Q\+String \+\_\+message, int \+\_\+timeout=0)
\item 
\mbox{\Hypertarget{classPolyLinePlugin_ae4548203b1232ccff2129fd964cf053a}\label{classPolyLinePlugin_ae4548203b1232ccff2129fd964cf053a}} 
void {\bfseries clear\+Status\+Message} ()
\item 
\mbox{\Hypertarget{classPolyLinePlugin_af2e0005743fcd85c56d7b8d84eef3f85}\label{classPolyLinePlugin_af2e0005743fcd85c56d7b8d84eef3f85}} 
void {\bfseries add\+Context\+Menu\+Item} (Q\+Action $\ast$\+\_\+action, \hyperlink{classDataType}{Data\+Type} \+\_\+object\+Type, \hyperlink{ContextMenuInterface_8hh_a238952a111d7daede783625350d7b287}{Context\+Menu\+Type} \+\_\+type)
\end{DoxyCompactItemize}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{classPolyLinePlugin_abe484912a88b60bd3bee3a07e2571934}\label{classPolyLinePlugin_abe484912a88b60bd3bee3a07e2571934}} 
\hyperlink{classPolyLinePlugin_abe484912a88b60bd3bee3a07e2571934}{Poly\+Line\+Plugin} ()
\begin{DoxyCompactList}\small\item\em default constructor \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classPolyLinePlugin_af37d2d4c1f99d0213966cfbbfc8d5549}\label{classPolyLinePlugin_af37d2d4c1f99d0213966cfbbfc8d5549}} 
\hyperlink{classPolyLinePlugin_af37d2d4c1f99d0213966cfbbfc8d5549}{$\sim$\+Poly\+Line\+Plugin} ()
\begin{DoxyCompactList}\small\item\em default destructor \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classPolyLinePlugin_a0460ee12e87fada8b5d786a9d2679994}\label{classPolyLinePlugin_a0460ee12e87fada8b5d786a9d2679994}} 
Q\+String \hyperlink{classPolyLinePlugin_a0460ee12e87fada8b5d786a9d2679994}{name} ()
\begin{DoxyCompactList}\small\item\em Name of the Plugin. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classPolyLinePlugin_aceea380141d503975a57e94a0a98d2b0}\label{classPolyLinePlugin_aceea380141d503975a57e94a0a98d2b0}} 
Q\+String \hyperlink{classPolyLinePlugin_aceea380141d503975a57e94a0a98d2b0}{description} ()
\begin{DoxyCompactList}\small\item\em Description of the Plugin. \end{DoxyCompactList}\item 
int \hyperlink{classPolyLinePlugin_a5897dc9e247a26277ef2595b72583a85}{generate\+Poly\+Line\+From\+Cut} (int \+\_\+object\+Id, \hyperlink{DataTypes_8hh_a7932a926ab17fabe9f4a0ee1b498526c}{Vector} \+\_\+plane\+Point, \hyperlink{DataTypes_8hh_a7932a926ab17fabe9f4a0ee1b498526c}{Vector} \+\_\+plane\+Normal, int \+\_\+poly\+Line\+Id=-\/1)
\begin{DoxyCompactList}\small\item\em Generates a poly\+Line of a plane intersection. \end{DoxyCompactList}\item 
\hyperlink{DataTypes_8hh_af4b4959090eb91720b2f1f4bd6131cfb}{Id\+List} \hyperlink{classPolyLinePlugin_a36a9774dc38efdb1fd7bb5ea8f4da4a8}{generate\+Poly\+Lines\+From\+Cut} (int \+\_\+object\+Id, \hyperlink{DataTypes_8hh_a7932a926ab17fabe9f4a0ee1b498526c}{Vector} \+\_\+plane\+Point, \hyperlink{DataTypes_8hh_a7932a926ab17fabe9f4a0ee1b498526c}{Vector} \+\_\+plane\+Normal)
\begin{DoxyCompactList}\small\item\em Generates a poly\+Line of a plane intersection. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Private Slots}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{classPolyLinePlugin_a7f9d88f3865649cd20470702e538b091}\label{classPolyLinePlugin_a7f9d88f3865649cd20470702e538b091}} 
void {\bfseries initialize\+Plugin} ()
\item 
\mbox{\Hypertarget{classPolyLinePlugin_a7e2d1a5d27968c831f229fd16c46f45f}\label{classPolyLinePlugin_a7e2d1a5d27968c831f229fd16c46f45f}} 
void {\bfseries slot\+Edit\+Mode\+Changed} ()
\item 
\mbox{\Hypertarget{classPolyLinePlugin_aec3ce5390cc7f5b6e97af0e89abc2413}\label{classPolyLinePlugin_aec3ce5390cc7f5b6e97af0e89abc2413}} 
void {\bfseries slot\+Mouse\+Event} (Q\+Mouse\+Event $\ast$\+\_\+event)
\item 
\mbox{\Hypertarget{classPolyLinePlugin_a08a47c04690261f5cb612cdb03e5297a}\label{classPolyLinePlugin_a08a47c04690261f5cb612cdb03e5297a}} 
void {\bfseries slot\+Key\+Event} (Q\+Key\+Event $\ast$\+\_\+event)
\item 
\mbox{\Hypertarget{classPolyLinePlugin_a7449897d69322925f8b77eabf14302a1}\label{classPolyLinePlugin_a7449897d69322925f8b77eabf14302a1}} 
void {\bfseries slot\+Pick\+Mode\+Changed} (const std\+::string \&\+\_\+mode)
\item 
\mbox{\Hypertarget{classPolyLinePlugin_afccb9da578c16694baef391336e902aa}\label{classPolyLinePlugin_afccb9da578c16694baef391336e902aa}} 
void {\bfseries plugins\+Initialized} ()
\item 
\mbox{\Hypertarget{classPolyLinePlugin_aa178aa3d6fbf7827637e2f7e7fd7ddc1}\label{classPolyLinePlugin_aa178aa3d6fbf7827637e2f7e7fd7ddc1}} 
bool {\bfseries pick\+\_\+triangle\+\_\+mesh} (Q\+Point m\+Pos, \hyperlink{classTriMeshObject}{Tri\+Mesh\+Object} $\ast$\&\+\_\+mesh\+\_\+object\+\_\+, Tri\+Mesh\+::\+Face\+Handle \&\+\_\+fh, Tri\+Mesh\+::\+Vertex\+Handle \&\+\_\+vh, \hyperlink{namespaceACG_ae4a56bb6b65d7f966934982a1e370213}{A\+C\+G\+::\+Vec3d} \&\+\_\+hit\+Point)
\item 
\mbox{\Hypertarget{classPolyLinePlugin_ab1dc0522aa6d7163924d497af6d4f5ad}\label{classPolyLinePlugin_ab1dc0522aa6d7163924d497af6d4f5ad}} 
void {\bfseries slot\+Update\+Context\+Menu} (int object\+Id)
\item 
\mbox{\Hypertarget{classPolyLinePlugin_ae3f76c4b1ff97c5bef7f2839a6f7bf51}\label{classPolyLinePlugin_ae3f76c4b1ff97c5bef7f2839a6f7bf51}} 
void {\bfseries slot\+\_\+subdivide} ()
\item 
\mbox{\Hypertarget{classPolyLinePlugin_a738899241c2f5a275ea246893264440b}\label{classPolyLinePlugin_a738899241c2f5a275ea246893264440b}} 
void {\bfseries slot\+\_\+subdivide\+\_\+percent} (bool \+\_\+checked)
\item 
\mbox{\Hypertarget{classPolyLinePlugin_a693ad992100665dd96f644faea90ea32}\label{classPolyLinePlugin_a693ad992100665dd96f644faea90ea32}} 
void {\bfseries slot\+\_\+decimate} ()
\item 
\mbox{\Hypertarget{classPolyLinePlugin_a96810cf73a3b35fef335c5420e621965}\label{classPolyLinePlugin_a96810cf73a3b35fef335c5420e621965}} 
void {\bfseries slot\+\_\+decimate\+\_\+percent} (bool \+\_\+checked)
\item 
\mbox{\Hypertarget{classPolyLinePlugin_a73abd337e990bd7d58eeccbfcc6bb0b2}\label{classPolyLinePlugin_a73abd337e990bd7d58eeccbfcc6bb0b2}} 
void {\bfseries slot\+\_\+smooth} ()
\item 
\mbox{\Hypertarget{classPolyLinePlugin_a5189c396e438a8313a0e00a82c576aa4}\label{classPolyLinePlugin_a5189c396e438a8313a0e00a82c576aa4}} 
void {\bfseries slot\+\_\+smooth} (\hyperlink{classPolyLineObject}{Poly\+Line\+Object} $\ast$\&\+\_\+pol)
\item 
\mbox{\Hypertarget{classPolyLinePlugin_a0b2a779070851e156c46f0d3be2b7f4b}\label{classPolyLinePlugin_a0b2a779070851e156c46f0d3be2b7f4b}} 
void {\bfseries slot\+\_\+project} ()
\item 
\mbox{\Hypertarget{classPolyLinePlugin_a6c40b1e8da31422447c70e245c3c45a5}\label{classPolyLinePlugin_a6c40b1e8da31422447c70e245c3c45a5}} 
void {\bfseries slot\+\_\+project} (\hyperlink{classPolyLineObject}{Poly\+Line\+Object} $\ast$\&\+\_\+pol)
\item 
\mbox{\Hypertarget{classPolyLinePlugin_a8638cdff0b13240b1e0110af12d4e570}\label{classPolyLinePlugin_a8638cdff0b13240b1e0110af12d4e570}} 
void {\bfseries slot\+\_\+smooth\+\_\+project} ()
\item 
\mbox{\Hypertarget{classPolyLinePlugin_a484462a407c121277e431f6a0638a697}\label{classPolyLinePlugin_a484462a407c121277e431f6a0638a697}} 
void {\bfseries slot\+\_\+smooth\+\_\+project} (\hyperlink{classPolyLineObject}{Poly\+Line\+Object} $\ast$\&\+\_\+pol)
\item 
\mbox{\Hypertarget{classPolyLinePlugin_a6a2c25deaace37489da24d4df3734a59}\label{classPolyLinePlugin_a6a2c25deaace37489da24d4df3734a59}} 
void {\bfseries slot\+\_\+smart\+\_\+move\+\_\+timer} ()
\item 
\mbox{\Hypertarget{classPolyLinePlugin_aeb615fd1d22dea4db003721d1b226097}\label{classPolyLinePlugin_aeb615fd1d22dea4db003721d1b226097}} 
void {\bfseries slot\+\_\+set\+Circle\+Point\+Num} (int i)
\item 
\mbox{\Hypertarget{classPolyLinePlugin_a35c738318a5e355fab12ae750a5516bd}\label{classPolyLinePlugin_a35c738318a5e355fab12ae750a5516bd}} 
void {\bfseries slot\+\_\+set\+Spline\+Point\+Num} (int i)
\item 
\mbox{\Hypertarget{classPolyLinePlugin_a14e78b5857d6f6508e2da872132f0a0f}\label{classPolyLinePlugin_a14e78b5857d6f6508e2da872132f0a0f}} 
virtual void {\bfseries slot\+Object\+Updated} (int \+\_\+identifier, const \hyperlink{classUpdateType}{Update\+Type} \&\+\_\+type)
\item 
\mbox{\Hypertarget{classPolyLinePlugin_afb8b7c8a6bbe4dca5bec360ac0eb9df7}\label{classPolyLinePlugin_afb8b7c8a6bbe4dca5bec360ac0eb9df7}} 
void {\bfseries slot\+\_\+duplicate} ()
\item 
\mbox{\Hypertarget{classPolyLinePlugin_a76724385e2e12ca940f6b45997969889}\label{classPolyLinePlugin_a76724385e2e12ca940f6b45997969889}} 
void {\bfseries slot\+\_\+instanciate} ()
\item 
\mbox{\Hypertarget{classPolyLinePlugin_a6bfbf8364476cced87c927120e2bbc67}\label{classPolyLinePlugin_a6bfbf8364476cced87c927120e2bbc67}} 
void {\bfseries finish\+Spline} ()
\item 
void \hyperlink{classPolyLinePlugin_adfd88982925f902ca60fdf1670f84228}{slot\+Scissor\+Button} ()
\begin{DoxyCompactList}\small\item\em Scissor Button was hit. \end{DoxyCompactList}\item 
void \hyperlink{classPolyLinePlugin_a2a62711daa72679155d20fca24fd041f}{slot\+Scissor\+Lines\+Button} ()
\begin{DoxyCompactList}\small\item\em Scissor Button for multiple polylines was hit. \end{DoxyCompactList}\item 
void \hyperlink{classPolyLinePlugin_a26d80064e7e63bc8a7368271cec26aab}{slot\+Trigger\+Cut\+Plane\+Select} ()
\begin{DoxyCompactList}\small\item\em Generate Poly\+Line after the cut\+Plane has been drawn. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Private Member Functions}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{classPolyLinePlugin_a2082c503efe412c74ee10b2a087c694f}\label{classPolyLinePlugin_a2082c503efe412c74ee10b2a087c694f}} 
\hyperlink{classPolyLinePlugin_ad598b66b5db16ecc491d38e3d80f2c9b}{Edit\+Mode} {\bfseries mode} ()
\item 
\mbox{\Hypertarget{classPolyLinePlugin_aad23f30607feb50bb03a8bd7e17cfa02}\label{classPolyLinePlugin_aad23f30607feb50bb03a8bd7e17cfa02}} 
void {\bfseries me\+\_\+insert} (Q\+Mouse\+Event $\ast$\+\_\+event)
\item 
\mbox{\Hypertarget{classPolyLinePlugin_a9d5d9c8fa8344b9630a935fc4bf33140}\label{classPolyLinePlugin_a9d5d9c8fa8344b9630a935fc4bf33140}} 
void {\bfseries me\+\_\+insert\+Circle} (Q\+Mouse\+Event $\ast$\+\_\+event)
\item 
\mbox{\Hypertarget{classPolyLinePlugin_a73d7bba673ab2b9b85253126d334578e}\label{classPolyLinePlugin_a73d7bba673ab2b9b85253126d334578e}} 
void {\bfseries me\+\_\+insert\+Spline} (Q\+Mouse\+Event $\ast$\+\_\+event)
\item 
\mbox{\Hypertarget{classPolyLinePlugin_a16bc1b1e045d415b0f019e2272e4e765}\label{classPolyLinePlugin_a16bc1b1e045d415b0f019e2272e4e765}} 
void {\bfseries me\+\_\+delete} (Q\+Mouse\+Event $\ast$\+\_\+event)
\item 
\mbox{\Hypertarget{classPolyLinePlugin_a6fd726d0caceb3f40b0156ee06d7ef82}\label{classPolyLinePlugin_a6fd726d0caceb3f40b0156ee06d7ef82}} 
void {\bfseries me\+\_\+move} (Q\+Mouse\+Event $\ast$\+\_\+event)
\item 
\mbox{\Hypertarget{classPolyLinePlugin_acf6eeae076bf5a3a99def7880a8a622a}\label{classPolyLinePlugin_acf6eeae076bf5a3a99def7880a8a622a}} 
void {\bfseries me\+\_\+split} (Q\+Mouse\+Event $\ast$\+\_\+event)
\item 
\mbox{\Hypertarget{classPolyLinePlugin_ad90951a27a1a3d09f938c3b07f554ebb}\label{classPolyLinePlugin_ad90951a27a1a3d09f938c3b07f554ebb}} 
void {\bfseries me\+\_\+merge} (Q\+Mouse\+Event $\ast$\+\_\+event)
\item 
\mbox{\Hypertarget{classPolyLinePlugin_a01de4bd53911d4e7d034b31a120f4c53}\label{classPolyLinePlugin_a01de4bd53911d4e7d034b31a120f4c53}} 
void {\bfseries me\+\_\+smart\+\_\+move} (Q\+Mouse\+Event $\ast$\+\_\+event)
\item 
\mbox{\Hypertarget{classPolyLinePlugin_a077cd4e3e02770d0d44c6af13ac30352}\label{classPolyLinePlugin_a077cd4e3e02770d0d44c6af13ac30352}} 
void {\bfseries me\+\_\+copy\+Paste\+Mouse} (Q\+Mouse\+Event $\ast$\+\_\+event)
\item 
bool \hyperlink{classPolyLinePlugin_a1e0ff312714fcbd944d70111906c15b7}{create\+Circle\+\_\+get\+Point\+On\+Mesh} (\hyperlink{classTriMeshObject}{Tri\+Mesh\+Object} $\ast$\+\_\+tri\+Mesh\+Object, \hyperlink{namespaceACG_ae4a56bb6b65d7f966934982a1e370213}{A\+C\+G\+::\+Vec3d} \+\_\+center, \hyperlink{namespaceACG_ae4a56bb6b65d7f966934982a1e370213}{A\+C\+G\+::\+Vec3d} \+\_\+p\+On\+Plane, \hyperlink{namespaceACG_ae4a56bb6b65d7f966934982a1e370213}{A\+C\+G\+::\+Vec3d} \+\_\+n, \hyperlink{namespaceACG_ae4a56bb6b65d7f966934982a1e370213}{A\+C\+G\+::\+Vec3d} $\ast$\+\_\+p\+Out)
\begin{DoxyCompactList}\small\item\em Calculates a point on the mesh. \end{DoxyCompactList}\item 
bool \hyperlink{classPolyLinePlugin_aa90079d478ce8fa228e76f314449be37}{create\+Circle\+\_\+get\+Hit\+Info} (\hyperlink{classPolyLineCircleData}{Poly\+Line\+Circle\+Data} $\ast$\+\_\+circle\+Data, \hyperlink{namespaceACG_ae4a56bb6b65d7f966934982a1e370213}{A\+C\+G\+::\+Vec3d} \+\_\+hit\+\_\+\+Point, \hyperlink{namespaceACG_ae4a56bb6b65d7f966934982a1e370213}{A\+C\+G\+::\+Vec3d} $\ast$\+\_\+p\+Out=0, double $\ast$\+\_\+r=0, \hyperlink{namespaceACG_ae4a56bb6b65d7f966934982a1e370213}{A\+C\+G\+::\+Vec3d} $\ast$\+\_\+on\+Plane=0)
\begin{DoxyCompactList}\small\item\em Calculates common info. \end{DoxyCompactList}\item 
\hyperlink{namespaceACG_ae4a56bb6b65d7f966934982a1e370213}{A\+C\+G\+::\+Vec3d} \hyperlink{classPolyLinePlugin_a5c3ede1897f81adad338a025d56311b6}{create\+Circle\+\_\+get\+Hit} (\hyperlink{classPolyLineCircleData}{Poly\+Line\+Circle\+Data} $\ast$\+\_\+circle\+Data, \hyperlink{namespaceACG_ae4a56bb6b65d7f966934982a1e370213}{A\+C\+G\+::\+Vec3d} \+\_\+hit\+\_\+point)
\begin{DoxyCompactList}\small\item\em Returns point on mesh or point on the normal plane. \end{DoxyCompactList}\item 
void \hyperlink{classPolyLinePlugin_ad1a6ddc54cd2c17b1ee0532396870630}{update\+Poly\+Ellipse} (\hyperlink{classPolyLineObject}{Poly\+Line\+Object} $\ast$\+\_\+line\+Object, unsigned int \+\_\+point\+Count)
\begin{DoxyCompactList}\small\item\em Generates points for the ellipse. \end{DoxyCompactList}\item 
void \hyperlink{classPolyLinePlugin_acf618686c55f5e5c76e94050c9aea1e8}{update\+Handles} (\hyperlink{classPolyLineObject}{Poly\+Line\+Object} $\ast$\+\_\+line\+Object)
\begin{DoxyCompactList}\small\item\em Updates the center, forward and side handle of the Poly ellipse. \end{DoxyCompactList}\item 
void \hyperlink{classPolyLinePlugin_ab7be80005cf61d0421c127e68308a133}{update\+Poly\+Bezier\+Spline} (\hyperlink{classPolyLineObject}{Poly\+Line\+Object} $\ast$\+\_\+line\+Object, unsigned int \+\_\+points\+Per\+Segment)
\begin{DoxyCompactList}\small\item\em Generates points for the spline, updates handles. \end{DoxyCompactList}\item 
void \hyperlink{classPolyLinePlugin_a262b571171f8483e9ceb669249f1c32d}{update\+Poly\+Bezier\+Handles} (\hyperlink{classPolyLineObject}{Poly\+Line\+Object} $\ast$\+\_\+line\+Object, \hyperlink{classACG_1_1SceneGraph_1_1LineNode}{A\+C\+G\+::\+Scene\+Graph\+::\+Line\+Node} $\ast$\+\_\+line)
\begin{DoxyCompactList}\small\item\em Updates all the handles on the Poly\+Bezier. \end{DoxyCompactList}\item 
\hyperlink{namespaceACG_ae4a56bb6b65d7f966934982a1e370213}{A\+C\+G\+::\+Vec3d} \hyperlink{classPolyLinePlugin_adbc7cc6ce7cf086e965ff3f9183f09cc}{get\+Point\+On\+Mesh} (\hyperlink{classPolyLineBezierSplineData}{Poly\+Line\+Bezier\+Spline\+Data} $\ast$\+\_\+\+Spline\+Data, \hyperlink{namespaceACG_ae4a56bb6b65d7f966934982a1e370213}{A\+C\+G\+::\+Vec3d} \+\_\+point, \hyperlink{namespaceACG_ae4a56bb6b65d7f966934982a1e370213}{A\+C\+G\+::\+Vec3d} $\ast$\+\_\+nor=0)
\begin{DoxyCompactList}\small\item\em Returns the nearest point on the mesh or if none could be found the input. \end{DoxyCompactList}\end{DoxyCompactItemize}
\begin{Indent}\textbf{ Template Functions}\par
\begin{DoxyCompactItemize}
\item 
{\footnotesize template$<$class MeshT $>$ }\\std\+::vector$<$ \hyperlink{namespaceACG_ae4a56bb6b65d7f966934982a1e370213}{A\+C\+G\+::\+Vec3d} $>$ \hyperlink{classPolyLinePlugin_aa3e54c7cbb88a6ef1c82370fec37bb3a}{get\+Intersection\+Points} (MeshT $\ast$\+\_\+mesh, uint \+\_\+fh, \hyperlink{namespaceACG_ae4a56bb6b65d7f966934982a1e370213}{A\+C\+G\+::\+Vec3d} \+\_\+plane\+Normal, \hyperlink{namespaceACG_ae4a56bb6b65d7f966934982a1e370213}{A\+C\+G\+::\+Vec3d} \+\_\+plane\+Point, bool \&\+\_\+closed)
\begin{DoxyCompactList}\small\item\em get the points from the closest connected intersection between mesh and plane \end{DoxyCompactList}\item 
{\footnotesize template$<$class MeshT $>$ }\\std\+::vector$<$ std\+::vector$<$ \hyperlink{namespaceACG_ae4a56bb6b65d7f966934982a1e370213}{A\+C\+G\+::\+Vec3d} $>$ $>$ \hyperlink{classPolyLinePlugin_ac62e6eb55268bc00625e5b5034045ce5}{get\+Multiple\+Intersection\+Points} (MeshT $\ast$\+\_\+mesh, \hyperlink{namespaceACG_ae4a56bb6b65d7f966934982a1e370213}{A\+C\+G\+::\+Vec3d} \+\_\+plane\+Normal, \hyperlink{namespaceACG_ae4a56bb6b65d7f966934982a1e370213}{A\+C\+G\+::\+Vec3d} \+\_\+plane\+Point)
\begin{DoxyCompactList}\small\item\em get all points from the intersection between mesh and plane \end{DoxyCompactList}\item 
{\footnotesize template$<$class MeshT $>$ }\\Mesh\+T\+::\+Edge\+Handle \hyperlink{classPolyLinePlugin_a14a9af641f953288666109c5dc6df130}{get\+Cutted\+Edge} (MeshT \&\+\_\+mesh, \hyperlink{namespaceACG_ae4a56bb6b65d7f966934982a1e370213}{A\+C\+G\+::\+Vec3d} \&\+\_\+plane\+Normal, \hyperlink{namespaceACG_ae4a56bb6b65d7f966934982a1e370213}{A\+C\+G\+::\+Vec3d} \&\+\_\+plane\+Point)
\begin{DoxyCompactList}\small\item\em get an edge of the mesh that is cut by the plane \end{DoxyCompactList}\end{DoxyCompactItemize}
\end{Indent}
\subsection*{Private Attributes}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{classPolyLinePlugin_a5980292bd8a1708451c2631bd93d3cbe}\label{classPolyLinePlugin_a5980292bd8a1708451c2631bd93d3cbe}} 
int {\bfseries cur\+\_\+insert\+\_\+id\+\_\+}
\item 
\mbox{\Hypertarget{classPolyLinePlugin_a3120f93ded69f9a6eee226a558491cca}\label{classPolyLinePlugin_a3120f93ded69f9a6eee226a558491cca}} 
\hyperlink{classPolyLineObject}{Poly\+Line\+Object} $\ast$ {\bfseries cur\+\_\+polyline\+\_\+obj\+\_\+}
\item 
\mbox{\Hypertarget{classPolyLinePlugin_a1a6bcc13babe45d62e7133791e2ea8a0}\label{classPolyLinePlugin_a1a6bcc13babe45d62e7133791e2ea8a0}} 
int {\bfseries cur\+\_\+move\+\_\+id\+\_\+}
\item 
\mbox{\Hypertarget{classPolyLinePlugin_ad812f7e74f86cf1ec93a1f9c3b813bc2}\label{classPolyLinePlugin_ad812f7e74f86cf1ec93a1f9c3b813bc2}} 
Poly\+Line\+::\+Point $\ast$ {\bfseries move\+\_\+point\+\_\+ref\+\_\+}
\item 
\mbox{\Hypertarget{classPolyLinePlugin_accd520967e6bcbea6459976f26016815}\label{classPolyLinePlugin_accd520967e6bcbea6459976f26016815}} 
Poly\+Line\+::\+Point $\ast$ {\bfseries create\+\_\+point\+\_\+ref\+\_\+}
\item 
\mbox{\Hypertarget{classPolyLinePlugin_a17ce27dffb394a0acaaf5a76a32dbc92}\label{classPolyLinePlugin_a17ce27dffb394a0acaaf5a76a32dbc92}} 
Poly\+Line\+::\+Point {\bfseries move\+\_\+point\+\_\+orig\+\_\+}
\item 
\mbox{\Hypertarget{classPolyLinePlugin_a2a12e7940f211342c988d1544c4f0af2}\label{classPolyLinePlugin_a2a12e7940f211342c988d1544c4f0af2}} 
int \hyperlink{classPolyLinePlugin_a2a12e7940f211342c988d1544c4f0af2}{create\+Circle\+\_\+\+Curr\+Sel\+Index\+\_\+}
\begin{DoxyCompactList}\small\item\em The object which is being modified(created, dragged) \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classPolyLinePlugin_a295e856062040ceb38f383d5ff6b3819}\label{classPolyLinePlugin_a295e856062040ceb38f383d5ff6b3819}} 
int \hyperlink{classPolyLinePlugin_a295e856062040ceb38f383d5ff6b3819}{create\+Circle\+\_\+\+Last\+Sel\+Index\+\_\+}
\begin{DoxyCompactList}\small\item\em Use this one to mark the last index to update the number of points. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classPolyLinePlugin_a934b71217ceb2f06f2b621ac6da7ad8f}\label{classPolyLinePlugin_a934b71217ceb2f06f2b621ac6da7ad8f}} 
\hyperlink{classACG_1_1SceneGraph_1_1GlutPrimitiveNode}{A\+C\+G\+::\+Scene\+Graph\+::\+Glut\+Primitive\+Node} $\ast$ \hyperlink{classPolyLinePlugin_a934b71217ceb2f06f2b621ac6da7ad8f}{move\+Circle\+\_\+\+Sel\+Node\+\_\+}
\begin{DoxyCompactList}\small\item\em The handle which is being dragged. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classPolyLinePlugin_a58ce6cb6924bd3c4ac18ae9ec625ffb0}\label{classPolyLinePlugin_a58ce6cb6924bd3c4ac18ae9ec625ffb0}} 
\hyperlink{namespaceACG_ae4a56bb6b65d7f966934982a1e370213}{A\+C\+G\+::\+Vec3d} \hyperlink{classPolyLinePlugin_a58ce6cb6924bd3c4ac18ae9ec625ffb0}{move\+Circle\+\_\+\+Last\+Hit\+Pos\+\_\+}
\begin{DoxyCompactList}\small\item\em The last valid hit on the mesh. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classPolyLinePlugin_ab16e8685caf1e01da7c64c9fe6529a0f}\label{classPolyLinePlugin_ab16e8685caf1e01da7c64c9fe6529a0f}} 
\hyperlink{namespaceACG_ae4a56bb6b65d7f966934982a1e370213}{A\+C\+G\+::\+Vec3d} {\bfseries move\+Circle\+\_\+\+Last\+Hit\+Nor\+\_\+}
\item 
\mbox{\Hypertarget{classPolyLinePlugin_a5432de183e0e4d8fd9f08350b1977dc1}\label{classPolyLinePlugin_a5432de183e0e4d8fd9f08350b1977dc1}} 
bool {\bfseries move\+Circle\+\_\+\+Is\+Locked}
\item 
\mbox{\Hypertarget{classPolyLinePlugin_aff4071b363ab2b18f192b9dfb4cbe0ad}\label{classPolyLinePlugin_aff4071b363ab2b18f192b9dfb4cbe0ad}} 
bool {\bfseries move\+Circle\+\_\+\+Is\+Floating}
\item 
\mbox{\Hypertarget{classPolyLinePlugin_a37cd099d6511bb34fc38ca1a153ef795}\label{classPolyLinePlugin_a37cd099d6511bb34fc38ca1a153ef795}} 
Q\+Action $\ast$ {\bfseries copy\+Paste\+\_\+\+Action\+\_\+}
\item 
\mbox{\Hypertarget{classPolyLinePlugin_abb5a8d824a05b49a607465fecedfe58d}\label{classPolyLinePlugin_abb5a8d824a05b49a607465fecedfe58d}} 
int {\bfseries copy\+Paste\+\_\+\+Object\+Id\+\_\+}
\item 
\mbox{\Hypertarget{classPolyLinePlugin_a2a1e040b22708dbcefc8e68326468934}\label{classPolyLinePlugin_a2a1e040b22708dbcefc8e68326468934}} 
int {\bfseries copy\+Paste\+\_\+\+Action\+Type\+\_\+}
\item 
\mbox{\Hypertarget{classPolyLinePlugin_ab242a465de346d0e2f5961d317933e45}\label{classPolyLinePlugin_ab242a465de346d0e2f5961d317933e45}} 
int {\bfseries copy\+Paste\+\_\+\+New\+Object\+Id\+\_\+}
\item 
\mbox{\Hypertarget{classPolyLinePlugin_ad43d06a0f5bd9145abca674d93d94112}\label{classPolyLinePlugin_ad43d06a0f5bd9145abca674d93d94112}} 
std\+::vector$<$ \hyperlink{namespaceACG_ae4a56bb6b65d7f966934982a1e370213}{A\+C\+G\+::\+Vec3d} $>$ {\bfseries copy\+Paste\+\_\+\+Relative\+Points\+\_\+}
\item 
\mbox{\Hypertarget{classPolyLinePlugin_a473b50843234094ae43b83f9ea16c0bf}\label{classPolyLinePlugin_a473b50843234094ae43b83f9ea16c0bf}} 
Q\+Point {\bfseries copy\+Paste\+\_\+\+Last\+Mouse}
\item 
\mbox{\Hypertarget{classPolyLinePlugin_a640410a546f15c18c7ae81f91186a99c}\label{classPolyLinePlugin_a640410a546f15c18c7ae81f91186a99c}} 
int \hyperlink{classPolyLinePlugin_a640410a546f15c18c7ae81f91186a99c}{create\+Spline\+\_\+\+Curr\+Sel\+Index\+\_\+}
\begin{DoxyCompactList}\small\item\em The index of the currently created spline. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classPolyLinePlugin_a7e3244d3fc63325b5cdc885f894e03a2}\label{classPolyLinePlugin_a7e3244d3fc63325b5cdc885f894e03a2}} 
int \hyperlink{classPolyLinePlugin_a7e3244d3fc63325b5cdc885f894e03a2}{create\+Spline\+\_\+\+Last\+Sel\+Index\+\_\+}
\begin{DoxyCompactList}\small\item\em Use this one to mark the last index to update the number of points. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classPolyLinePlugin_ac7221a8c8b7f4ae9415c9a6529366885}\label{classPolyLinePlugin_ac7221a8c8b7f4ae9415c9a6529366885}} 
\hyperlink{classACG_1_1SceneGraph_1_1GlutPrimitiveNode}{A\+C\+G\+::\+Scene\+Graph\+::\+Glut\+Primitive\+Node} $\ast$ \hyperlink{classPolyLinePlugin_ac7221a8c8b7f4ae9415c9a6529366885}{move\+Bez\+Spline\+\_\+\+Sel\+Node\+\_\+}
\begin{DoxyCompactList}\small\item\em The handle which is being dragged. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classPolyLinePlugin_a43e5b65364f97b419a95f4d827423306}\label{classPolyLinePlugin_a43e5b65364f97b419a95f4d827423306}} 
int \hyperlink{classPolyLinePlugin_a43e5b65364f97b419a95f4d827423306}{move\+Bez\+Spline\+\_\+\+Sel\+Index\+\_\+}
\begin{DoxyCompactList}\small\item\em The object which is being moved. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classPolyLinePlugin_a6a9c2cba098af22c0f6424a24e27d442}\label{classPolyLinePlugin_a6a9c2cba098af22c0f6424a24e27d442}} 
int \hyperlink{classPolyLinePlugin_a6a9c2cba098af22c0f6424a24e27d442}{move\+Bez\+Spline\+\_\+\+Sel\+Sub\+Index\+\_\+}
\begin{DoxyCompactList}\small\item\em The index of the control or handle being moved. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classPolyLinePlugin_a10116f72c2f42a10acad56f274fa425e}\label{classPolyLinePlugin_a10116f72c2f42a10acad56f274fa425e}} 
int {\bfseries cur\+\_\+merge\+\_\+id\+\_\+}
\item 
\mbox{\Hypertarget{classPolyLinePlugin_a19b7dabf344eb4d6feb89db562d43b27}\label{classPolyLinePlugin_a19b7dabf344eb4d6feb89db562d43b27}} 
Q\+Timer $\ast$ {\bfseries smart\+\_\+move\+\_\+timer\+\_\+}
\item 
\mbox{\Hypertarget{classPolyLinePlugin_a7a80451f0008f187fc26870e14d7c8c0}\label{classPolyLinePlugin_a7a80451f0008f187fc26870e14d7c8c0}} 
\hyperlink{classPolyLineObject}{Poly\+Line\+Object} $\ast$ {\bfseries cur\+\_\+smart\+\_\+move\+\_\+obj\+\_\+}
\item 
\mbox{\Hypertarget{classPolyLinePlugin_a82a9bfc4128d2c9170304203ca7a7dbd}\label{classPolyLinePlugin_a82a9bfc4128d2c9170304203ca7a7dbd}} 
\hyperlink{classQtPlaneSelect}{Qt\+Plane\+Select} $\ast$ \hyperlink{classPolyLinePlugin_a82a9bfc4128d2c9170304203ca7a7dbd}{plane\+Select\+\_\+}
\begin{DoxyCompactList}\small\item\em Plane selection tool. \end{DoxyCompactList}\end{DoxyCompactItemize}
\begin{Indent}\textbf{ Tool\+Box}\par
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{classPolyLinePlugin_a6e5df47ab0f697b5a440e15ae15126ed}\label{classPolyLinePlugin_a6e5df47ab0f697b5a440e15ae15126ed}} 
\hyperlink{classPolyLineToolbarWidget}{Poly\+Line\+Toolbar\+Widget} $\ast$ \hyperlink{classPolyLinePlugin_a6e5df47ab0f697b5a440e15ae15126ed}{tool\+\_\+}
\begin{DoxyCompactList}\small\item\em Widget for Toolbox. \end{DoxyCompactList}\end{DoxyCompactItemize}
\end{Indent}
\subsection*{Tool\+Bar}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{classPolyLinePlugin_a643b3c2b5d6cc85d774bbaaa113a3b38}\label{classPolyLinePlugin_a643b3c2b5d6cc85d774bbaaa113a3b38}} 
Q\+Action $\ast$ \hyperlink{classPolyLinePlugin_a643b3c2b5d6cc85d774bbaaa113a3b38}{poly\+Line\+Action\+\_\+}
\begin{DoxyCompactList}\small\item\em Called by Toolbar to enable pick mode. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classPolyLinePlugin_a0d8bf1fb5c81ccc87926b9729226fd8c}\label{classPolyLinePlugin_a0d8bf1fb5c81ccc87926b9729226fd8c}} 
Q\+Action\+Group $\ast$ \hyperlink{classPolyLinePlugin_a0d8bf1fb5c81ccc87926b9729226fd8c}{tool\+Bar\+Actions\+\_\+}
\begin{DoxyCompactList}\small\item\em Called by Toolbar to enable pick mode. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classPolyLinePlugin_a9329baee7ae96eeba2bf333529f13f8d}\label{classPolyLinePlugin_a9329baee7ae96eeba2bf333529f13f8d}} 
Q\+Tool\+Bar $\ast$ \hyperlink{classPolyLinePlugin_a9329baee7ae96eeba2bf333529f13f8d}{toolbar\+\_\+}
\begin{DoxyCompactList}\small\item\em Called by Toolbar to enable pick mode. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classPolyLinePlugin_a8317dfce93147a5e13441a3560b2cfaf}\label{classPolyLinePlugin_a8317dfce93147a5e13441a3560b2cfaf}} 
void \hyperlink{classPolyLinePlugin_a8317dfce93147a5e13441a3560b2cfaf}{slot\+Set\+Poly\+Line\+Mode} (Q\+Action $\ast$\+\_\+action)
\begin{DoxyCompactList}\small\item\em Called by Toolbar to enable pick mode. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Pick\+Tool\+Bar}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{classPolyLinePlugin_ad32bd48763783409e50f78c20283a3e6}\label{classPolyLinePlugin_ad32bd48763783409e50f78c20283a3e6}} 
Q\+Tool\+Bar $\ast$ \hyperlink{classPolyLinePlugin_ad32bd48763783409e50f78c20283a3e6}{pick\+Toolbar\+\_\+}
\begin{DoxyCompactList}\small\item\em Called by pick Toolbar. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classPolyLinePlugin_aaa8d48e73c012fa9d4a4278e70ff3c6d}\label{classPolyLinePlugin_aaa8d48e73c012fa9d4a4278e70ff3c6d}} 
Q\+Action\+Group $\ast$ \hyperlink{classPolyLinePlugin_aaa8d48e73c012fa9d4a4278e70ff3c6d}{pick\+Tool\+Bar\+Actions\+\_\+}
\begin{DoxyCompactList}\small\item\em Called by pick Toolbar. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classPolyLinePlugin_a312b24d5d46d63a68303706b38ab6ef2}\label{classPolyLinePlugin_a312b24d5d46d63a68303706b38ab6ef2}} 
Q\+Action $\ast$ \hyperlink{classPolyLinePlugin_a312b24d5d46d63a68303706b38ab6ef2}{insert\+Action\+\_\+}
\begin{DoxyCompactList}\small\item\em Called by pick Toolbar. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classPolyLinePlugin_ae7d262deb8db974f9806fb97a542698d}\label{classPolyLinePlugin_ae7d262deb8db974f9806fb97a542698d}} 
Q\+Action $\ast$ \hyperlink{classPolyLinePlugin_ae7d262deb8db974f9806fb97a542698d}{insert\+Circle\+Action\+\_\+}
\begin{DoxyCompactList}\small\item\em Called by pick Toolbar. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classPolyLinePlugin_abe5b8c8fd94c2b72dd28b2550a530337}\label{classPolyLinePlugin_abe5b8c8fd94c2b72dd28b2550a530337}} 
Q\+Action $\ast$ \hyperlink{classPolyLinePlugin_abe5b8c8fd94c2b72dd28b2550a530337}{insert\+Spline\+Action\+\_\+}
\begin{DoxyCompactList}\small\item\em Called by pick Toolbar. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classPolyLinePlugin_a4b6e7464c04980ba3c4d53739f994378}\label{classPolyLinePlugin_a4b6e7464c04980ba3c4d53739f994378}} 
Q\+Action $\ast$ \hyperlink{classPolyLinePlugin_a4b6e7464c04980ba3c4d53739f994378}{delete\+Action\+\_\+}
\begin{DoxyCompactList}\small\item\em Called by pick Toolbar. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classPolyLinePlugin_ac43197406aab6573eff2167e8f758c63}\label{classPolyLinePlugin_ac43197406aab6573eff2167e8f758c63}} 
Q\+Action $\ast$ \hyperlink{classPolyLinePlugin_ac43197406aab6573eff2167e8f758c63}{move\+Action\+\_\+}
\begin{DoxyCompactList}\small\item\em Called by pick Toolbar. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classPolyLinePlugin_a99f095029d0f60db5f660836636a7d39}\label{classPolyLinePlugin_a99f095029d0f60db5f660836636a7d39}} 
Q\+Action $\ast$ \hyperlink{classPolyLinePlugin_a99f095029d0f60db5f660836636a7d39}{smart\+Move\+Action\+\_\+}
\begin{DoxyCompactList}\small\item\em Called by pick Toolbar. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classPolyLinePlugin_a06c2a7f933a2634de292f080f3c71946}\label{classPolyLinePlugin_a06c2a7f933a2634de292f080f3c71946}} 
Q\+Action $\ast$ \hyperlink{classPolyLinePlugin_a06c2a7f933a2634de292f080f3c71946}{merge\+Action\+\_\+}
\begin{DoxyCompactList}\small\item\em Called by pick Toolbar. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classPolyLinePlugin_a5decdd537335824255d7474a0e2be8b8}\label{classPolyLinePlugin_a5decdd537335824255d7474a0e2be8b8}} 
Q\+Action $\ast$ \hyperlink{classPolyLinePlugin_a5decdd537335824255d7474a0e2be8b8}{split\+Action\+\_\+}
\begin{DoxyCompactList}\small\item\em Called by pick Toolbar. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classPolyLinePlugin_aad513c3d802d23d70b606243c0706c31}\label{classPolyLinePlugin_aad513c3d802d23d70b606243c0706c31}} 
Q\+Action $\ast$ \hyperlink{classPolyLinePlugin_aad513c3d802d23d70b606243c0706c31}{cut\+Action\+\_\+}
\begin{DoxyCompactList}\small\item\em Called by pick Toolbar. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classPolyLinePlugin_a75ff4f332c58433dfbcdea9b27e6b744}\label{classPolyLinePlugin_a75ff4f332c58433dfbcdea9b27e6b744}} 
Q\+Action $\ast$ \hyperlink{classPolyLinePlugin_a75ff4f332c58433dfbcdea9b27e6b744}{cut\+Multiple\+Action\+\_\+}
\begin{DoxyCompactList}\small\item\em Called by pick Toolbar. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classPolyLinePlugin_a6eec932289030845dc603fc56e56e173}\label{classPolyLinePlugin_a6eec932289030845dc603fc56e56e173}} 
void \hyperlink{classPolyLinePlugin_a6eec932289030845dc603fc56e56e173}{slot\+Pick\+Toolbar\+Action} (Q\+Action $\ast$\+\_\+action)
\begin{DoxyCompactList}\small\item\em Called by pick Toolbar. \end{DoxyCompactList}\end{DoxyCompactItemize}


\subsection{Detailed Description}
Plugin for Poly\+Line Support 

Definition at line 101 of file Poly\+Line\+Plugin.\+hh.



\subsection{Member Function Documentation}
\mbox{\Hypertarget{classPolyLinePlugin_a5c3ede1897f81adad338a025d56311b6}\label{classPolyLinePlugin_a5c3ede1897f81adad338a025d56311b6}} 
\index{Poly\+Line\+Plugin@{Poly\+Line\+Plugin}!create\+Circle\+\_\+get\+Hit@{create\+Circle\+\_\+get\+Hit}}
\index{create\+Circle\+\_\+get\+Hit@{create\+Circle\+\_\+get\+Hit}!Poly\+Line\+Plugin@{Poly\+Line\+Plugin}}
\subsubsection{\texorpdfstring{create\+Circle\+\_\+get\+Hit()}{createCircle\_getHit()}}
{\footnotesize\ttfamily \hyperlink{namespaceACG_ae4a56bb6b65d7f966934982a1e370213}{A\+C\+G\+::\+Vec3d} Poly\+Line\+Plugin\+::create\+Circle\+\_\+get\+Hit (\begin{DoxyParamCaption}\item[{\hyperlink{classPolyLineCircleData}{Poly\+Line\+Circle\+Data} $\ast$}]{\+\_\+circle\+Data,  }\item[{\hyperlink{namespaceACG_ae4a56bb6b65d7f966934982a1e370213}{A\+C\+G\+::\+Vec3d}}]{\+\_\+hit\+\_\+point }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}}



Returns point on mesh or point on the normal plane. 

Helper function which returns the point on the mesh or if none could be found the point on the plane


\begin{DoxyParams}{Parameters}
{\em \+\_\+circle\+Data} & The circle to use. \\
\hline
{\em \+\_\+hit\+\_\+point} & The point to \char`\"{}project\char`\"{}.\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
Point on the mesh if one was found or on the normal plane. 
\end{DoxyReturn}


Definition at line 127 of file Poly\+Line\+Plugin\+\_\+\+Circle.\+cc.

\mbox{\Hypertarget{classPolyLinePlugin_aa90079d478ce8fa228e76f314449be37}\label{classPolyLinePlugin_aa90079d478ce8fa228e76f314449be37}} 
\index{Poly\+Line\+Plugin@{Poly\+Line\+Plugin}!create\+Circle\+\_\+get\+Hit\+Info@{create\+Circle\+\_\+get\+Hit\+Info}}
\index{create\+Circle\+\_\+get\+Hit\+Info@{create\+Circle\+\_\+get\+Hit\+Info}!Poly\+Line\+Plugin@{Poly\+Line\+Plugin}}
\subsubsection{\texorpdfstring{create\+Circle\+\_\+get\+Hit\+Info()}{createCircle\_getHitInfo()}}
{\footnotesize\ttfamily bool Poly\+Line\+Plugin\+::create\+Circle\+\_\+get\+Hit\+Info (\begin{DoxyParamCaption}\item[{\hyperlink{classPolyLineCircleData}{Poly\+Line\+Circle\+Data} $\ast$}]{\+\_\+circle\+Data,  }\item[{\hyperlink{namespaceACG_ae4a56bb6b65d7f966934982a1e370213}{A\+C\+G\+::\+Vec3d}}]{\+\_\+hit\+\_\+\+Point,  }\item[{\hyperlink{namespaceACG_ae4a56bb6b65d7f966934982a1e370213}{A\+C\+G\+::\+Vec3d} $\ast$}]{\+\_\+p\+Out = {\ttfamily 0},  }\item[{double $\ast$}]{\+\_\+r = {\ttfamily 0},  }\item[{\hyperlink{namespaceACG_ae4a56bb6b65d7f966934982a1e370213}{A\+C\+G\+::\+Vec3d} $\ast$}]{\+\_\+on\+Plane = {\ttfamily 0} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}}



Calculates common info. 

Calculates common info like point on the mesh, point on the normal plane and the distance from the circle center


\begin{DoxyParams}{Parameters}
{\em \+\_\+circle\+Data} & The circle to use. \\
\hline
{\em \+\_\+hit\+\_\+\+Point} & The point which to \char`\"{}project\char`\"{}. \\
\hline
{\em \+\_\+p\+Out} & (optional)Point on the mesh. \\
\hline
{\em \+\_\+r} & The distance between circle center and point on the plane. \\
\hline
{\em \+\_\+on\+Plane} & Point on the normal plane regarding the hit\+\_\+point. \\
\hline
\end{DoxyParams}


Definition at line 109 of file Poly\+Line\+Plugin\+\_\+\+Circle.\+cc.

\mbox{\Hypertarget{classPolyLinePlugin_a1e0ff312714fcbd944d70111906c15b7}\label{classPolyLinePlugin_a1e0ff312714fcbd944d70111906c15b7}} 
\index{Poly\+Line\+Plugin@{Poly\+Line\+Plugin}!create\+Circle\+\_\+get\+Point\+On\+Mesh@{create\+Circle\+\_\+get\+Point\+On\+Mesh}}
\index{create\+Circle\+\_\+get\+Point\+On\+Mesh@{create\+Circle\+\_\+get\+Point\+On\+Mesh}!Poly\+Line\+Plugin@{Poly\+Line\+Plugin}}
\subsubsection{\texorpdfstring{create\+Circle\+\_\+get\+Point\+On\+Mesh()}{createCircle\_getPointOnMesh()}}
{\footnotesize\ttfamily bool Poly\+Line\+Plugin\+::create\+Circle\+\_\+get\+Point\+On\+Mesh (\begin{DoxyParamCaption}\item[{\hyperlink{classTriMeshObject}{Tri\+Mesh\+Object} $\ast$}]{\+\_\+tri\+Mesh\+Object,  }\item[{\hyperlink{namespaceACG_ae4a56bb6b65d7f966934982a1e370213}{A\+C\+G\+::\+Vec3d}}]{\+\_\+center,  }\item[{\hyperlink{namespaceACG_ae4a56bb6b65d7f966934982a1e370213}{A\+C\+G\+::\+Vec3d}}]{\+\_\+p\+On\+Plane,  }\item[{\hyperlink{namespaceACG_ae4a56bb6b65d7f966934982a1e370213}{A\+C\+G\+::\+Vec3d}}]{\+\_\+n,  }\item[{\hyperlink{namespaceACG_ae4a56bb6b65d7f966934982a1e370213}{A\+C\+G\+::\+Vec3d} $\ast$}]{\+\_\+p\+Out }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}}



Calculates a point on the mesh. 

Finds the nearest point on the mesh given a point on the normal plane


\begin{DoxyParams}{Parameters}
{\em \+\_\+tri\+Mesh\+Object} & The mesh to use \\
\hline
{\em \+\_\+center} & The center of the ellipse \\
\hline
{\em \+\_\+p\+On\+Plane} & The projection of the hit point on the plane \\
\hline
{\em \+\_\+n} & The normal of the ellipse \\
\hline
{\em \+\_\+p\+Out} & The point on the mesh if one could be found. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
True if a point could be found. 
\end{DoxyReturn}


Definition at line 82 of file Poly\+Line\+Plugin\+\_\+\+Circle.\+cc.

\mbox{\Hypertarget{classPolyLinePlugin_a5897dc9e247a26277ef2595b72583a85}\label{classPolyLinePlugin_a5897dc9e247a26277ef2595b72583a85}} 
\index{Poly\+Line\+Plugin@{Poly\+Line\+Plugin}!generate\+Poly\+Line\+From\+Cut@{generate\+Poly\+Line\+From\+Cut}}
\index{generate\+Poly\+Line\+From\+Cut@{generate\+Poly\+Line\+From\+Cut}!Poly\+Line\+Plugin@{Poly\+Line\+Plugin}}
\subsubsection{\texorpdfstring{generate\+Poly\+Line\+From\+Cut()}{generatePolyLineFromCut()}}
{\footnotesize\ttfamily int Poly\+Line\+Plugin\+::generate\+Poly\+Line\+From\+Cut (\begin{DoxyParamCaption}\item[{int}]{\+\_\+object\+Id,  }\item[{\hyperlink{DataTypes_8hh_a7932a926ab17fabe9f4a0ee1b498526c}{Vector}}]{\+\_\+plane\+Point,  }\item[{\hyperlink{DataTypes_8hh_a7932a926ab17fabe9f4a0ee1b498526c}{Vector}}]{\+\_\+plane\+Normal,  }\item[{int}]{\+\_\+poly\+Line\+Id = {\ttfamily -\/1} }\end{DoxyParamCaption})}



Generates a poly\+Line of a plane intersection. 


\begin{DoxyParams}{Parameters}
{\em \+\_\+object\+Id} & id of the target object \\
\hline
{\em \+\_\+plane\+Point} & a point on the cut plane \\
\hline
{\em \+\_\+plane\+Normal} & the normal of the cut plane \\
\hline
{\em \+\_\+poly\+Line\+Id} & Specify this if you don\textquotesingle{}t want a new polyline to be generated but to reuse an existing one \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
returns the id of the poly\+Line 
\end{DoxyReturn}


Definition at line 55 of file Poly\+Line\+Scripting.\+cc.

\mbox{\Hypertarget{classPolyLinePlugin_a36a9774dc38efdb1fd7bb5ea8f4da4a8}\label{classPolyLinePlugin_a36a9774dc38efdb1fd7bb5ea8f4da4a8}} 
\index{Poly\+Line\+Plugin@{Poly\+Line\+Plugin}!generate\+Poly\+Lines\+From\+Cut@{generate\+Poly\+Lines\+From\+Cut}}
\index{generate\+Poly\+Lines\+From\+Cut@{generate\+Poly\+Lines\+From\+Cut}!Poly\+Line\+Plugin@{Poly\+Line\+Plugin}}
\subsubsection{\texorpdfstring{generate\+Poly\+Lines\+From\+Cut()}{generatePolyLinesFromCut()}}
{\footnotesize\ttfamily \hyperlink{DataTypes_8hh_af4b4959090eb91720b2f1f4bd6131cfb}{Id\+List} Poly\+Line\+Plugin\+::generate\+Poly\+Lines\+From\+Cut (\begin{DoxyParamCaption}\item[{int}]{\+\_\+object\+Id,  }\item[{\hyperlink{DataTypes_8hh_a7932a926ab17fabe9f4a0ee1b498526c}{Vector}}]{\+\_\+plane\+Point,  }\item[{\hyperlink{DataTypes_8hh_a7932a926ab17fabe9f4a0ee1b498526c}{Vector}}]{\+\_\+plane\+Normal }\end{DoxyParamCaption})}



Generates a poly\+Line of a plane intersection. 

Generates poly\+Lines from a plane intersection.


\begin{DoxyParams}{Parameters}
{\em \+\_\+object\+Id} & id of the target object \\
\hline
{\em \+\_\+plane\+Point} & a point on the cut plane \\
\hline
{\em \+\_\+plane\+Normal} & the normal of the cut plane \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
returns the ids of the poly\+Line 
\end{DoxyReturn}


Definition at line 163 of file Poly\+Line\+Scripting.\+cc.

\mbox{\Hypertarget{classPolyLinePlugin_a14a9af641f953288666109c5dc6df130}\label{classPolyLinePlugin_a14a9af641f953288666109c5dc6df130}} 
\index{Poly\+Line\+Plugin@{Poly\+Line\+Plugin}!get\+Cutted\+Edge@{get\+Cutted\+Edge}}
\index{get\+Cutted\+Edge@{get\+Cutted\+Edge}!Poly\+Line\+Plugin@{Poly\+Line\+Plugin}}
\subsubsection{\texorpdfstring{get\+Cutted\+Edge()}{getCuttedEdge()}}
{\footnotesize\ttfamily template$<$class MeshT $>$ \\
Mesh\+T\+::\+Edge\+Handle Poly\+Line\+Plugin\+::get\+Cutted\+Edge (\begin{DoxyParamCaption}\item[{MeshT \&}]{\+\_\+mesh,  }\item[{\hyperlink{namespaceACG_ae4a56bb6b65d7f966934982a1e370213}{A\+C\+G\+::\+Vec3d} \&}]{\+\_\+plane\+Normal,  }\item[{\hyperlink{namespaceACG_ae4a56bb6b65d7f966934982a1e370213}{A\+C\+G\+::\+Vec3d} \&}]{\+\_\+plane\+Point }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}}



get an edge of the mesh that is cut by the plane 


\begin{DoxyParams}{Parameters}
{\em \+\_\+mesh} & the mesh \\
\hline
{\em \+\_\+plane\+Normal} & normal of the cut plane \\
\hline
{\em \+\_\+plane\+Point} & point on the cut plane \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
the edge that is intersected and closest to \+\_\+plane\+Point 
\end{DoxyReturn}


Definition at line 234 of file Poly\+Line\+Plugin\+T\+\_\+impl.\+hh.

\mbox{\Hypertarget{classPolyLinePlugin_aa3e54c7cbb88a6ef1c82370fec37bb3a}\label{classPolyLinePlugin_aa3e54c7cbb88a6ef1c82370fec37bb3a}} 
\index{Poly\+Line\+Plugin@{Poly\+Line\+Plugin}!get\+Intersection\+Points@{get\+Intersection\+Points}}
\index{get\+Intersection\+Points@{get\+Intersection\+Points}!Poly\+Line\+Plugin@{Poly\+Line\+Plugin}}
\subsubsection{\texorpdfstring{get\+Intersection\+Points()}{getIntersectionPoints()}}
{\footnotesize\ttfamily template$<$class MeshT $>$ \\
std\+::vector$<$ \hyperlink{namespaceACG_ae4a56bb6b65d7f966934982a1e370213}{A\+C\+G\+::\+Vec3d} $>$ Poly\+Line\+Plugin\+::get\+Intersection\+Points (\begin{DoxyParamCaption}\item[{MeshT $\ast$}]{\+\_\+mesh,  }\item[{uint}]{\+\_\+fh,  }\item[{\hyperlink{namespaceACG_ae4a56bb6b65d7f966934982a1e370213}{A\+C\+G\+::\+Vec3d}}]{\+\_\+plane\+Normal,  }\item[{\hyperlink{namespaceACG_ae4a56bb6b65d7f966934982a1e370213}{A\+C\+G\+::\+Vec3d}}]{\+\_\+plane\+Point,  }\item[{bool \&}]{\+\_\+closed }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}}



get the points from the closest connected intersection between mesh and plane 


\begin{DoxyParams}{Parameters}
{\em \+\_\+mesh} & the mesh \\
\hline
{\em \+\_\+fh} & a starting face that is intersected \\
\hline
{\em \+\_\+plane\+Normal} & normal of the cut plane \\
\hline
{\em \+\_\+plane\+Point} & point on the cut plane \\
\hline
{\em \+\_\+closed} & T\+O\+DO find out what it\textquotesingle{}s good for \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
a list of intersection points 
\end{DoxyReturn}


Definition at line 204 of file Poly\+Line\+Plugin\+T\+\_\+impl.\+hh.

\mbox{\Hypertarget{classPolyLinePlugin_ac62e6eb55268bc00625e5b5034045ce5}\label{classPolyLinePlugin_ac62e6eb55268bc00625e5b5034045ce5}} 
\index{Poly\+Line\+Plugin@{Poly\+Line\+Plugin}!get\+Multiple\+Intersection\+Points@{get\+Multiple\+Intersection\+Points}}
\index{get\+Multiple\+Intersection\+Points@{get\+Multiple\+Intersection\+Points}!Poly\+Line\+Plugin@{Poly\+Line\+Plugin}}
\subsubsection{\texorpdfstring{get\+Multiple\+Intersection\+Points()}{getMultipleIntersectionPoints()}}
{\footnotesize\ttfamily template$<$class MeshT $>$ \\
std\+::vector$<$ std\+::vector$<$ \hyperlink{namespaceACG_ae4a56bb6b65d7f966934982a1e370213}{A\+C\+G\+::\+Vec3d} $>$ $>$ Poly\+Line\+Plugin\+::get\+Multiple\+Intersection\+Points (\begin{DoxyParamCaption}\item[{MeshT $\ast$}]{\+\_\+mesh,  }\item[{\hyperlink{namespaceACG_ae4a56bb6b65d7f966934982a1e370213}{A\+C\+G\+::\+Vec3d}}]{\+\_\+plane\+Normal,  }\item[{\hyperlink{namespaceACG_ae4a56bb6b65d7f966934982a1e370213}{A\+C\+G\+::\+Vec3d}}]{\+\_\+plane\+Point }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}}



get all points from the intersection between mesh and plane 


\begin{DoxyParams}{Parameters}
{\em \+\_\+mesh} & the mesh \\
\hline
{\em \+\_\+plane\+Normal} & normal of the cut plane \\
\hline
{\em \+\_\+plane\+Point} & point on the cut plane \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
a list of intersection points for each connected intersection ring 
\end{DoxyReturn}


Definition at line 287 of file Poly\+Line\+Plugin\+T\+\_\+impl.\+hh.

\mbox{\Hypertarget{classPolyLinePlugin_adbc7cc6ce7cf086e965ff3f9183f09cc}\label{classPolyLinePlugin_adbc7cc6ce7cf086e965ff3f9183f09cc}} 
\index{Poly\+Line\+Plugin@{Poly\+Line\+Plugin}!get\+Point\+On\+Mesh@{get\+Point\+On\+Mesh}}
\index{get\+Point\+On\+Mesh@{get\+Point\+On\+Mesh}!Poly\+Line\+Plugin@{Poly\+Line\+Plugin}}
\subsubsection{\texorpdfstring{get\+Point\+On\+Mesh()}{getPointOnMesh()}}
{\footnotesize\ttfamily \hyperlink{namespaceACG_ae4a56bb6b65d7f966934982a1e370213}{A\+C\+G\+::\+Vec3d} Poly\+Line\+Plugin\+::get\+Point\+On\+Mesh (\begin{DoxyParamCaption}\item[{\hyperlink{classPolyLineBezierSplineData}{Poly\+Line\+Bezier\+Spline\+Data} $\ast$}]{\+\_\+\+Spline\+Data,  }\item[{\hyperlink{namespaceACG_ae4a56bb6b65d7f966934982a1e370213}{A\+C\+G\+::\+Vec3d}}]{\+\_\+point,  }\item[{\hyperlink{namespaceACG_ae4a56bb6b65d7f966934982a1e370213}{A\+C\+G\+::\+Vec3d} $\ast$}]{\+\_\+nor = {\ttfamily 0} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}}



Returns the nearest point on the mesh or if none could be found the input. 


\begin{DoxyParams}{Parameters}
{\em \+\_\+\+Spline\+Data} & The spline which is being used. \\
\hline
{\em \+\_\+point} & The input point. \\
\hline
{\em \+\_\+nor} & (Optional)Normal at nearest point. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The nearest point on the mesh from \+\_\+point 
\end{DoxyReturn}


Definition at line 63 of file Poly\+Line\+Plugin\+\_\+\+Bezier\+Spline.\+cc.

\mbox{\Hypertarget{classPolyLinePlugin_adfd88982925f902ca60fdf1670f84228}\label{classPolyLinePlugin_adfd88982925f902ca60fdf1670f84228}} 
\index{Poly\+Line\+Plugin@{Poly\+Line\+Plugin}!slot\+Scissor\+Button@{slot\+Scissor\+Button}}
\index{slot\+Scissor\+Button@{slot\+Scissor\+Button}!Poly\+Line\+Plugin@{Poly\+Line\+Plugin}}
\subsubsection{\texorpdfstring{slot\+Scissor\+Button}{slotScissorButton}}
{\footnotesize\ttfamily void Poly\+Line\+Plugin\+::slot\+Scissor\+Button (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}, {\ttfamily [slot]}}



Scissor Button was hit. 



Definition at line 454 of file Poly\+Line\+Plugin.\+cc.

\mbox{\Hypertarget{classPolyLinePlugin_a2a62711daa72679155d20fca24fd041f}\label{classPolyLinePlugin_a2a62711daa72679155d20fca24fd041f}} 
\index{Poly\+Line\+Plugin@{Poly\+Line\+Plugin}!slot\+Scissor\+Lines\+Button@{slot\+Scissor\+Lines\+Button}}
\index{slot\+Scissor\+Lines\+Button@{slot\+Scissor\+Lines\+Button}!Poly\+Line\+Plugin@{Poly\+Line\+Plugin}}
\subsubsection{\texorpdfstring{slot\+Scissor\+Lines\+Button}{slotScissorLinesButton}}
{\footnotesize\ttfamily void Poly\+Line\+Plugin\+::slot\+Scissor\+Lines\+Button (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}, {\ttfamily [slot]}}



Scissor Button for multiple polylines was hit. 

Scissor Button was hit.

Definition at line 465 of file Poly\+Line\+Plugin.\+cc.

\mbox{\Hypertarget{classPolyLinePlugin_a26d80064e7e63bc8a7368271cec26aab}\label{classPolyLinePlugin_a26d80064e7e63bc8a7368271cec26aab}} 
\index{Poly\+Line\+Plugin@{Poly\+Line\+Plugin}!slot\+Trigger\+Cut\+Plane\+Select@{slot\+Trigger\+Cut\+Plane\+Select}}
\index{slot\+Trigger\+Cut\+Plane\+Select@{slot\+Trigger\+Cut\+Plane\+Select}!Poly\+Line\+Plugin@{Poly\+Line\+Plugin}}
\subsubsection{\texorpdfstring{slot\+Trigger\+Cut\+Plane\+Select}{slotTriggerCutPlaneSelect}}
{\footnotesize\ttfamily void Poly\+Line\+Plugin\+::slot\+Trigger\+Cut\+Plane\+Select (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}, {\ttfamily [slot]}}



Generate Poly\+Line after the cut\+Plane has been drawn. 



Definition at line 476 of file Poly\+Line\+Plugin.\+cc.

\mbox{\Hypertarget{classPolyLinePlugin_acf618686c55f5e5c76e94050c9aea1e8}\label{classPolyLinePlugin_acf618686c55f5e5c76e94050c9aea1e8}} 
\index{Poly\+Line\+Plugin@{Poly\+Line\+Plugin}!update\+Handles@{update\+Handles}}
\index{update\+Handles@{update\+Handles}!Poly\+Line\+Plugin@{Poly\+Line\+Plugin}}
\subsubsection{\texorpdfstring{update\+Handles()}{updateHandles()}}
{\footnotesize\ttfamily void Poly\+Line\+Plugin\+::update\+Handles (\begin{DoxyParamCaption}\item[{\hyperlink{classPolyLineObject}{Poly\+Line\+Object} $\ast$}]{\+\_\+line\+Object }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}}



Updates the center, forward and side handle of the Poly ellipse. 


\begin{DoxyParams}{Parameters}
{\em \+\_\+line\+Object} & The object containing the handles. \\
\hline
\end{DoxyParams}


Definition at line 2046 of file Poly\+Line\+Plugin.\+cc.

\mbox{\Hypertarget{classPolyLinePlugin_a262b571171f8483e9ceb669249f1c32d}\label{classPolyLinePlugin_a262b571171f8483e9ceb669249f1c32d}} 
\index{Poly\+Line\+Plugin@{Poly\+Line\+Plugin}!update\+Poly\+Bezier\+Handles@{update\+Poly\+Bezier\+Handles}}
\index{update\+Poly\+Bezier\+Handles@{update\+Poly\+Bezier\+Handles}!Poly\+Line\+Plugin@{Poly\+Line\+Plugin}}
\subsubsection{\texorpdfstring{update\+Poly\+Bezier\+Handles()}{updatePolyBezierHandles()}}
{\footnotesize\ttfamily void Poly\+Line\+Plugin\+::update\+Poly\+Bezier\+Handles (\begin{DoxyParamCaption}\item[{\hyperlink{classPolyLineObject}{Poly\+Line\+Object} $\ast$}]{\+\_\+line\+Object,  }\item[{\hyperlink{classACG_1_1SceneGraph_1_1LineNode}{A\+C\+G\+::\+Scene\+Graph\+::\+Line\+Node} $\ast$}]{\+\_\+line }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}}



Updates all the handles on the Poly\+Bezier. 


\begin{DoxyParams}{Parameters}
{\em \+\_\+line\+Object} & The object to update. \\
\hline
{\em \+\_\+line} & the line node containing all the handles \\
\hline
\end{DoxyParams}


Definition at line 82 of file Poly\+Line\+Plugin\+\_\+\+Bezier\+Spline.\+cc.

\mbox{\Hypertarget{classPolyLinePlugin_ab7be80005cf61d0421c127e68308a133}\label{classPolyLinePlugin_ab7be80005cf61d0421c127e68308a133}} 
\index{Poly\+Line\+Plugin@{Poly\+Line\+Plugin}!update\+Poly\+Bezier\+Spline@{update\+Poly\+Bezier\+Spline}}
\index{update\+Poly\+Bezier\+Spline@{update\+Poly\+Bezier\+Spline}!Poly\+Line\+Plugin@{Poly\+Line\+Plugin}}
\subsubsection{\texorpdfstring{update\+Poly\+Bezier\+Spline()}{updatePolyBezierSpline()}}
{\footnotesize\ttfamily void Poly\+Line\+Plugin\+::update\+Poly\+Bezier\+Spline (\begin{DoxyParamCaption}\item[{\hyperlink{classPolyLineObject}{Poly\+Line\+Object} $\ast$}]{\+\_\+line\+Object,  }\item[{unsigned int}]{\+\_\+points\+Per\+Segment }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}}



Generates points for the spline, updates handles. 


\begin{DoxyParams}{Parameters}
{\em \+\_\+line\+Object} & The object to generate points for. \\
\hline
{\em \+\_\+points\+Per\+Segment} & The number of points per segment. \\
\hline
\end{DoxyParams}


Definition at line 105 of file Poly\+Line\+Plugin\+\_\+\+Bezier\+Spline.\+cc.

\mbox{\Hypertarget{classPolyLinePlugin_ad1a6ddc54cd2c17b1ee0532396870630}\label{classPolyLinePlugin_ad1a6ddc54cd2c17b1ee0532396870630}} 
\index{Poly\+Line\+Plugin@{Poly\+Line\+Plugin}!update\+Poly\+Ellipse@{update\+Poly\+Ellipse}}
\index{update\+Poly\+Ellipse@{update\+Poly\+Ellipse}!Poly\+Line\+Plugin@{Poly\+Line\+Plugin}}
\subsubsection{\texorpdfstring{update\+Poly\+Ellipse()}{updatePolyEllipse()}}
{\footnotesize\ttfamily void Poly\+Line\+Plugin\+::update\+Poly\+Ellipse (\begin{DoxyParamCaption}\item[{\hyperlink{classPolyLineObject}{Poly\+Line\+Object} $\ast$}]{\+\_\+line\+Object,  }\item[{unsigned int}]{\+\_\+point\+Count }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}}



Generates points for the ellipse. 


\begin{DoxyParams}{Parameters}
{\em \+\_\+line\+Object} & The object to generate points for. \\
\hline
{\em \+\_\+point\+Count} & The number of points to generate. \\
\hline
\end{DoxyParams}


Definition at line 138 of file Poly\+Line\+Plugin\+\_\+\+Circle.\+cc.



The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize}
\item 
Plugin-\/\+Poly\+Line/Poly\+Line\+Plugin.\+hh\item 
Plugin-\/\+Poly\+Line/Poly\+Line\+Plugin.\+cc\item 
Plugin-\/\+Poly\+Line/Poly\+Line\+Plugin\+\_\+\+Bezier\+Spline.\+cc\item 
Plugin-\/\+Poly\+Line/Poly\+Line\+Plugin\+\_\+\+Circle.\+cc\item 
Plugin-\/\+Poly\+Line/Poly\+Line\+Plugin\+T\+\_\+impl.\+hh\item 
Plugin-\/\+Poly\+Line/Poly\+Line\+Scripting.\+cc\end{DoxyCompactItemize}
