\hypertarget{a00906}{\section{A\+C\+G\+:\+:Scene\+Graph\+:\+:O\+B\+J\+Node Class Reference}
\label{a00906}\index{A\+C\+G\+::\+Scene\+Graph\+::\+O\+B\+J\+Node@{A\+C\+G\+::\+Scene\+Graph\+::\+O\+B\+J\+Node}}
}
Inheritance diagram for A\+C\+G\+:\+:Scene\+Graph\+:\+:O\+B\+J\+Node\+:\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[height=2.000000cm]{a00906}
\end{center}
\end{figure}
\subsection*{Classes}
\begin{DoxyCompactItemize}
\item 
struct \hyperlink{a00552}{Face}
\end{DoxyCompactItemize}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\hypertarget{a00906_a82abbff2dddf1ed1988fbbb6d8a95cc8}{\hyperlink{a00906_a82abbff2dddf1ed1988fbbb6d8a95cc8}{O\+B\+J\+Node} (\hyperlink{a00327}{Base\+Node} $\ast$\+\_\+parent=0, std\+::string \+\_\+name=\char`\"{}$<$O\+B\+J\+Node$>$\char`\"{})}\label{a00906_a82abbff2dddf1ed1988fbbb6d8a95cc8}

\begin{DoxyCompactList}\small\item\em Default constructor. \end{DoxyCompactList}\item 
\hypertarget{a00906_ae8a8bda724ea408815dfd859cd0d44bb}{virtual \hyperlink{a00906_ae8a8bda724ea408815dfd859cd0d44bb}{$\sim$\+O\+B\+J\+Node} ()}\label{a00906_ae8a8bda724ea408815dfd859cd0d44bb}

\begin{DoxyCompactList}\small\item\em destructor \end{DoxyCompactList}\item 
\hypertarget{a00906_a0233c54aa0018ae63efd426db6c1ebcc}{{\bfseries A\+C\+G\+\_\+\+C\+L\+A\+S\+S\+N\+A\+M\+E} (\hyperlink{a00906}{O\+B\+J\+Node})}\label{a00906_a0233c54aa0018ae63efd426db6c1ebcc}

\item 
\hypertarget{a00906_a018513aa0c8ff8d07b780b6c66fd225b}{\hyperlink{a00509}{Draw\+Modes\+::\+Draw\+Mode} \hyperlink{a00906_a018513aa0c8ff8d07b780b6c66fd225b}{available\+Draw\+Modes} () const }\label{a00906_a018513aa0c8ff8d07b780b6c66fd225b}

\begin{DoxyCompactList}\small\item\em return available draw modes \end{DoxyCompactList}\item 
\hypertarget{a00906_a1ada615e40af638c952a29650d821c34}{void \hyperlink{a00906_a1ada615e40af638c952a29650d821c34}{bounding\+Box} (\hyperlink{a03336_ae4a56bb6b65d7f966934982a1e370213}{Vec3d} \&\+\_\+bb\+Min, \hyperlink{a03336_ae4a56bb6b65d7f966934982a1e370213}{Vec3d} \&\+\_\+bb\+Max)}\label{a00906_a1ada615e40af638c952a29650d821c34}

\begin{DoxyCompactList}\small\item\em update bounding box \end{DoxyCompactList}\item 
\hypertarget{a00906_a3875ac95137df5f1dc6c4cd1125e7cfb}{void \hyperlink{a00906_a3875ac95137df5f1dc6c4cd1125e7cfb}{draw} (\hyperlink{a00643}{G\+L\+State} \&\+\_\+state, const \hyperlink{a00509}{Draw\+Modes\+::\+Draw\+Mode} \&\+\_\+draw\+Mode)}\label{a00906_a3875ac95137df5f1dc6c4cd1125e7cfb}

\begin{DoxyCompactList}\small\item\em drawing the primitive \end{DoxyCompactList}\item 
\hypertarget{a00906_a35fffd10e19807f2840956796b999612}{void \hyperlink{a00906_a35fffd10e19807f2840956796b999612}{pick} (\hyperlink{a00643}{G\+L\+State} \&\+\_\+state, \hyperlink{a03343_af5fad41dadeca314c2077f897377dbd0}{Pick\+Target} \+\_\+target)}\label{a00906_a35fffd10e19807f2840956796b999612}

\begin{DoxyCompactList}\small\item\em picking \end{DoxyCompactList}\item 
\hypertarget{a00906_a44b88d7163ff14a1502f27bc0d67c5fe}{size\+\_\+t \hyperlink{a00906_a44b88d7163ff14a1502f27bc0d67c5fe}{n\+\_\+vertices} () const }\label{a00906_a44b88d7163ff14a1502f27bc0d67c5fe}

\begin{DoxyCompactList}\small\item\em number of vertices \end{DoxyCompactList}\item 
\hypertarget{a00906_ae060c36aa0a4affd86e520bc52907496}{size\+\_\+t \hyperlink{a00906_ae060c36aa0a4affd86e520bc52907496}{n\+\_\+faces} () const }\label{a00906_ae060c36aa0a4affd86e520bc52907496}

\begin{DoxyCompactList}\small\item\em number of faces \end{DoxyCompactList}\item 
\hypertarget{a00906_a48faf8ffee16ef137bb36488d9400375}{size\+\_\+t \hyperlink{a00906_a48faf8ffee16ef137bb36488d9400375}{n\+\_\+normals} () const }\label{a00906_a48faf8ffee16ef137bb36488d9400375}

\begin{DoxyCompactList}\small\item\em number of normals \end{DoxyCompactList}\item 
\hypertarget{a00906_a6fb50c9bfcf486ddd009e583929ab77f}{size\+\_\+t \hyperlink{a00906_a6fb50c9bfcf486ddd009e583929ab77f}{n\+\_\+texcoords} () const }\label{a00906_a6fb50c9bfcf486ddd009e583929ab77f}

\begin{DoxyCompactList}\small\item\em number of texcoords \end{DoxyCompactList}\item 
\hypertarget{a00906_a5eaef05e59762299b41d7e5b9154f4ec}{void \hyperlink{a00906_a5eaef05e59762299b41d7e5b9154f4ec}{clear} ()}\label{a00906_a5eaef05e59762299b41d7e5b9154f4ec}

\begin{DoxyCompactList}\small\item\em clear the node \end{DoxyCompactList}\item 
\hypertarget{a00906_a691394305a3e6f7030b4109c4404792b}{size\+\_\+t \hyperlink{a00906_a691394305a3e6f7030b4109c4404792b}{add\+\_\+vertex} (const \hyperlink{a03336_a86c28120e8596ee7d03e58b7300f59bc}{Vec3f} \&\+\_\+v)}\label{a00906_a691394305a3e6f7030b4109c4404792b}

\begin{DoxyCompactList}\small\item\em add vertex \end{DoxyCompactList}\item 
\hypertarget{a00906_a71e5cfffc6a9ee9f4a012462df7104df}{size\+\_\+t \hyperlink{a00906_a71e5cfffc6a9ee9f4a012462df7104df}{add\+\_\+face} (const \hyperlink{a00552}{Face} \&\+\_\+f)}\label{a00906_a71e5cfffc6a9ee9f4a012462df7104df}

\begin{DoxyCompactList}\small\item\em add triangle \end{DoxyCompactList}\item 
\hypertarget{a00906_a5508e27eb5677e69a2ca1dbd0e846206}{size\+\_\+t \hyperlink{a00906_a5508e27eb5677e69a2ca1dbd0e846206}{add\+\_\+face} (unsigned int \+\_\+i0, unsigned int \+\_\+i1, unsigned int \+\_\+i2)}\label{a00906_a5508e27eb5677e69a2ca1dbd0e846206}

\begin{DoxyCompactList}\small\item\em add triangle \end{DoxyCompactList}\item 
\hypertarget{a00906_ab141f84f3c105d8fbcaa3c57d0d2f283}{\hyperlink{a03336_a86c28120e8596ee7d03e58b7300f59bc}{Vec3f} \& \hyperlink{a00906_ab141f84f3c105d8fbcaa3c57d0d2f283}{vertex} (unsigned int \+\_\+i)}\label{a00906_ab141f84f3c105d8fbcaa3c57d0d2f283}

\begin{DoxyCompactList}\small\item\em get i'th vertex \end{DoxyCompactList}\item 
\hypertarget{a00906_ad995776213664424a00bd3b8f3eb7b18}{const \hyperlink{a03336_a86c28120e8596ee7d03e58b7300f59bc}{Vec3f} \& \hyperlink{a00906_ad995776213664424a00bd3b8f3eb7b18}{vertex} (unsigned int \+\_\+i) const }\label{a00906_ad995776213664424a00bd3b8f3eb7b18}

\begin{DoxyCompactList}\small\item\em get i'th vertex \end{DoxyCompactList}\item 
\hypertarget{a00906_ab4531da1d8a565ee0866a1b723765bcc}{const \hyperlink{a00552}{Face} \& \hyperlink{a00906_ab4531da1d8a565ee0866a1b723765bcc}{face} (unsigned int \+\_\+i) const }\label{a00906_ab4531da1d8a565ee0866a1b723765bcc}

\begin{DoxyCompactList}\small\item\em get i'th face \end{DoxyCompactList}\item 
\hypertarget{a00906_a84b66e3adaac1d0693292e0d560d9d42}{\hyperlink{a00552}{Face} \& \hyperlink{a00906_a84b66e3adaac1d0693292e0d560d9d42}{face} (unsigned int \+\_\+i)}\label{a00906_a84b66e3adaac1d0693292e0d560d9d42}

\begin{DoxyCompactList}\small\item\em get i'th face \end{DoxyCompactList}\item 
\hypertarget{a00906_ae1a4afc21297dfce7971fbc5ae6742a1}{const \hyperlink{a03336_a86c28120e8596ee7d03e58b7300f59bc}{Vec3f} \& \hyperlink{a00906_ae1a4afc21297dfce7971fbc5ae6742a1}{normal} (unsigned int \+\_\+i) const }\label{a00906_ae1a4afc21297dfce7971fbc5ae6742a1}

\begin{DoxyCompactList}\small\item\em get i'th normal \end{DoxyCompactList}\item 
\hypertarget{a00906_a9bf16ee2fbcad793856a98441d666595}{\hyperlink{a03336_a86c28120e8596ee7d03e58b7300f59bc}{Vec3f} \& \hyperlink{a00906_a9bf16ee2fbcad793856a98441d666595}{normal} (unsigned int \+\_\+i)}\label{a00906_a9bf16ee2fbcad793856a98441d666595}

\begin{DoxyCompactList}\small\item\em get i'th normal \end{DoxyCompactList}\item 
\hypertarget{a00906_a22f9f1304423c292a3b13c0430c8014d}{bool \hyperlink{a00906_a22f9f1304423c292a3b13c0430c8014d}{read} (const std\+::string \&\+\_\+filename)}\label{a00906_a22f9f1304423c292a3b13c0430c8014d}

\begin{DoxyCompactList}\small\item\em Read from file. Implemented using \hyperlink{a03368}{Open\+Mesh} loader and O\+B\+J\+Node\+Exporter. \end{DoxyCompactList}\item 
\hypertarget{a00906_a944cfc83898214dc6493ae5a0526fa3d}{void \hyperlink{a00906_a944cfc83898214dc6493ae5a0526fa3d}{update\+\_\+face\+\_\+normals} ()}\label{a00906_a944cfc83898214dc6493ae5a0526fa3d}

\begin{DoxyCompactList}\small\item\em Update face normals. Call when geometry changes. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Private Member Functions}
\begin{DoxyCompactItemize}
\item 
\hypertarget{a00906_ad7c8e050d3ecc54bb381d1be01348fb0}{void {\bfseries draw\+\_\+obj} () const }\label{a00906_ad7c8e050d3ecc54bb381d1be01348fb0}

\item 
\hypertarget{a00906_aab9a112c781f39ee3fa6eded7f47f403}{void {\bfseries draw\+\_\+obj\+\_\+tex} () const }\label{a00906_aab9a112c781f39ee3fa6eded7f47f403}

\end{DoxyCompactItemize}
\subsection*{Private Attributes}
\begin{DoxyCompactItemize}
\item 
\hypertarget{a00906_a74976b2c791d2a8ff78d0a0999ec868c}{std\+::vector$<$ \hyperlink{a03336_a86c28120e8596ee7d03e58b7300f59bc}{Vec3f} $>$ {\bfseries vertices\+\_\+}}\label{a00906_a74976b2c791d2a8ff78d0a0999ec868c}

\item 
\hypertarget{a00906_a7e0054072b719770e06338c155938354}{std\+::vector$<$ \hyperlink{a03336_a86c28120e8596ee7d03e58b7300f59bc}{Vec3f} $>$ {\bfseries normals\+\_\+}}\label{a00906_a7e0054072b719770e06338c155938354}

\item 
\hypertarget{a00906_acccfa1ddb94f371a4d70a88e0cc43d91}{std\+::vector$<$ \hyperlink{a03336_a8b858737aebd55e312149cf208a0b3f3}{Vec2f} $>$ {\bfseries tex\+Coords\+\_\+}}\label{a00906_acccfa1ddb94f371a4d70a88e0cc43d91}

\item 
\hypertarget{a00906_af57eba655b5836cf61e5c8ab32443fb7}{std\+::vector$<$ \hyperlink{a00552}{Face} $>$ {\bfseries faces\+\_\+}}\label{a00906_af57eba655b5836cf61e5c8ab32443fb7}

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


\subsection{Detailed Description}


Definition at line 85 of file O\+B\+J\+Node.\+hh.



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