\hypertarget{classACG_1_1SceneGraph_1_1CameraNode}{}\section{A\+CG\+:\+:Scene\+Graph\+:\+:Camera\+Node Class Reference}
\label{classACG_1_1SceneGraph_1_1CameraNode}\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]{classACG_1_1SceneGraph_1_1CameraNode}
\end{center}
\end{figure}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{classACG_1_1SceneGraph_1_1CameraNode_a64cfd87290109c46ee0cd9a2c77792a7}\label{classACG_1_1SceneGraph_1_1CameraNode_a64cfd87290109c46ee0cd9a2c77792a7}} 
\hyperlink{classACG_1_1SceneGraph_1_1CameraNode_a64cfd87290109c46ee0cd9a2c77792a7}{Camera\+Node} (\hyperlink{classACG_1_1SceneGraph_1_1BaseNode}{Base\+Node} $\ast$\+\_\+parent=0, std\+::string \+\_\+name=\char`\"{}$<$Camera\+Vis$>$\char`\"{})
\begin{DoxyCompactList}\small\item\em Default constructor. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classACG_1_1SceneGraph_1_1CameraNode_ab9678b9ed2eade0ea352adab26d331a0}\label{classACG_1_1SceneGraph_1_1CameraNode_ab9678b9ed2eade0ea352adab26d331a0}} 
virtual \hyperlink{classACG_1_1SceneGraph_1_1CameraNode_ab9678b9ed2eade0ea352adab26d331a0}{$\sim$\+Camera\+Node} ()
\begin{DoxyCompactList}\small\item\em Destructor. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classACG_1_1SceneGraph_1_1CameraNode_ac95333fa9d4e8e9bb0191ef67b54100c}\label{classACG_1_1SceneGraph_1_1CameraNode_ac95333fa9d4e8e9bb0191ef67b54100c}} 
{\bfseries A\+C\+G\+\_\+\+C\+L\+A\+S\+S\+N\+A\+ME} (\hyperlink{classACG_1_1SceneGraph_1_1CameraNode}{Camera\+Node})
\item 
\mbox{\Hypertarget{classACG_1_1SceneGraph_1_1CameraNode_a04b17d39e6578fffb29cf655cfb4836e}\label{classACG_1_1SceneGraph_1_1CameraNode_a04b17d39e6578fffb29cf655cfb4836e}} 
\hyperlink{classACG_1_1SceneGraph_1_1DrawModes_1_1DrawMode}{Draw\+Modes\+::\+Draw\+Mode} \hyperlink{classACG_1_1SceneGraph_1_1CameraNode_a04b17d39e6578fffb29cf655cfb4836e}{available\+Draw\+Modes} () const override
\begin{DoxyCompactList}\small\item\em return available draw modes \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classACG_1_1SceneGraph_1_1CameraNode_a8b81e9a63db6be7c4b0fbb8a495622ec}\label{classACG_1_1SceneGraph_1_1CameraNode_a8b81e9a63db6be7c4b0fbb8a495622ec}} 
void \hyperlink{classACG_1_1SceneGraph_1_1CameraNode_a8b81e9a63db6be7c4b0fbb8a495622ec}{bounding\+Box} (\hyperlink{namespaceACG_ae4a56bb6b65d7f966934982a1e370213}{Vec3d} \&\+\_\+bb\+Min, \hyperlink{namespaceACG_ae4a56bb6b65d7f966934982a1e370213}{Vec3d} \&\+\_\+bb\+Max) override
\begin{DoxyCompactList}\small\item\em update bounding box \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classACG_1_1SceneGraph_1_1CameraNode_af2e791567fd58da6c645be38de7b26c8}\label{classACG_1_1SceneGraph_1_1CameraNode_af2e791567fd58da6c645be38de7b26c8}} 
void \hyperlink{classACG_1_1SceneGraph_1_1CameraNode_af2e791567fd58da6c645be38de7b26c8}{draw} (\hyperlink{classACG_1_1GLState}{G\+L\+State} \&\+\_\+state, const \hyperlink{classACG_1_1SceneGraph_1_1DrawModes_1_1DrawMode}{Draw\+Modes\+::\+Draw\+Mode} \&\+\_\+draw\+Mode) override
\begin{DoxyCompactList}\small\item\em drawing \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classACG_1_1SceneGraph_1_1CameraNode_afe3158a1b249bc4b53c4fbe46cb8172a}\label{classACG_1_1SceneGraph_1_1CameraNode_afe3158a1b249bc4b53c4fbe46cb8172a}} 
void \hyperlink{classACG_1_1SceneGraph_1_1CameraNode_afe3158a1b249bc4b53c4fbe46cb8172a}{get\+Render\+Objects} (\hyperlink{classACG_1_1IRenderer}{I\+Renderer} $\ast$\+\_\+renderer, \hyperlink{classACG_1_1GLState}{G\+L\+State} \&\+\_\+state, const \hyperlink{classACG_1_1SceneGraph_1_1DrawModes_1_1DrawMode}{Draw\+Modes\+::\+Draw\+Mode} \&\+\_\+draw\+Mode, const \hyperlink{classACG_1_1SceneGraph_1_1Material}{Material} $\ast$\+\_\+mat) override
\begin{DoxyCompactList}\small\item\em create render objects \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classACG_1_1SceneGraph_1_1CameraNode_aca9e9cd31a0a9f3e1e7a74a9aef5bcab}\label{classACG_1_1SceneGraph_1_1CameraNode_aca9e9cd31a0a9f3e1e7a74a9aef5bcab}} 
void \hyperlink{classACG_1_1SceneGraph_1_1CameraNode_aca9e9cd31a0a9f3e1e7a74a9aef5bcab}{pick} (\hyperlink{classACG_1_1GLState}{G\+L\+State} \&\+\_\+state, \hyperlink{namespaceACG_1_1SceneGraph_af5fad41dadeca314c2077f897377dbd0}{Pick\+Target} \+\_\+target) override
\begin{DoxyCompactList}\small\item\em picking \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classACG_1_1SceneGraph_1_1CameraNode_a987ec2ddebc86b75a046e27a1b0449f4}\label{classACG_1_1SceneGraph_1_1CameraNode_a987ec2ddebc86b75a046e27a1b0449f4}} 
void \hyperlink{classACG_1_1SceneGraph_1_1CameraNode_a987ec2ddebc86b75a046e27a1b0449f4}{set\+Model\+View} (\hyperlink{classACG_1_1GLMatrixT}{A\+C\+G\+::\+G\+L\+Matrixd} \+\_\+model\+View)
\begin{DoxyCompactList}\small\item\em set model view matrix \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classACG_1_1SceneGraph_1_1CameraNode_a934cb9631176978e4bc0f108dea75664}\label{classACG_1_1SceneGraph_1_1CameraNode_a934cb9631176978e4bc0f108dea75664}} 
const \hyperlink{classACG_1_1GLMatrixT}{A\+C\+G\+::\+G\+L\+Matrixd} \& \hyperlink{classACG_1_1SceneGraph_1_1CameraNode_a934cb9631176978e4bc0f108dea75664}{modelview} () const
\begin{DoxyCompactList}\small\item\em Returns the modelview matrix. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classACG_1_1SceneGraph_1_1CameraNode_a2974574e426660a0ed5d6751d670f2d6}\label{classACG_1_1SceneGraph_1_1CameraNode_a2974574e426660a0ed5d6751d670f2d6}} 
void \hyperlink{classACG_1_1SceneGraph_1_1CameraNode_a2974574e426660a0ed5d6751d670f2d6}{set\+Projection} (\hyperlink{classACG_1_1GLMatrixT}{A\+C\+G\+::\+G\+L\+Matrixd} \+\_\+projection)
\begin{DoxyCompactList}\small\item\em Set projection Matrix ( used to calculate frustum ... ) \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classACG_1_1SceneGraph_1_1CameraNode_ad0b3a22c867230d94b902fe49583fea1}\label{classACG_1_1SceneGraph_1_1CameraNode_ad0b3a22c867230d94b902fe49583fea1}} 
const \hyperlink{classACG_1_1GLMatrixT}{A\+C\+G\+::\+G\+L\+Matrixd} \& \hyperlink{classACG_1_1SceneGraph_1_1CameraNode_ad0b3a22c867230d94b902fe49583fea1}{projection} () const
\begin{DoxyCompactList}\small\item\em Returns the projection matrix. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classACG_1_1SceneGraph_1_1CameraNode_a9b29014e90a8e282cbe4c50db49f432f}\label{classACG_1_1SceneGraph_1_1CameraNode_a9b29014e90a8e282cbe4c50db49f432f}} 
void \hyperlink{classACG_1_1SceneGraph_1_1CameraNode_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{classACG_1_1SceneGraph_1_1CameraNode_afd780f7b19c97b6ee406bfeb63429b06}\label{classACG_1_1SceneGraph_1_1CameraNode_afd780f7b19c97b6ee406bfeb63429b06}} 
void \hyperlink{classACG_1_1SceneGraph_1_1CameraNode_afd780f7b19c97b6ee406bfeb63429b06}{set\+Encoded\+View} (Q\+String \+\_\+encoded\+View)
\begin{DoxyCompactList}\small\item\em Return encoded view string. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classACG_1_1SceneGraph_1_1CameraNode_adb5a088f195e227d27b1dacf7630e47e}\label{classACG_1_1SceneGraph_1_1CameraNode_adb5a088f195e227d27b1dacf7630e47e}} 
void \hyperlink{classACG_1_1SceneGraph_1_1CameraNode_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{classACG_1_1SceneGraph_1_1CameraNode_a99bdc83d6d663d14f3661f695e0383da}\label{classACG_1_1SceneGraph_1_1CameraNode_a99bdc83d6d663d14f3661f695e0383da}} 
void \hyperlink{classACG_1_1SceneGraph_1_1CameraNode_a99bdc83d6d663d14f3661f695e0383da}{set\+Near\+Plane} (double \+\_\+near)
\begin{DoxyCompactList}\small\item\em Set distance to near plane. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classACG_1_1SceneGraph_1_1CameraNode_a59af7595e87636d3760c7beb271b6412}\label{classACG_1_1SceneGraph_1_1CameraNode_a59af7595e87636d3760c7beb271b6412}} 
Q\+String \hyperlink{classACG_1_1SceneGraph_1_1CameraNode_a59af7595e87636d3760c7beb271b6412}{get\+Encoded\+View} ()
\begin{DoxyCompactList}\small\item\em Return encoded view string. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classACG_1_1SceneGraph_1_1CameraNode_a982afee388ff51701af38b3014f7074a}\label{classACG_1_1SceneGraph_1_1CameraNode_a982afee388ff51701af38b3014f7074a}} 
void \hyperlink{classACG_1_1SceneGraph_1_1CameraNode_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{classACG_1_1SceneGraph_1_1CameraNode_ad00515cca7914753dddfec0569c40c29}\label{classACG_1_1SceneGraph_1_1CameraNode_ad00515cca7914753dddfec0569c40c29}} 
bool \hyperlink{classACG_1_1SceneGraph_1_1CameraNode_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{classACG_1_1SceneGraph_1_1CameraNode_a17774eddaae07ae99a37cab37159ef04}\label{classACG_1_1SceneGraph_1_1CameraNode_a17774eddaae07ae99a37cab37159ef04}} 
void {\bfseries update\+V\+BO} ()
\item 
\mbox{\Hypertarget{classACG_1_1SceneGraph_1_1CameraNode_a82b4da697d4cc1b72c729cd5b5e0a4e9}\label{classACG_1_1SceneGraph_1_1CameraNode_a82b4da697d4cc1b72c729cd5b5e0a4e9}} 
void {\bfseries update\+Bounding\+Boxes} ()
\item 
\mbox{\Hypertarget{classACG_1_1SceneGraph_1_1CameraNode_a6a9465f1524b85421b4a89d1adf463cf}\label{classACG_1_1SceneGraph_1_1CameraNode_a6a9465f1524b85421b4a89d1adf463cf}} 
void {\bfseries update\+Frustum\+WS} ()
\end{DoxyCompactItemize}
\subsection*{Private Attributes}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{classACG_1_1SceneGraph_1_1CameraNode_a06839dc3b4f069cb0d5210a46fc27e18}\label{classACG_1_1SceneGraph_1_1CameraNode_a06839dc3b4f069cb0d5210a46fc27e18}} 
\hyperlink{classOpenMesh_1_1VectorT}{Open\+Mesh\+::\+Vec3d} {\bfseries bbmin\+\_\+}
\item 
\mbox{\Hypertarget{classACG_1_1SceneGraph_1_1CameraNode_a8c594ce2ebb0d8c544fbf4aca6502a7a}\label{classACG_1_1SceneGraph_1_1CameraNode_a8c594ce2ebb0d8c544fbf4aca6502a7a}} 
\hyperlink{classOpenMesh_1_1VectorT}{Open\+Mesh\+::\+Vec3d} {\bfseries bbmax\+\_\+}
\item 
\mbox{\Hypertarget{classACG_1_1SceneGraph_1_1CameraNode_a2976a9759a9f221600378da23f49c35d}\label{classACG_1_1SceneGraph_1_1CameraNode_a2976a9759a9f221600378da23f49c35d}} 
\hyperlink{classACG_1_1GLMatrixT}{A\+C\+G\+::\+G\+L\+Matrixd} {\bfseries model\+View\+\_\+}
\item 
\mbox{\Hypertarget{classACG_1_1SceneGraph_1_1CameraNode_a4c1ec48b0e76b89b5f6ae26e2252a966}\label{classACG_1_1SceneGraph_1_1CameraNode_a4c1ec48b0e76b89b5f6ae26e2252a966}} 
\hyperlink{classACG_1_1GLMatrixT}{A\+C\+G\+::\+G\+L\+Matrixd} {\bfseries model\+View\+Inv\+\_\+}
\item 
\mbox{\Hypertarget{classACG_1_1SceneGraph_1_1CameraNode_ae872f33acbf6b328df38edc8db2ee0e3}\label{classACG_1_1SceneGraph_1_1CameraNode_ae872f33acbf6b328df38edc8db2ee0e3}} 
\hyperlink{classACG_1_1GLMatrixT}{A\+C\+G\+::\+G\+L\+Matrixd} {\bfseries projection\+\_\+}
\item 
\mbox{\Hypertarget{classACG_1_1SceneGraph_1_1CameraNode_a07e7649774e3ad5e30636fbad3ec9aa1}\label{classACG_1_1SceneGraph_1_1CameraNode_a07e7649774e3ad5e30636fbad3ec9aa1}} 
\hyperlink{classACG_1_1GLCylinder}{G\+L\+Cylinder} $\ast$ {\bfseries cylinder\+\_\+}
\item 
\mbox{\Hypertarget{classACG_1_1SceneGraph_1_1CameraNode_a7d39bf9219fbdd116c0b69b13df9e4c7}\label{classACG_1_1SceneGraph_1_1CameraNode_a7d39bf9219fbdd116c0b69b13df9e4c7}} 
\hyperlink{classACG_1_1GLCone}{G\+L\+Cone} $\ast$ {\bfseries cone\+\_\+}
\item 
\mbox{\Hypertarget{classACG_1_1SceneGraph_1_1CameraNode_a86e40731893fc82c30d07fed6db9e00f}\label{classACG_1_1SceneGraph_1_1CameraNode_a86e40731893fc82c30d07fed6db9e00f}} 
float {\bfseries axis\+\_\+length\+\_\+}
\item 
\mbox{\Hypertarget{classACG_1_1SceneGraph_1_1CameraNode_a7439feb34656f232b1db48d7c0e6349c}\label{classACG_1_1SceneGraph_1_1CameraNode_a7439feb34656f232b1db48d7c0e6349c}} 
Geometry\+Buffer {\bfseries vbo\+\_\+}
\item 
\mbox{\Hypertarget{classACG_1_1SceneGraph_1_1CameraNode_adbf6fb074767a996cc7061b998d9998e}\label{classACG_1_1SceneGraph_1_1CameraNode_adbf6fb074767a996cc7061b998d9998e}} 
Index\+Buffer {\bfseries ibo\+\_\+}
\item 
\mbox{\Hypertarget{classACG_1_1SceneGraph_1_1CameraNode_a199c5f75edbc168cc2709a4a252ba583}\label{classACG_1_1SceneGraph_1_1CameraNode_a199c5f75edbc168cc2709a4a252ba583}} 
\hyperlink{classACG_1_1VertexDeclaration}{Vertex\+Declaration} {\bfseries vdecl\+\_\+}
\item 
\mbox{\Hypertarget{classACG_1_1SceneGraph_1_1CameraNode_a0f0e47164c178e197cf6bc06dc26a219}\label{classACG_1_1SceneGraph_1_1CameraNode_a0f0e47164c178e197cf6bc06dc26a219}} 
bool {\bfseries update\+\_\+vbo\+\_\+}
\item 
\mbox{\Hypertarget{classACG_1_1SceneGraph_1_1CameraNode_a0e2febca88442d8e64affa3c255769b6}\label{classACG_1_1SceneGraph_1_1CameraNode_a0e2febca88442d8e64affa3c255769b6}} 
std\+::vector$<$ \hyperlink{namespaceACG_a4850d8bd22bf3ccf7088b80adc17c989}{Vec4f} $>$ {\bfseries vbo\+Data\+\_\+}
\item 
\mbox{\Hypertarget{classACG_1_1SceneGraph_1_1CameraNode_a1cc18801582e66c4e22a3f294908ebc1}\label{classACG_1_1SceneGraph_1_1CameraNode_a1cc18801582e66c4e22a3f294908ebc1}} 
int {\bfseries offset\+Tris\+\_\+}
\item 
\mbox{\Hypertarget{classACG_1_1SceneGraph_1_1CameraNode_ac7907b3a50f1c7e6bb4c2646978d3f74}\label{classACG_1_1SceneGraph_1_1CameraNode_ac7907b3a50f1c7e6bb4c2646978d3f74}} 
int {\bfseries offset\+Lines\+\_\+}
\item 
\mbox{\Hypertarget{classACG_1_1SceneGraph_1_1CameraNode_aa5e024fccaf75d58ac7426e461b4ae95}\label{classACG_1_1SceneGraph_1_1CameraNode_aa5e024fccaf75d58ac7426e461b4ae95}} 
int {\bfseries offset\+Front\+\_\+}
\item 
\mbox{\Hypertarget{classACG_1_1SceneGraph_1_1CameraNode_a99ad790b0dfdde4be5d7897ed3b39a1e}\label{classACG_1_1SceneGraph_1_1CameraNode_a99ad790b0dfdde4be5d7897ed3b39a1e}} 
Q\+String {\bfseries encoded\+View\+\_\+}
\item 
\mbox{\Hypertarget{classACG_1_1SceneGraph_1_1CameraNode_a54bc497ade65e7112ce181be6f3a26ab}\label{classACG_1_1SceneGraph_1_1CameraNode_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}
