Menge
Modular Pedestrian Simulation Framework for Research and Development
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | List of all members
Menge::SceneGraph::SelectContext Class Reference

A context that performs object selection by directly clicking on selectable entities in the OpenGL context. More...

#include <Context.h>

Inheritance diagram for Menge::SceneGraph::SelectContext:
Menge::SceneGraph::Context Menge::BaseAgentContext ORCATypeAgentContext< Agent >

Public Member Functions

virtual bool selectGL (const GLScene *scene, const GLCamera &camera, int vWidth, int vHeight, int *selectPoint)
 Performs selection based on a click on screen space. Uses the OpenGL selection mechanism. More...
 
- Public Member Functions inherited from Menge::SceneGraph::Context
 Context ()
 Constructor.
 
virtual ~Context ()
 Virtual destructor.
 
virtual void drawGL (int vWidth, int vHeight)
 The draw function for the context. More...
 
virtual ContextResult handleMouse (SDL_Event &e)
 Give the context the opportunity to respond to a mouse event. More...
 
virtual ContextResult handleKeyboard (SDL_Event &e)
 Give the context the opportunity to respond to a keyboard event. More...
 
virtual void update ()
 Allow the context to update any time-dependent state it might have to the given global time.
 
virtual void newGLContext ()
 Callback for when the OpenGL context is changed.
 
virtual void activate ()
 Called when the context is activated.
 
virtual void deactivate ()
 Called when the context is deactivated.
 

Additional Inherited Members

- Protected Member Functions inherited from Menge::SceneGraph::Context
void uiSetup (int vWidth, int vHeight)
 UI setup - handles the configuration of the opengl context for orthographic rendering. More...
 
void uiShutdown ()
 Cleans up the OpenGL state after having drawn the UI elements of the context.
 
virtual void drawUIGL (int vWidth, int vHeight, bool select=false)
 Draw UI elements into the context. More...
 
virtual void draw3DGL (bool select=false)
 Draw context elements into the 3D world. More...
 
void getOpenGLView ()
 Updates the various view matrices: modelview, projection, and view.
 
void writeText (const std::string &txt, const Vector2 &pos, bool currColor=false) const
 Writes the given text at the given location. More...
 
void writeText (const std::string &txt, const Vector3 &pos, bool currColor=false) const
 Writes the given text at the given 3D location. More...
 
void writeTextRadially (const std::string &txt, const Vector2 &pos, const Vector2 &dir, bool currColor=false) const
 Writes the given text at the given location, but anchored based on the radial direction given. More...
 
void writeAlignedText (const std::string &txt, const Vector2 &pos, TextWriter::Alignment align, bool currColor=false) const
 Writes the given text aligned to the given location. More...
 
void writeToScreen (const std::string &txt, TextWriter::Alignment align, int fontSize, float hPad=0.f, float vPad=0.f, bool currColor=false, bool trans=true) const
 Writes the given text to the screen based on the given alignment. More...
 
- Protected Attributes inherited from Menge::SceneGraph::Context
double _modViewMat [16]
 The current model view matrix.
 
double _projMat [16]
 The current projection matrix.
 
int _viewMat [4]
 The current viewport parameters.
 

Detailed Description

A context that performs object selection by directly clicking on selectable entities in the OpenGL context.

Member Function Documentation

bool Menge::SceneGraph::SelectContext::selectGL ( const GLScene scene,
const GLCamera camera,
int  vWidth,
int  vHeight,
int *  selectPoint 
)
virtual

Performs selection based on a click on screen space. Uses the OpenGL selection mechanism.

Parameters
sceneThe scene to select in.
cameraThe camera.
vWidthThe width of the viewport.
vHeightThe height of the viewport.
selectPointThe point (in screen space) at which object selection should take place.
Returns
A boolean indicating whether a redraw needs to take place.

Reimplemented from Menge::SceneGraph::Context.

Reimplemented in Menge::BaseAgentContext.


The documentation for this class was generated from the following files: