#include "platform.h"
#include <string>
#include <map>
#include <vector>
#include <cmath>
#include <iostream>
#include <boost/function.hpp>
#include <GL/gl.h>
Go to the source code of this file.
Classes | |
struct | pangolin::Attach |
Defines typed quantity Constructors distinguised by whole pixels, or floating fraction in interval [0,1]. More... | |
struct | pangolin::CameraSpec |
struct | pangolin::Handler |
Input Handler base class with virtual methods which recurse into sub-displays. More... | |
struct | pangolin::Handler3D |
struct | pangolin::HandlerScroll |
struct | pangolin::OpenGlMatrix |
Object representing OpenGl Matrix. More... | |
struct | pangolin::OpenGlMatrixSpec |
deprecated More... | |
struct | pangolin::OpenGlRenderState |
Object representing attached OpenGl Matrices / transforms Only stores what is attached, not entire OpenGl state (which would be horribly slow). Applying state is efficient. More... | |
struct | pangolin::View |
A Display manages the location and resizing of an OpenGl viewport. More... | |
struct | pangolin::Viewport |
Encapsulates OpenGl Viewport. More... | |
Namespaces | |
namespace | pangolin |
namespace | pangolin::process |
Defines | |
#define | GLUT_KEY_ESCAPE 27 |
#define | GLUT_KEY_TAB 9 |
Enumerations | |
enum | pangolin::AxisDirection { pangolin::AxisNone, pangolin::AxisNegX, pangolin::AxisX, pangolin::AxisNegY, pangolin::AxisY, pangolin::AxisNegZ, pangolin::AxisZ } |
enum | pangolin::Layout { pangolin::LayoutOverlay, pangolin::LayoutVertical, pangolin::LayoutHorizontal, pangolin::LayoutEqual } |
enum | pangolin::Lock { pangolin::LockLeft = 0, pangolin::LockBottom = 0, pangolin::LockCenter = 1, pangolin::LockRight = 2, pangolin::LockTop = 2 } |
enum | pangolin::MouseButton { pangolin::MouseButtonLeft = 1, pangolin::MouseButtonMiddle = 2, pangolin::MouseButtonRight = 4, pangolin::MouseWheelUp = 8, pangolin::MouseWheelDown = 16 } |
enum | pangolin::OpenGlStack { pangolin::GlProjectionStack = GL_PROJECTION, pangolin::GlModelViewStack = GL_MODELVIEW, pangolin::GlTextureStack = GL_TEXTURE } |
Capture OpenGL matrix types in enum to typing. More... | |
enum | pangolin::Unit { pangolin::Fraction, pangolin::Pixel, pangolin::ReversePixel } |
Unit for measuring quantities. More... | |
Functions | |
void | pangolin::BindToContext (std::string name) |
Give this OpenGL context a name or switch contexts This is required to initialise Pangolin for use with an externally defined OpenGL context. You needn't call it if you have used CreateGlutWindowAndBind() to create a GLUT window. | |
View & | pangolin::CreateDisplay () |
Create unnamed display managed by pangolin (automatically deleted) | |
View & | pangolin::Display (const std::string &name) |
Create or retrieve named display managed by pangolin (automatically deleted) | |
View & | pangolin::DisplayBase () |
Retrieve 'base' display, corresponding to entire window. | |
bool | pangolin::HadInput () |
Returns true if user has interacted with the window since this was last called. | |
bool | pangolin::HasResized () |
Returns true if user has resized the window. | |
OpenGlMatrix | pangolin::IdentityMatrix () |
OpenGlMatrixSpec | pangolin::IdentityMatrix (OpenGlStack type) |
void | pangolin::process::Keyboard (unsigned char key, int x, int y) |
Tell pangolin to process input to drive display You will need to call this manually if you haven't let Pangolin register callbacks from your windowing system. | |
void | pangolin::process::KeyboardUp (unsigned char key, int x, int y) |
OpenGlMatrix | pangolin::ModelViewLookAt (double ex, double ey, double ez, double lx, double ly, double lz, double ux, double uy, double uz) |
OpenGlMatrix | pangolin::ModelViewLookAt (double ex, double ey, double ez, double lx, double ly, double lz, AxisDirection up) |
void | pangolin::process::Mouse (int button_raw, int state, int x, int y) |
void | pangolin::process::MouseMotion (int x, int y) |
OpenGlMatrixSpec | pangolin::negIdentityMatrix (OpenGlStack type) |
OpenGlMatrixSpec | pangolin::ProjectionMatrix (int w, int h, double fu, double fv, double u0, double v0, double zNear, double zFar) |
Use OpenGl's default frame RUB_BottomLeft. | |
OpenGlMatrixSpec | pangolin::ProjectionMatrixOrthographic (double t, double b, double l, double r, double n, double f) |
OpenGlMatrixSpec | pangolin::ProjectionMatrixRDF_BottomLeft (int w, int h, double fu, double fv, double u0, double v0, double zNear, double zFar) |
OpenGlMatrixSpec | pangolin::ProjectionMatrixRDF_TopLeft (int w, int h, double fu, double fv, double u0, double v0, double zNear, double zFar) |
OpenGlMatrixSpec | pangolin::ProjectionMatrixRUB_BottomLeft (int w, int h, double fu, double fv, double u0, double v0, double zNear, double zFar) |
void | pangolin::Quit () |
Request that the program exit. | |
void | pangolin::RegisterKeyPressCallback (int key, boost::function< void(void)> func) |
Request to be notified via functor when key is pressed. Functor may take one parameter which will equal the key pressed. | |
void | pangolin::RenderViews () |
Renders any views with default draw methods. | |
void | pangolin::process::Resize (int width, int height) |
Tell pangolin base window size has changed You will need to call this manually if you haven't let Pangolin register callbacks from your windowing system. | |
void | pangolin::process::Scroll (float x, float y) |
bool | pangolin::ShouldQuit () |
Returns true if user has requested to close OpenGL window. | |
Variables | |
static const CameraSpec | pangolin::CameraSpecOpenGl = {{0,0,-1},{0,1,0},{1,0,0},{0,1},{1,0}} |
static const CameraSpec | pangolin::CameraSpecYDownZForward = {{0,0,1},{0,-1,0},{1,0,0},{0,-1},{1,0}} |
const int | pangolin::PANGO_CTRL = -96 |
const int | pangolin::PANGO_OPTN = 132 |
const int | pangolin::PANGO_SPECIAL = 128 |
static Handler | pangolin::StaticHandler |
static HandlerScroll | pangolin::StaticHandlerScroll |
#define GLUT_KEY_ESCAPE 27 |
#define GLUT_KEY_TAB 9 |