\hypertarget{a11292}{}\section{A\+CG\+:\+:Scene\+Graph\+:\+:Camera\+Node Class Reference}
\label{a11292}\index{A\+C\+G\+::\+Scene\+Graph\+::\+Camera\+Node@{A\+C\+G\+::\+Scene\+Graph\+::\+Camera\+Node}}


{\ttfamily \#include $<$A\+C\+G/\+Scenegraph/\+Camera\+Node.\+hh$>$}

Inheritance diagram for A\+CG\+:\+:Scene\+Graph\+:\+:Camera\+Node\+:\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[height=2.000000cm]{a11292}
\end{center}
\end{figure}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{a11292_a64cfd87290109c46ee0cd9a2c77792a7}\label{a11292_a64cfd87290109c46ee0cd9a2c77792a7}} 
\hyperlink{a11292_a64cfd87290109c46ee0cd9a2c77792a7}{Camera\+Node} (\hyperlink{a07748}{Base\+Node} $\ast$\+\_\+parent=0, std\+::string \+\_\+name=\char`\"{}$<$Camera\+Vis$>$\char`\"{})
\begin{DoxyCompactList}\small\item\em Default constructor. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{a11292_ab9678b9ed2eade0ea352adab26d331a0}\label{a11292_ab9678b9ed2eade0ea352adab26d331a0}} 
virtual \hyperlink{a11292_ab9678b9ed2eade0ea352adab26d331a0}{$\sim$\+Camera\+Node} ()
\begin{DoxyCompactList}\small\item\em Destructor. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{a11292_ac95333fa9d4e8e9bb0191ef67b54100c}\label{a11292_ac95333fa9d4e8e9bb0191ef67b54100c}} 
{\bfseries A\+C\+G\+\_\+\+C\+L\+A\+S\+S\+N\+A\+ME} (\hyperlink{a11292}{Camera\+Node})
\item 
\mbox{\Hypertarget{a11292_aff3b20a7685ca3ceae471d749f32ceaa}\label{a11292_aff3b20a7685ca3ceae471d749f32ceaa}} 
\hyperlink{a07792}{Draw\+Modes\+::\+Draw\+Mode} \hyperlink{a11292_aff3b20a7685ca3ceae471d749f32ceaa}{available\+Draw\+Modes} () const
\begin{DoxyCompactList}\small\item\em return available draw modes \end{DoxyCompactList}\item 
\mbox{\Hypertarget{a11292_a40e71bfddf754ab7e0db1f81468a3d40}\label{a11292_a40e71bfddf754ab7e0db1f81468a3d40}} 
void \hyperlink{a11292_a40e71bfddf754ab7e0db1f81468a3d40}{bounding\+Box} (\hyperlink{a06176_ae4a56bb6b65d7f966934982a1e370213}{Vec3d} \&\+\_\+bb\+Min, \hyperlink{a06176_ae4a56bb6b65d7f966934982a1e370213}{Vec3d} \&\+\_\+bb\+Max)
\begin{DoxyCompactList}\small\item\em update bounding box \end{DoxyCompactList}\item 
\mbox{\Hypertarget{a11292_a713168ae67a42bc0818b0f2fbecf127d}\label{a11292_a713168ae67a42bc0818b0f2fbecf127d}} 
void \hyperlink{a11292_a713168ae67a42bc0818b0f2fbecf127d}{draw} (\hyperlink{a07452}{G\+L\+State} \&\+\_\+state, const \hyperlink{a07792}{Draw\+Modes\+::\+Draw\+Mode} \&\+\_\+draw\+Mode)
\begin{DoxyCompactList}\small\item\em drawing \end{DoxyCompactList}\item 
\mbox{\Hypertarget{a11292_ad5de62c35584649fcf78ab1bd8e5bb3c}\label{a11292_ad5de62c35584649fcf78ab1bd8e5bb3c}} 
void \hyperlink{a11292_ad5de62c35584649fcf78ab1bd8e5bb3c}{get\+Render\+Objects} (\hyperlink{a07468}{I\+Renderer} $\ast$\+\_\+renderer, \hyperlink{a07452}{G\+L\+State} \&\+\_\+state, const \hyperlink{a07792}{Draw\+Modes\+::\+Draw\+Mode} \&\+\_\+draw\+Mode, const \hyperlink{a07828}{Material} $\ast$\+\_\+mat)
\begin{DoxyCompactList}\small\item\em create render objects \end{DoxyCompactList}\item 
\mbox{\Hypertarget{a11292_abc84c1f822a33eb41415f0fb600757e8}\label{a11292_abc84c1f822a33eb41415f0fb600757e8}} 
void \hyperlink{a11292_abc84c1f822a33eb41415f0fb600757e8}{pick} (\hyperlink{a07452}{G\+L\+State} \&\+\_\+state, \hyperlink{a06177_af5fad41dadeca314c2077f897377dbd0}{Pick\+Target} \+\_\+target)
\begin{DoxyCompactList}\small\item\em picking \end{DoxyCompactList}\item 
\mbox{\Hypertarget{a11292_a987ec2ddebc86b75a046e27a1b0449f4}\label{a11292_a987ec2ddebc86b75a046e27a1b0449f4}} 
void \hyperlink{a11292_a987ec2ddebc86b75a046e27a1b0449f4}{set\+Model\+View} (\hyperlink{a07608}{A\+C\+G\+::\+G\+L\+Matrixd} \+\_\+model\+View)
\begin{DoxyCompactList}\small\item\em set model view matrix \end{DoxyCompactList}\item 
\mbox{\Hypertarget{a11292_a934cb9631176978e4bc0f108dea75664}\label{a11292_a934cb9631176978e4bc0f108dea75664}} 
const \hyperlink{a07608}{A\+C\+G\+::\+G\+L\+Matrixd} \& \hyperlink{a11292_a934cb9631176978e4bc0f108dea75664}{modelview} () const
\begin{DoxyCompactList}\small\item\em Returns the modelview matrix. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{a11292_a2974574e426660a0ed5d6751d670f2d6}\label{a11292_a2974574e426660a0ed5d6751d670f2d6}} 
void \hyperlink{a11292_a2974574e426660a0ed5d6751d670f2d6}{set\+Projection} (\hyperlink{a07608}{A\+C\+G\+::\+G\+L\+Matrixd} \+\_\+projection)
\begin{DoxyCompactList}\small\item\em Set projection Matrix ( used to calculate frustum ... ) \end{DoxyCompactList}\item 
\mbox{\Hypertarget{a11292_ad0b3a22c867230d94b902fe49583fea1}\label{a11292_ad0b3a22c867230d94b902fe49583fea1}} 
const \hyperlink{a07608}{A\+C\+G\+::\+G\+L\+Matrixd} \& \hyperlink{a11292_ad0b3a22c867230d94b902fe49583fea1}{projection} () const
\begin{DoxyCompactList}\small\item\em Returns the projection matrix. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{a11292_a9b29014e90a8e282cbe4c50db49f432f}\label{a11292_a9b29014e90a8e282cbe4c50db49f432f}} 
void \hyperlink{a11292_a9b29014e90a8e282cbe4c50db49f432f}{set\+Size} (int \+\_\+w, int \+\_\+h)
\begin{DoxyCompactList}\small\item\em Set viewport size ( This will be used to compute the aspect ratio ) \end{DoxyCompactList}\item 
\mbox{\Hypertarget{a11292_afd780f7b19c97b6ee406bfeb63429b06}\label{a11292_afd780f7b19c97b6ee406bfeb63429b06}} 
void \hyperlink{a11292_afd780f7b19c97b6ee406bfeb63429b06}{set\+Encoded\+View} (Q\+String \+\_\+encoded\+View)
\begin{DoxyCompactList}\small\item\em Return encoded view string. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{a11292_adb5a088f195e227d27b1dacf7630e47e}\label{a11292_adb5a088f195e227d27b1dacf7630e47e}} 
void \hyperlink{a11292_adb5a088f195e227d27b1dacf7630e47e}{set\+Far\+Plane} (double \+\_\+far)
\begin{DoxyCompactList}\small\item\em Set distance to far plane ( e.\+g. scene radius ) \end{DoxyCompactList}\item 
\mbox{\Hypertarget{a11292_a99bdc83d6d663d14f3661f695e0383da}\label{a11292_a99bdc83d6d663d14f3661f695e0383da}} 
void \hyperlink{a11292_a99bdc83d6d663d14f3661f695e0383da}{set\+Near\+Plane} (double \+\_\+near)
\begin{DoxyCompactList}\small\item\em Set distance to near plane. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{a11292_a59af7595e87636d3760c7beb271b6412}\label{a11292_a59af7595e87636d3760c7beb271b6412}} 
Q\+String \hyperlink{a11292_a59af7595e87636d3760c7beb271b6412}{get\+Encoded\+View} ()
\begin{DoxyCompactList}\small\item\em Return encoded view string. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{a11292_a982afee388ff51701af38b3014f7074a}\label{a11292_a982afee388ff51701af38b3014f7074a}} 
void \hyperlink{a11292_a982afee388ff51701af38b3014f7074a}{show\+Frustum} (bool \+\_\+show\+Frustum)
\begin{DoxyCompactList}\small\item\em Set if viewing frustum should be shown or not. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{a11292_ad00515cca7914753dddfec0569c40c29}\label{a11292_ad00515cca7914753dddfec0569c40c29}} 
bool \hyperlink{a11292_ad00515cca7914753dddfec0569c40c29}{show\+Frustum} ()
\begin{DoxyCompactList}\small\item\em Returns true if camera renders its whole frustum. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Private Member Functions}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{a11292_a17774eddaae07ae99a37cab37159ef04}\label{a11292_a17774eddaae07ae99a37cab37159ef04}} 
void {\bfseries update\+V\+BO} ()
\item 
\mbox{\Hypertarget{a11292_a82b4da697d4cc1b72c729cd5b5e0a4e9}\label{a11292_a82b4da697d4cc1b72c729cd5b5e0a4e9}} 
void {\bfseries update\+Bounding\+Boxes} ()
\item 
\mbox{\Hypertarget{a11292_a6a9465f1524b85421b4a89d1adf463cf}\label{a11292_a6a9465f1524b85421b4a89d1adf463cf}} 
void {\bfseries update\+Frustum\+WS} ()
\end{DoxyCompactItemize}
\subsection*{Private Attributes}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{a11292_a06839dc3b4f069cb0d5210a46fc27e18}\label{a11292_a06839dc3b4f069cb0d5210a46fc27e18}} 
\hyperlink{a08448}{Open\+Mesh\+::\+Vec3d} {\bfseries bbmin\+\_\+}
\item 
\mbox{\Hypertarget{a11292_a8c594ce2ebb0d8c544fbf4aca6502a7a}\label{a11292_a8c594ce2ebb0d8c544fbf4aca6502a7a}} 
\hyperlink{a08448}{Open\+Mesh\+::\+Vec3d} {\bfseries bbmax\+\_\+}
\item 
\mbox{\Hypertarget{a11292_a2976a9759a9f221600378da23f49c35d}\label{a11292_a2976a9759a9f221600378da23f49c35d}} 
\hyperlink{a07608}{A\+C\+G\+::\+G\+L\+Matrixd} {\bfseries model\+View\+\_\+}
\item 
\mbox{\Hypertarget{a11292_a4c1ec48b0e76b89b5f6ae26e2252a966}\label{a11292_a4c1ec48b0e76b89b5f6ae26e2252a966}} 
\hyperlink{a07608}{A\+C\+G\+::\+G\+L\+Matrixd} {\bfseries model\+View\+Inv\+\_\+}
\item 
\mbox{\Hypertarget{a11292_ae872f33acbf6b328df38edc8db2ee0e3}\label{a11292_ae872f33acbf6b328df38edc8db2ee0e3}} 
\hyperlink{a07608}{A\+C\+G\+::\+G\+L\+Matrixd} {\bfseries projection\+\_\+}
\item 
\mbox{\Hypertarget{a11292_a07e7649774e3ad5e30636fbad3ec9aa1}\label{a11292_a07e7649774e3ad5e30636fbad3ec9aa1}} 
\hyperlink{a07400}{G\+L\+Cylinder} $\ast$ {\bfseries cylinder\+\_\+}
\item 
\mbox{\Hypertarget{a11292_a7d39bf9219fbdd116c0b69b13df9e4c7}\label{a11292_a7d39bf9219fbdd116c0b69b13df9e4c7}} 
\hyperlink{a07396}{G\+L\+Cone} $\ast$ {\bfseries cone\+\_\+}
\item 
\mbox{\Hypertarget{a11292_a86e40731893fc82c30d07fed6db9e00f}\label{a11292_a86e40731893fc82c30d07fed6db9e00f}} 
float {\bfseries axis\+\_\+length\+\_\+}
\item 
\mbox{\Hypertarget{a11292_a7439feb34656f232b1db48d7c0e6349c}\label{a11292_a7439feb34656f232b1db48d7c0e6349c}} 
Geometry\+Buffer {\bfseries vbo\+\_\+}
\item 
\mbox{\Hypertarget{a11292_adbf6fb074767a996cc7061b998d9998e}\label{a11292_adbf6fb074767a996cc7061b998d9998e}} 
Index\+Buffer {\bfseries ibo\+\_\+}
\item 
\mbox{\Hypertarget{a11292_a199c5f75edbc168cc2709a4a252ba583}\label{a11292_a199c5f75edbc168cc2709a4a252ba583}} 
\hyperlink{a07596}{Vertex\+Declaration} {\bfseries vdecl\+\_\+}
\item 
\mbox{\Hypertarget{a11292_a0f0e47164c178e197cf6bc06dc26a219}\label{a11292_a0f0e47164c178e197cf6bc06dc26a219}} 
bool {\bfseries update\+\_\+vbo\+\_\+}
\item 
\mbox{\Hypertarget{a11292_a0e2febca88442d8e64affa3c255769b6}\label{a11292_a0e2febca88442d8e64affa3c255769b6}} 
std\+::vector$<$ \hyperlink{a06176_a4850d8bd22bf3ccf7088b80adc17c989}{Vec4f} $>$ {\bfseries vbo\+Data\+\_\+}
\item 
\mbox{\Hypertarget{a11292_a1cc18801582e66c4e22a3f294908ebc1}\label{a11292_a1cc18801582e66c4e22a3f294908ebc1}} 
int {\bfseries offset\+Tris\+\_\+}
\item 
\mbox{\Hypertarget{a11292_ac7907b3a50f1c7e6bb4c2646978d3f74}\label{a11292_ac7907b3a50f1c7e6bb4c2646978d3f74}} 
int {\bfseries offset\+Lines\+\_\+}
\item 
\mbox{\Hypertarget{a11292_aa5e024fccaf75d58ac7426e461b4ae95}\label{a11292_aa5e024fccaf75d58ac7426e461b4ae95}} 
int {\bfseries offset\+Front\+\_\+}
\item 
\mbox{\Hypertarget{a11292_a99ad790b0dfdde4be5d7897ed3b39a1e}\label{a11292_a99ad790b0dfdde4be5d7897ed3b39a1e}} 
Q\+String {\bfseries encoded\+View\+\_\+}
\item 
\mbox{\Hypertarget{a11292_a54bc497ade65e7112ce181be6f3a26ab}\label{a11292_a54bc497ade65e7112ce181be6f3a26ab}} 
bool {\bfseries show\+Frustum\+\_\+}
\end{DoxyCompactItemize}
\subsection*{Additional Inherited Members}


\subsection{Detailed Description}
This class is able to render spheres colorcoding the vertex Camera\+Vis 

Definition at line 90 of file Camera\+Node.\+hh.



The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize}
\item 
Type-\/\+Camera/\+Object\+Types/\+Camera/Camera\+Node.\+hh\item 
Type-\/\+Camera/\+Object\+Types/\+Camera/Camera\+Node.\+cc\end{DoxyCompactItemize}
