\hypertarget{a01330}{\section{A\+C\+G\+:\+:Scene\+Graph\+:\+:Triangle\+Node Class Reference}
\label{a01330}\index{A\+C\+G\+::\+Scene\+Graph\+::\+Triangle\+Node@{A\+C\+G\+::\+Scene\+Graph\+::\+Triangle\+Node}}
}
Inheritance diagram for A\+C\+G\+:\+:Scene\+Graph\+:\+:Triangle\+Node\+:\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[height=2.000000cm]{a01330}
\end{center}
\end{figure}
\subsection*{Public Types}
\begin{DoxyCompactItemize}
\item 
\hypertarget{a01330_a5c7eb8b87323f21c6acd81ac44ddb2ef}{typedef std\+::vector$<$ \hyperlink{a01409}{A\+C\+G\+::\+Vec3f} $>$ {\bfseries Point\+Vector}}\label{a01330_a5c7eb8b87323f21c6acd81ac44ddb2ef}

\end{DoxyCompactItemize}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\hypertarget{a01330_aef8fea7e1ac7573b1ac2246805ba42b7}{{\bfseries Triangle\+Node} (\hyperlink{a00327}{Base\+Node} $\ast$\+\_\+parent=0, std\+::string \+\_\+name=\char`\"{}$<$Triangle\+Node$>$\char`\"{})}\label{a01330_aef8fea7e1ac7573b1ac2246805ba42b7}

\item 
\hypertarget{a01330_ac065479f8a451f7ee5c0b45f1f6f352d}{{\bfseries A\+C\+G\+\_\+\+C\+L\+A\+S\+S\+N\+A\+M\+E} (\hyperlink{a01330}{Triangle\+Node})}\label{a01330_ac065479f8a451f7ee5c0b45f1f6f352d}

\item 
\hyperlink{a00509}{Draw\+Modes\+::\+Draw\+Mode} \hyperlink{a01330_af19287c88f36de23dda3359125fee40c}{available\+Draw\+Modes} () const 
\item 
void \hyperlink{a01330_ae1e20a0733201af0402d9bf5344d327a}{bounding\+Box} (\hyperlink{a03336_ae4a56bb6b65d7f966934982a1e370213}{Vec3d} \&\+\_\+bb\+Min, \hyperlink{a03336_ae4a56bb6b65d7f966934982a1e370213}{Vec3d} \&\+\_\+bb\+Max)
\item 
\hypertarget{a01330_a59392383ddac19035b3896d17999db0e}{void {\bfseries draw} (\hyperlink{a00643}{G\+L\+State} \&\+\_\+state, const \hyperlink{a00509}{Draw\+Modes\+::\+Draw\+Mode} \&\+\_\+draw\+Mode)}\label{a01330_a59392383ddac19035b3896d17999db0e}

\item 
\hypertarget{a01330_a9f945aa64f2f3c3e4b27d64ca206df9a}{void {\bfseries pick} (\hyperlink{a00643}{G\+L\+State} \&\+\_\+state, \hyperlink{a03343_af5fad41dadeca314c2077f897377dbd0}{Pick\+Target} \+\_\+target)}\label{a01330_a9f945aa64f2f3c3e4b27d64ca206df9a}

\item 
\hypertarget{a01330_ab4ae13b55b11e05448a92eee0e0a738d}{void {\bfseries add\+\_\+triangle} (const \hyperlink{a01409}{A\+C\+G\+::\+Vec3f} \&\+\_\+p0, const \hyperlink{a01409}{A\+C\+G\+::\+Vec3f} \&\+\_\+p1, const \hyperlink{a01409}{A\+C\+G\+::\+Vec3f} \&\+\_\+p2)}\label{a01330_ab4ae13b55b11e05448a92eee0e0a738d}

\item 
\hypertarget{a01330_a6c998b586b56ab110828b6dcd8ee22a8}{void {\bfseries clear} ()}\label{a01330_a6c998b586b56ab110828b6dcd8ee22a8}

\item 
\hypertarget{a01330_a24b575241b87f8cf54ba7f1bdcf0d5e7}{size\+\_\+t {\bfseries n\+\_\+triangles} () const }\label{a01330_a24b575241b87f8cf54ba7f1bdcf0d5e7}

\item 
\hypertarget{a01330_ac41f92682186e2b992834970e5b08811}{void {\bfseries triangle} (int \+\_\+i, \hyperlink{a01409}{A\+C\+G\+::\+Vec3f} \&\+\_\+p0, \hyperlink{a01409}{A\+C\+G\+::\+Vec3f} \&\+\_\+p1, \hyperlink{a01409}{A\+C\+G\+::\+Vec3f} \&\+\_\+p2) const }\label{a01330_ac41f92682186e2b992834970e5b08811}

\end{DoxyCompactItemize}
\subsection*{Protected Types}
\begin{DoxyCompactItemize}
\item 
\hypertarget{a01330_a24a7ec9d4e18f68581d2a651a8df4a02}{enum {\bfseries Face\+Mode} \{ {\bfseries F\+A\+C\+E\+\_\+\+N\+O\+R\+M\+A\+L\+S}, 
{\bfseries F\+A\+C\+E\+\_\+\+C\+O\+L\+O\+R\+S}, 
{\bfseries P\+E\+R\+\_\+\+V\+E\+R\+T\+E\+X}
 \}}\label{a01330_a24a7ec9d4e18f68581d2a651a8df4a02}

\end{DoxyCompactItemize}
\subsection*{Protected Member Functions}
\begin{DoxyCompactItemize}
\item 
\hypertarget{a01330_ab54c41e9e2fea6ff02c2542585850227}{void {\bfseries draw\+\_\+vertices} ()}\label{a01330_ab54c41e9e2fea6ff02c2542585850227}

\item 
\hypertarget{a01330_af184484e0efa5f2d64d8f97cdf97983e}{void {\bfseries draw\+\_\+faces} ()}\label{a01330_af184484e0efa5f2d64d8f97cdf97983e}

\item 
\hypertarget{a01330_abe45ea121dac31ae844d5fb6f165e11b}{void {\bfseries draw\+\_\+wireframe} ()}\label{a01330_abe45ea121dac31ae844d5fb6f165e11b}

\end{DoxyCompactItemize}
\subsection*{Protected Attributes}
\begin{DoxyCompactItemize}
\item 
\hypertarget{a01330_ac0ad04ef05d5cede18c34eb88baea6b2}{Point\+Vector {\bfseries point\+\_\+}}\label{a01330_ac0ad04ef05d5cede18c34eb88baea6b2}

\item 
\hypertarget{a01330_a486ab16a276961f14eecf5612dcbcb3e}{Point\+Vector {\bfseries normal\+\_\+}}\label{a01330_a486ab16a276961f14eecf5612dcbcb3e}

\end{DoxyCompactItemize}


\subsection{Detailed Description}


Definition at line 76 of file Triangle\+Node.\+hh.



\subsection{Member Function Documentation}
\hypertarget{a01330_af19287c88f36de23dda3359125fee40c}{\index{A\+C\+G\+::\+Scene\+Graph\+::\+Triangle\+Node@{A\+C\+G\+::\+Scene\+Graph\+::\+Triangle\+Node}!available\+Draw\+Modes@{available\+Draw\+Modes}}
\index{available\+Draw\+Modes@{available\+Draw\+Modes}!A\+C\+G\+::\+Scene\+Graph\+::\+Triangle\+Node@{A\+C\+G\+::\+Scene\+Graph\+::\+Triangle\+Node}}
\subsubsection[{available\+Draw\+Modes}]{\setlength{\rightskip}{0pt plus 5cm}{\bf Draw\+Modes\+::\+Draw\+Mode} A\+C\+G\+::\+Scene\+Graph\+::\+Triangle\+Node\+::available\+Draw\+Modes (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily [virtual]}}}\label{a01330_af19287c88f36de23dda3359125fee40c}
Return a list of available draw modes for this node\+: should be O\+R'ed from the items of the enum Draw\+Mode\+I\+Ds. 

Reimplemented from \hyperlink{a00328_ad0f2ceb5083801533c4711b468f67bc5}{A\+C\+G\+::\+Scene\+Graph\+::\+A\+C\+G\+::\+Scene\+Graph\+::\+Base\+Node}.



Definition at line 121 of file Triangle\+Node.\+cc.

\hypertarget{a01330_ae1e20a0733201af0402d9bf5344d327a}{\index{A\+C\+G\+::\+Scene\+Graph\+::\+Triangle\+Node@{A\+C\+G\+::\+Scene\+Graph\+::\+Triangle\+Node}!bounding\+Box@{bounding\+Box}}
\index{bounding\+Box@{bounding\+Box}!A\+C\+G\+::\+Scene\+Graph\+::\+Triangle\+Node@{A\+C\+G\+::\+Scene\+Graph\+::\+Triangle\+Node}}
\subsubsection[{bounding\+Box}]{\setlength{\rightskip}{0pt plus 5cm}void A\+C\+G\+::\+Scene\+Graph\+::\+Triangle\+Node\+::bounding\+Box (
\begin{DoxyParamCaption}
\item[{{\bf Vec3d} \&}]{, }
\item[{{\bf Vec3d} \&}]{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [virtual]}}}\label{a01330_ae1e20a0733201af0402d9bf5344d327a}
Compute the bounding box of this node and update the values \+\_\+bb\+Min and \+\_\+bb\+Max accordingly. Do not initialize \+\_\+bb\+Min and \+\_\+bb\+Max since they may already store values of previous nodes' bounding box computation. 

Reimplemented from \hyperlink{a00328_ac956bf4aae718f4cb89c78979dc47280}{A\+C\+G\+::\+Scene\+Graph\+::\+A\+C\+G\+::\+Scene\+Graph\+::\+Base\+Node}.



Definition at line 94 of file Triangle\+Node.\+cc.



The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize}
\item 
A\+C\+G/\+Scenegraph/Triangle\+Node.\+hh\item 
A\+C\+G/\+Scenegraph/Triangle\+Node.\+cc\end{DoxyCompactItemize}
